--- contrib/isc-dhcp/client/dhclient.c.orig Mon Mar 24 00:29:36 2003 +++ contrib/isc-dhcp/client/dhclient.c Fri May 2 16:08:29 2003 @@ -112,10 +112,8 @@ int no_dhclient_pid = 0; int no_dhclient_script = 0; FILE *pidfd; - pid_t oldpid; char *s; - oldpid = 0; /* Make sure we have stdin, stdout and stderr. */ i = open ("/dev/null", O_RDWR); if (i == 0) @@ -259,13 +257,16 @@ /* first kill of any currently running client */ if (release_mode) { + long try; + pid_t *oldpid; if ((pidfd = fopen(path_dhclient_pid, "r")) != NULL) { - e = fscanf(pidfd, "%d", &oldpid); + e = fscanf(pidfd, "%ld", &try); + *oldpid = (pid_t)try; if (e != 0 && e != EOF) { - if (oldpid) { - if (kill(oldpid, SIGKILL) == 0) + if (*oldpid) { + if (kill(*oldpid, SIGKILL) == 0) unlink(path_dhclient_pid); } }