[comp.sys.amiga] Using Dnet's NFS:

tadguy@cs.odu.edu (Tad Guy) (03/09/90)

In article <RFROST.90Mar8024847@spam.ua.oz.au> rfrost@cs.ua.oz.au (Richard Frost) writes:
> In the article where Tad Guy writes:
> 	I used the NFS handler of DNet (still too cool) ....
> 
> Please explain HOW to use the NFS handler as I COULD NOT FIND ANY DOCS
> ON IT!!!!!!!!

Disclaimer:  I'm still using DNet-2.02L, so some of this may have
changed in the more recent release(s).

o  Compile and install the UNIX part of snfs (2.02L had some simple
   syntax errors; a diff is enclosed).
o  Install the Amiga nfs-handler in l:
o  Add an apropos MountList entry (enclosed)
o  mount nfs:
o  dir nfs: (you should see the root of your UNIX filesystem; it is slow!)

Note that, at least in 2.02L, the nfs server on the (UNIX host) is
seriously byte-order dependent.  Unless you add calls to swab() in all
the right places, it'll only work on machines that use network byte
order (such as the mc680x0), not on Intel or VAX processors.

It's also slow.  It was useful when I had my Amiga at ODU and running
DNet at 19.2kbps, but at 2400bps it isn't too awesome.  It is still
useful for unpackaging things (like huge warp files), though, and is a
really good idea...

Good luck...
	...tad

--------MountList--------
NFS:
    Handler = L:nfs-handler
    Stacksize = 8000
    Priority = 5
    GlobVec = -1
#
--------Diffs to snfs.c--------
*** dnet/unix/server/snfs.c	Fri Jul  7 10:09:48 1989
--- dnet-2.02L/unix/server/snfs.c	Tue Nov  7 17:58:43 1989
***************
*** 135,145 ****
  	long h;
  	char buf[256];
  
! 	if (ggread(chan, &Base.cmd, 1)) != 1)
  	    break;
! 	if (ggread(chan, &Base.blen, 1)) != 1)
  	    break;
! 	if (ggread(chan, &Base.dlen, 4)) != 4);
  	    break;
  	/*
  	if (ggread(chan, &Base, sizeof(Base)) != sizeof(Base))
--- 135,145 ----
  	long h;
  	char buf[256];
  
! 	if (ggread(chan, &Base.cmd, 1) != 1)
  	    break;
! 	if (ggread(chan, &Base.blen, 1) != 1)
  	    break;
! 	if (ggread(chan, &Base.dlen, 4) != 4)
  	    break;
  	/*
  	if (ggread(chan, &Base, sizeof(Base)) != sizeof(Base))