> Ok, this is what seems to die, god knows why ?
>
> 18238 socket(PF_UNIX, SOCK_STREAM, 0) = 13
> 18238 connect(13, {sin_family=AF_UNIX,
> path="
> /var/run/.nscd_socket"}, 110) = -1
> ECONNREFUSED (Connection refused)
> 18238 close(13) = 0
That should be a non-fatal error because the libc routines will try to use
the local name cache daemon first on a local UNIX domain socket. The
routines should then procede to try to DNS lookups themselves (assumed that
this is configured in /etc/nsswitch.conf and /etc/resolv.conf).
Is that happening in inetd or in tftpd ? If it's inetd does it then go on
to fork() and then execve() tftpd ? If it's tftpd then what causes the
process to exit() or fail (look for SEGV or similar) ?
My thoughts would be:
1) Search for the execve() of tftpd
2) If it's successful note the PID at that point, otherwise look for why it
failed.
3) If you've got a PID, use less to go to the end of the file and do a
reverse search (use the ? key) looking for that PID. You should then be at
the point where the process exits..
Good luck!
Chris
--
SLUG - Sydney Linux User's Group - http://slug.org.au/
More Info: http://lists.slug.org.au/listinfo/slug