This is the quick installation guide for sendfile.

With sendfile you can transfer files asynchronously from any user A to
another user B without B being active in any way. In contrast to ftp one
does not have to log on to the recipient's account. For a more detailed
description read the file README.too in the doc directory (LIESMICH* is
the same in German).


The sendfile package contains 5 main programs:

  sendfiled	- the sendfile daemon which will be started by inetd
  sendfile	- the sendfile client for sending files
  sendmsg	- the send-message client for sending one-line text messages
  receive	- the receive client for picking up already received files
  fetchfile	- the O-SAFT client to obtain files from a remote SAFT server


sendfile, sendmsg, receive and fetchfile run in user mode, sendfiled has
to be installed by root.


1) Adjusting the paths:

   If you want you may change some default values in "makeconfig" (and ONLY
   there!).


2) create the Makefiles and configuration files: 
 
     $ make config
     

3) compile everything: 

     $ make all

   There should be no error messages. On some systems with buggy system
   include files there might be compiler warnings which can be ignored as
   long as the binaries will be produced. So far, sendfile is tested on
   AIX, BSDI, Convex-OS, Digital Unix, FreeBSD, HP-UX, IRIX, Linux,
   Mac-OSX (Darwin) NeXTstep/Mach, OSF/1, SunOS 4, SunOS 5 (Solaris 2) and
   Ultrix with gcc. 
   

4) install everything automatically (has to be done by root!):

     $ make install
   
   OR install manually:

     - set correct file protection mask:
          $ umask 022
	
     - install sendfiled, wherever it makes sense:
          $ cp src/sendfiled /usr/local/sbin/

     - create the spool directories (as described in config.h!):
	  $ mkdir /var/spool/sendfile
          $ mkdir /var/spool/sendfile/LOG
	  $ mkdir /var/spool/sendfile/OUTGOING
	  $ chmod 700  /var/spool/sendfile/LOG
	  $ chmod 1777 /var/spool/sendfile/OUTGOING
		    
       Check with "df /var/spool/sendfile" if there is enough free disk
       space for the spool partition. The minimum free space is defined by
       the minfree option in sendfile.cf.

     - add to /etc/services (respectively "niload services ." on NeXT):
       	  saft	487/tcp		# simple asynchronous file transfer

     - add to /etc/inetd.conf:
     	  saft stream tcp nowait root /path/to/sendfiled sendfiled
	  
       or if you have tcpd installed (default on Linux):
     	  saft stream tcp nowait root /usr/sbin/tcpd /path/to/sendfiled

     - add to /etc/inetd.sec (only if this file exists!):
     	  saft allow
     
     - If you want to use the outgoing spooling feature, then add to your 
       system bootup file (/etc/rc.local or /etc/rc.d/rc.local):
     	  /usr/local/sbin/sendfiled -Q
     
     - restart inetd:
     	  $ kill <pid of inetd>
	  $ /usr/sbin/inetd 	# (or wherever inetd is located)

     - activate the user restriction:
     	  $ cp etc/sendfile.deny /usr/local/etc/

     - install the configuration file (contents is self-descriptive):
     	  $ cp etc/sendfile.cf /usr/local/etc/

     - install the man pages:
	  $ ( cd doc; cp sendmsg.1 sendfile.1 receive.1 fetchfile.1 /usr/local/man/man1 )
       
       (call makewhatis if you want)

     - install the notify script:
          $ cp etc/check_sendfile /usr/local/bin
       
       add "/usr/local/bin/check_sendfile" to /etc/profile

     - install the clients:
          $ ( cd src; cp sendfile sendmsg receive fetchfile utf7encode wlock \
                         /usr/local/bin )
          $ ( cd etc; cp sfconf sfdconf /usr/local/bin )
	  $ ( cd /usr/local/bin/; ln -s utf7encode utf7decode )
   

5) testing:

	$ sendfile README `whoami`
	$ receive
	$ receive -n 1


6) As an addon you can find xhoppel (idea and graphics by beate@juhu.lake.de), 
   which is a program for X to inform the user that new files has been received,
   like xbiff for mail.
   Xhoppel has not been tested on all plattforms and will not be
   automaticly installed. If you want it, you should do:
     $ cd xhoppel
     $ make
     $ cp xhoppel /usr/local/bin
   and add to your .xsession (or .xinitrc, etc):
     xhoppel &


7) I'm very interested in comments and bug reports in respect to
   sendfile/SAFT as well as in spelling corrections of the documentation (as 
   you may guess, english is not my native language).
   Send gifts via postal services. :-)


8) If you tell me the address of your new installed SAFT server, I will
   send you a nice gif as a reward. :-)


9) There is a mailing list which I maintain manually and in which I post
   announcements of updates and bug fixes from time to time. If you want
   to be on this list just send me a mail.
   

-- 
\ Ulli 'Framstag' Horlacher  \ BelWue-Koordination \  framstag@belwue.de \
 \ Universitaet Stuttgart \ Allmandring 30 \ D-70550 Stuttgart \  Germany \
  \ SAFT://saft.belwue.de/framstag  \ HTTP://www.belwue.de/saft/index.html \
   \          "X.500: Security through Complexity" - Juergen G.             \
