fingerd, in.fingerd - remote user information server

     finger stream tcp nowait nobody /usr/sbin/in.fingerd in.fingerd
     tcpd finger /usr/sbin/in.fingerd in.fingerd

     Fingerd is a simple protocol based on RFC742 that provides  an  interface
     to the Name and Finger programs at several network sites.  The program is
     supposed to return a friendly, human-oriented status report on either the
     system  at  the  moment  or  a  particular  person in depth.  There is no
     required format and the protocol consists mostly of specifying  a  single
     ``command line''.

     Fingerd listens for TCP requests at port 79.  Once connected it  reads  a
     single  command line terminated by a <CRLF> which is passed to finger(1).
     Fingerd closes its connections as soon as the output is finished.

     If the line is null (i.e. just a <CRLF> is sent) then  finger  returns  a
     ``default''  report  that lists all people logged into the system at that

     If a user name is specified (e.g. eric<CRLF>)  then  the  response  lists
     more  extended  information for only that particular user, whether logged
     in or not.  Allowable ``names'' in the command line include both  ``login
     names''  and  ``user  names''.   If  a  name  is  ambiguous, all possible
     derivations are returned.


     Connecting directly to the server from a TIP or an equally  narrow-minded
     TELNET-protocol user program can result in meaningless attempts at option
     negotiation being sent to the server, which will foul up the command line
     interpretation.  Fingerd should be taught to filter out IAC's and perhaps
     even respond negatively (IAC WON'T) to all option commands received.