Man Linux: Main Page and Category List


       gophfilt - oneshot connection to gopher document server


       gophfilt [-t type] [-p path] [-h host] [-s port] [-i item]


       The  gophfilt  program  is  a  oneshot command line driven version of a
       gopher client, suitable for use in shell- or awk-scripts.

       The Internet Gopher is a distributed  document  delivery  service.   It
       allows  a  neophyte  user  to  access various types of data residing on
       multiple  hosts  in  a  seamless  fashion.   This  is  accomplished  by
       presenting  the  user  a  hierarchical  arrangement of documents and by
       using a client-server communications model.  The Internet Gopher Server
       accepts  simple queries, and responds by sending the client a document.

       Gophfilt can operate in either of two modes.  The first one is  in  the
       spirit of unix filters, in that it accepts requests on stdin and writes
       results to stdout.  The request is  in  the  form  of  a  tab-delimited
       .cache item.  For example:

          1Master Gopher at UMN    1/   70

       (Or in string notation)

          "1Master Gopher at UMN\t1/\\t70\n"

       This  example  would result in the retrieval of the root directory from
       the Master Gopher.

       Gophfilt’s other mode permits the construction of a gopher request from
       arguments  provided  on  the  command  line.  In this "manual" mode, at
       least the path and type items must be provided.  The default  host  and
       port are taken from the file conf.h at module build time.

       -p specifies the path to the requested data.  From our "filter" example
       above, the field "1/" is the path.

       -t specifies the type of the requested data.  From our  example  above,
       the leading "1" character is the type (directory, in this case).

       -h specifies the name of the host where the server is to be found.  The
       default host (CLIENT1_HOST from file conf.h) is used if not provided.

       -s specifies the service (port) that the  server  is  monitoring.   The
       default port (CLIENT1_PORT from file conf.h) is used if not provided.

       -i  specifies  a  search item.  This field immediately follows the path
       field in the transmitted request.

       -T specifies a receiver timeout in seconds.  This is the  maximum  time
       that  gophfilt  will wait for more data.  If the "timeout" return value
       is noticed by the calling program, any  data  received  to  that  point
       should be considered suspect.

       To  recreate  using  manual operation the request from our example, one
       would execute the following command.

       gophfilt -t 1 -p 1/ -h -s 70


       Here is an example that demonstrates the usefulness  of  the  gophfilt.
       This specific example only works on the Rutgers campus, but illustrates
       the point

       gophfilt -t 0 -p "webster default SPELL" -i flatulence
         -h -s 770 | gophfilt

       This example requests a selector item from  the  Webster’s  Dictionary,
       and  then  pipes  that item to gophfilt for subsequent retrieval of the
       actual definition.  The result is available on stdout for use.


       Gophfilt returns the following completion codes on exit:

           0 Successful completion.

          -1 Error in parsing command line arguments.

          -2 Manual operation and insufficient parameters were provided.

          -3 Piped operation and unable to read selector from stdin.

          -4 Unsupported item type requested.

          -5 Unable to connect to specified host and port combination.

          -6 Error encountered writing to stdout.

          -7 Timeout occurred while waiting for more data.