cpython/Demo/rpc
1992-12-21 14:32:55 +00:00
..
MANIFEST Initial revision 1992-12-17 17:32:10 +00:00
mountclient.py Changed to use new make_call method 1992-12-21 14:32:28 +00:00
nfsclient.py Changed mkcred interface 1992-12-20 14:57:51 +00:00
README Clarified some parts 1992-12-21 14:32:38 +00:00
rnusersclient.py Full broadcast support 1992-12-21 14:32:55 +00:00
rpc.py Complete broadcast support (both raw and via port mapper CALLIT) 1992-12-21 14:32:06 +00:00
T.py Added comments. 1992-12-17 17:32:35 +00:00
test Initial revision 1992-12-21 14:31:41 +00:00
xdr.py Changes to protect servers against broken clients 1992-12-19 00:06:17 +00:00

This is a Python interface to Sun RPC, designed and implemented mostly
by reading the Internet RFCs about the subject.

There are two library modules, xdr.py and rpc.py, and several example
clients: mountclient.py, nfsclient.py, and rnusersclient.py,
implementing the NFS Mount protocol, (part of) the NFS protocol, and
the "rnusers" protocol (used by rusers(1)), respectively.  The latter
demonstrates the use of broadcast via the Port mapper's CALLIT
procedure.

There is also a way to create servers in Python.

To test the nfs client, run it from the shell with something like this:

  python -c 'import nfsclient; nfsclient.test()' [hostname [filesystemname]]

When called without a filesystemname, it lists the filesystems at the
host; default host is the local machine.

Other clients are tested similarly.

For hostname, use e.g. wuarchive.wustl.edu or gatekeeper.dec.com (two
hosts that are known to export NFS filesystems with little restrictions).

Note: this was developed using Python 0.9.8beta (not yet released).  I
have tried to put in compatibility hacks for Python 0.9.7beta
(available from ftp.cwi.nl) but I cannot guarantee that it will work
-- if it doesn't, let me know and I'll see what I can do.  In
particular, if you don't have the built-in module "select", UDP
time-outs and retries won't work.

--Guido van Rossum, CWI, Amsterdam <guido@cwi.nl>
"I don't want *any* spam"