# [ADDR:]service_name           must be in /etc/services, or port number
# socket_type                   stream/dgram/raw/rdm/seqpacket
# protocol                      tcp/udp
# wait/nowait[.max]             wait is usually for udp, nowait for tcp
#                               max: max copies to run
# user[.group] or user[:group]  user and group to run under
# binary                        program to run
# arg0 arg1 arg2...             arguments, INCLUDING program name (arg0)

# serv	socket pro  w/nw   user binary args

# IPv6
555	dgram  udp6 wait   root echo echo Hello IPv6 udp world
# ...with ADDR prefix:
::1:444	stream tcp6 nowait root echo echo Hello IPv6 localhost

# Rarely seen case: tcp *wait* service
telnet	stream tcp  wait   root telnetd telnetd -w10
