$Id$ This package is heavily based on two other packages: - p3nfsd-5.4 by Rudolf Koenig (rfkoenig@immd4.informatik.uni-erlangen.de) an nfs daemon for Psion series 3 and 5 - plp_1_7 by Philip Proudman (phil@proudman51.freeserve.co.uk) I want to thank both authors for their nice packages and for making these available under GPL which makes it possible for me to create this package (which of course is distributed under GPL ass well) What i did: I modified and improved Philip's code to support more (nearly all?) rfsv32 commands and to gain speed (approx 4 times) and stability (properly reconnects on lost serial link). Rudolf's code originally used a homegrown protocol which needs a separate program running on the Psion. I changed his code to use the socket-based client-code from Philip's rfsv program thus eliminating the need for any software beeing run on the Psion. The rfsv code and some other stuff went into a lib (both shared and static available). I also removed all Psion-3 related stuff, because a) i can't test it and b) Sibo support is dropped by Psion. Since version 0.5, there is also starting support for RPC-service on the Psion. Note the new commands "ps", "kill" and "run" in plpftp. This support was only possible because of Alexander Thoukydides' excellent documentation at http://www.btinternet.com/~thouky/software/psifs/plp.html Thanks a lot for that. Also Psion-3 support is now added by Matt Gumbley (matt@gumbley.demon.co.uk) How to install: ./configure make make install In addition to the ususal options (see INSTALL), configure understands the following stuff for customization to your environment: --enable-debug Adds -g to CFLAGS, so you will get debugging-versions of the programs and libplp --with-serial=/dev/sometty overrides the default serial device for ncpd. Without this option, configure tries to automagically find a serial device. --with-speed=baudrate overrides the default serial speed of 115200 baud. --with-port=portnum overrides the default port number, where ncpd listens and plpftp resp. plpnfsd connects to. --with-drive=drivespec overrides the default drive for plpftp. The default "AUTO" triggers a drive-scan on the psion and sets the drive to the first drive found. If you don't want that, specify C: for example. --with-basedir=dirspec overrides the default directory for plpftp. The default is \\ which means the root-dir. Note: directory-separators have to be specified as C-like backslashes and if you consider shell's escape-mechanism, these in turn have to be escaped with backslashes ;-) You will get 3 programs and a shared and static library. By default, the install-prefix is /usr/local, so you probably should add /usr/local/lib to your /etc/ld.so.conf and then run ldconfig after installation. Another option is to run configure with the option --prefix=/usr The programs: ncpd is the daemon which handles the serial link to your Psion. It listens at port 7501 for local connections and provides basic PLP/NCP services for the other two programs. It auto- connects to the psion, even after unplugging/switching off therefore it can run always in background (if you have a spare serial-device). If supplied, the -e option will cause ncpd to automatically exit when the connection to the Psion is lost. This is useful when used with a patch to mgetty (see the patches directory). plpftp is a FTP-like program for manipulating files on the Psion. plpnfsd is a daemon, which provides NFS-like access to your Psion. It automatically makes the psion's filesystems available below an NFS-mounted directory (default /mnt/psion). By default, plpnfsd is installed suid-root, so any normal user can start it and get's the mounted directory owned by himself. As this program is usually used on single-user machines, this does not hurt security. Like the others, this program auto-reconnects after a link-failure, so you can keep the psion mounted all the time, even when it is not connected. Due to Rudol Koenig's clever error-handling, you don't need to worry about blocked io-processes if the psion isn't available. You simply will get an "device not configured" error, when accessing a file on a previously connected psion which has been disconnected. After that, the mount-point will appear empty. As soon as the psion is connected again, the subdirectories will reappear. (possibly with a few secs delay) Have fun. -Fritz