[comp.protocols.nfs] PC-NFS & DOS Interrupts

TOMIII@MTUS5.BITNET (Thomas Dwyer III) (01/18/91)

I tried out some of the DOS network interrupts on PC-NFS.  Some seem to
work, while others fail miserably.  Function 0x5E00 (Get Machine Name)
works correctly, assuming your hostname is less than 16 characters.

Function 0x5F02 (Get Redirection List Entry) also works - let's you
write a faster NET USE function.

Function 0x5E02 returns AX=0x32, "Network Request Not Supported"

My question is this - why does function 0x5F04 (Cancel Redirection)
return AX=5, "Access Denied", as does function 0x5F03, "Redirect
Device"?  Am I calling the function correctly, or doesn't PC-NFS
support this call?  If the call is not supported, why return "Access
Denied" instead of "Network Request Not Supported"?

Are there any comments, suggestions, etc (Geoff?) on the above?

Thank you,
Thomas Dwyer III                        Email: tomiii@mtu.edu
Network Programmer                             tomiii@mtus5.BITNET
Computing Technology Services           Voice: (906) 487-2110
Michigan Technological University       Fax:   (906) 487-2787

geoff@hinode.East.Sun.COM (Geoff Arnold @ Sun BOS - R.H. coast near the top) (01/18/91)

Quoth TOMIII@MTUS5.BITNET (Thomas Dwyer III) (in <91017.213153TOMIII@MTUS5.BITNET>):
#I tried out some of the DOS network interrupts on PC-NFS.  Some seem to
#work, while others fail miserably.  Function 0x5E00 (Get Machine Name)
#works correctly, assuming your hostname is less than 16 characters.
#
#Function 0x5F02 (Get Redirection List Entry) also works - let's you
#write a faster NET USE function.
#
#Function 0x5E02 returns AX=0x32, "Network Request Not Supported"
#
#My question is this - why does function 0x5F04 (Cancel Redirection)
#return AX=5, "Access Denied", as does function 0x5F03, "Redirect
#Device"?  Am I calling the function correctly, or doesn't PC-NFS
#support this call?  If the call is not supported, why return "Access
#Denied" instead of "Network Request Not Supported"?

The PC-NFS redirector supports 0x5E00 and 0x5F02 only. The other
functions are not supported. This is because we do not include "mount"
and "unmount" logic in the PCNFS.SYS kernel: we feel that it would use
too much memory for a relatively limited payback. We had to implement
0x5E00 and 0x5F02 in order to support certain (IMHO brain-dead)
software which wanted to treat remote and local files differently (e.g.
only locking remote files). Instead of using 0x4409 (is device local or
remote) or 0x440A (is handle local or remote) they chose to invoke
0x5F02 to build a list of remote drives. >sigh<

-- Geoff Arnold, PC-NFS architect, Sun Microsystems. (geoff@East.Sun.COM)   --
------------------------------------------------------------------------------
--"Patriotism is the willingness to kill and be killed for trivial reasons."--
----------------------------(Bertrand Russell)--------------------------------

geoff@hinode.East.Sun.COM (Geoff Arnold @ Sun BOS - R.H. coast near the top) (01/18/91)

Quoth TOMIII@MTUS5.BITNET (Thomas Dwyer III) (in <91017.213153TOMIII@MTUS5.BITNET>):
# If the call is not supported, why return "Access
#Denied" instead of "Network Request Not Supported"?

It's been a few years, but I believe that this is what we saw from
DOS. I could be wrong, though. 

-- Geoff Arnold, PC-NFS architect, Sun Microsystems. (geoff@East.Sun.COM)   --
------------------------------------------------------------------------------
--"Patriotism is the willingness to kill and be killed for trivial reasons."--
----------------------------(Bertrand Russell)--------------------------------