File README.SUSE of Package xinetd.5694

# Merged IPv4 and IPv6 support

Since 2.3.4 has xinetd merged IPv4 and IPv6 support.
It means that it is possible to use both protocols simultaneously.
xined is compiled to use IPv4 by default.
IPv6 must be enabled for each service in configuration
file, see man xinetd.conf.

Since 2.3.14 in SUSE, xinetd can create services that use either IPv6 or IPv4,
depending on the IPv6 support by the system. See man xinetd.conf as well.

Xinetd was patched to honour disable line in service configuration files
(stored in /etc/xinetd.d). Xinetd now aborts parsing of the config file
as soon as it reads the line "disable = yes". This was made to prevent Xinetd
from dropping warnings into logs which where not relevant.
Futher information can be found at:
https://bugzilla.novell.com/show_bug.cgi?id=254613

# Systemd

SUSE distributions uses systemd as a default init system. It provides a
xinetd-like capability called socket activation, where services are spawned once
underlying socket get an incoming connection.

## Example of socket activation

The xinetd configuration for ftp daemon /etc/xinetd.d/ftp

  service ftp
  {
    socket_type = stream
    protocol = tcp
    wait = no
    user = root
    server = /usr/sbin/ftpd
  }

This is an equvalent socket unit

  ftp.socket

  [Unit]
  Description=FTP Server socket
  
  [Socket]
  ListenStream=21
  #service is spawned for each incoming connection in inetd-style
  #Accept=true
  
  # Those two lines will ensure the ftp.socket will be created on a system boot
  [Install]
  WantedBy=sockets.target

  ftpd.service

  [Unit]
  Description=FTP Server service
  
  [Service]
  ExecStart=/usr/bin/ftpd
  # not needed in case, .service and .socket units has the same name
  Sockets=ftp.socket
  
Then you need to enable socket
  # systemctl enable ftp.socket
Start it (will be done on next boot if enabled before)
  # systemctl start ftp.socket

And server can be started manually by
  # systemctl enable ftp.service

Status of .socket and .service can be checked using systemctl status ftp.(socket|service)

Please consult systemd.socket(5), systemd.exec(5), systemd.service(5) and
systemd.unit(5) for detailed information about all options provided by systemd.

Your SUSE Team
openSUSE Build Service is sponsored by