> endpwent() here to close file descriptor opened by getpwnam(),
> since that all work with the password database was done.

But no file descriptor is open.

setpassent() was never called to keep the fd open.

It's even explained in the manual page.

> Index: tftp-proxy.c
> ===================================================================
> RCS file: /cvs/src//libexec/tftp-proxy/tftp-proxy.c,v
> retrieving revision 1.6
> diff -u tftp-proxy.c
> --- tftp-proxy.c      13 Apr 2008 00:22:17 -0000      1.6
> +++ tftp-proxy.c      2 Jun 2010 13:06:16 -0000
> @@ -128,6 +128,7 @@
>               syslog(LOG_ERR, "can't revoke privs: %m");
>               exit(1);
>       }
> +     endpwent();
>  
>       /* non-blocking io */
>       if (ioctl(fd, FIONBIO, &on) < 0) {

Reply via email to