| This is a Python interface to Sun RPC, designed and implemented mostly |
| by reading the Internet RFCs about the subject. |
| |
| *** NOTE: xdr.py has evolved into the standard module xdrlib.py *** |
| |
| 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). |
| |
| There are now two different RPC compilers: |
| |
| 1) Wim Lewis rpcgen.py found on http://www.omnigroup.com/~wiml/soft/stale-index.html#python. |
| |
| 2) Peter Åstrands rpcgen.py, which is part of "pynfs" (http://www.cendio.se/~peter/pynfs/). |