Hi. I hunted down and fixed a bug that caused /usr/sbin/usernetctl not to detach after a ppp connection has benn successuflly established. I'm using initscripts-4.84-1 (rawhide). It is a bug in /usr/src/redhat/BUILD/initscripts-4.84/src/ppp-watch.c (/sbin/ppp-watch), in interfaceStatus(): The error return code of socket() is -1, not 0. (Also, the man page says, the protocol family should be specified by a macro beginning with "PF_", not "AF_". But the PF_... are defined as the AF_... Is this portable?) Here is the patch: *** ppp-watch.c-alt Mon Dec 6 20:18:02 1999 --- ppp-watch.c Mon Jan 31 05:03:14 2000 *************** *** 373,386 **** static int interfaceStatus(char *device) { ! int sock = 0; ! int pfs[] = {AF_INET, AF_IPX, AF_AX25, AF_APPLETALK, 0}; int p = 0; struct ifreq ifr; int retcode = 0; ! while (!sock && pfs[p]) { sock = socket(pfs[p++], SOCK_DGRAM, 0); } ! if (!sock) return 0; memset(&ifr, 0, sizeof(ifr)); --- 373,386 ---- static int interfaceStatus(char *device) { ! int sock = -1; ! int pfs[] = {PF_INET, PF_IPX, PF_AX25, PF_APPLETALK, 0}; int p = 0; struct ifreq ifr; int retcode = 0; ! while ((sock == -1) && pfs[p]) { sock = socket(pfs[p++], SOCK_DGRAM, 0); } ! if (sock == -1) return 0; memset(&ifr, 0, sizeof(ifr));
*** Bug 8978 has been marked as a duplicate of this bug. ***
Will be fixed in initscripts-4.85.