[ Team LiB ] Previous Section Next Section

Exercises

13.1

What happens in Figure 13.5 if we move the call to daemon_init before the command-line arguments have been checked, so that the call to err_quit comes after it?

13.2

For the five services handled internally by inetd (Figure 2.18), considering the TCP version and the UDP version of each service, which of the 10 servers do you think are implemented with a call to fork, and which do not require a fork?

13.3

What happens if we create a UDP socket, bind port 7 to the socket (the standard echo server in Figure 2.18), and send a UDP datagram to a chargen server?

13.4

The Solaris 2.x man page for inetd describes a -t flag that causes inetd to call syslog (with a facility of LOG_DAEMON and a level of LOG_NOTICE) to log the client's IP address and port for any TCP service that inetd handles. How does inetd obtain this information?

This man page also says that inetd cannot do this for a UDP service. Why?

Is there a way around this limitation for UDP services?


    [ Team LiB ] Previous Section Next Section