------------------------------------------------------------------------
                          IP - Multiserv
------------------------------------------------------------------------

IP-Multiserv is a small set of Internet servers packed into a single bi-
nary executable file intented to be used on embedded Linux systems.  The
list of servers present in IP-Multiserv is configurable at compile time,
in order to insert only the useful ones for the targetted application.

IP-Multiserv was designed with requirements  for a small embedded system
in mind.  The servers are not full featured with bells and whistles, nor
bullet proof against denial-of-service attacks. Their goal is to provide
correct and robust behavior on small systems in industrial environments.

At present the following servers are implemented into IP-Multiserv:

- Chargen (port 19 TCP/IP and UDP/IP): a very simple character generator
  that sends a repetitive pattern to the client. Useful for network sup-
  ervision and debugging.  The Chargen protocol is described in RFC 864.

- Daytime (port 13 TCP/IP and UDP/IP): the  Daytime server  sends to the
  client a character string giving a human readable description of time.
  Options allow to choose  between local or UTC time,  and to format the
  time string as desired.  The Daytime protocol is described in RFC 867.
  
- Discard (port 9 TCP/IP and UDP/IP):  This is a kind of network version
  of the /dev/null black hole. Every bit sent to this server is silently
  discarded.  The Discard protocol is described in RFC 863.

- Echo (port 7 TCP/IP and UDP/IP):  The  Echo server is a kind of mirror
  on the network ; every  UDP datagram, or TCP segment  received  by the
  server is returned back to the sender.  Useful for network testing and
  debugging, but can be abused in a Denial-of-Service attack.  The  Echo
  procotol is described in RFC 862.

- Qotd (port 17 TCP/IP and UDP/IP): "Quote Of The Day" is  a very simple
  protocol to send diary information to clients. The server send back to
  its client  a sentence  read into a file, or obtained from its command
  line.  If coming from a file,  the sentence  is re-read each day.  The
  Qotd procotol is described in RFC 865.

- Telnet (port 23 TCP/IP):  Telnet is a famous protocol  allowing remote
  login into a system. This implementation is a minimal one, without any
  sophisticated option. A command line option allows to choose the login
  process. To give access with normal authentication, use /bin/login, to
  give access without any authentication (technical  support  on  deeply
  embedded system) use /bin/sh.  The  Telnet protocol himself is defined
  in RFC 854, but options are described in various RFC.  We used RFC 857
  and RFC 858.

- Tftp (port 69 UDP/IP): The Trivial File Transfert Protocol is a server
  that permits downloading and uploading of file  into the system.  TFTP
  does not support any authentication mechanism or information transfert
  (list of directory for example) as FTP does.  Options allow to  choose
  the User-ID and Group-ID used by the server process  to access  files,
  thus allowing various configuration  from "not any access control"  to
  "only access to world-readable files".  The TFTP protocol is described
  in RFC 1350.

- Time (port 37 TCP/IP and UDP/IP): This server sends back to the client
  a binary representation of current GMT time : the number of seconds e-
  lapsed since 1900 january 1st at 00h00.  This tool  permits  automatic
  configuration of  differents systems on the  same  local network.  The
  Time protocol is described in RFC 868.



 
The next to come are probably:

  FTP (File Tranfert), NTP (Network Time), DHCP (Dynamic Host Configura-
  tion), and SNMP (Simple Network Management).

After that, we will probably implement:

  HTTP (HyperText Transfert), SMTP (Simple Mail Transport) and POP (Post
  Office).
  
  
  
IP-Multiserv is released under the Gnu General Public License (GPL) des-
cribed in a companion file.


