[issue1243] dntpd(8) blocks during startup

Matthew Dillon dillon at apollo.backplane.com
Sun Jan 25 23:29:11 PST 2009


If someone wants to take on this task it would actually be fairly easy
to do, maybe 2 hours of work.  And probably quite fun, too.  The source
is in /usr/src/usr.sbin/dntpd.

The dntpd state machine includes a DNS-resolution stage.  Currently dntpd
blocks because the add_server() tries to resolve the server name prior
to demonization.  The add_server() calls must still be made prior to
demonization because we want fatal parsing errors to be reported prior
to going into the background.

However, instead of having add_server() create the initial socket and
do the initial DNS resolution it could instead start the server in the
dns-reresolve state, which is state -1, and not even try to resolve
the server names from inside add_server() itself.

					-Matt





More information about the Bugs mailing list