diff options
author | Brian Somers <brian@FreeBSD.org> | 1998-05-10 22:20:20 +0000 |
---|---|---|
committer | Brian Somers <brian@FreeBSD.org> | 1998-05-10 22:20:20 +0000 |
commit | 24989c68ac5ed0620ed7b47e08dd5a126392c715 (patch) | |
tree | 2c49dfcdbc035f19aaf551f812fc7fb4a34d07fe /usr.sbin/ppp/physical.c | |
parent | e8607d386f7af1f0a7c2503d4e32a53b7a33af90 (diff) | |
download | src-24989c68ac5ed0620ed7b47e08dd5a126392c715.tar.gz src-24989c68ac5ed0620ed7b47e08dd5a126392c715.zip |
o Protect against expected NULL fdset pointers.
o Log FD_SET()s in LogTIMER.
o Identify the descriptor that causes an EBADF from select()
if LogTIMER is enabled (then exit).
o Call the MP server UpdateSet() function after calling
the UpdateSet() for all links - the link may enter
PHASE_TERMINATE and bring down the MP server - breaking
the imminent select().
Notes
Notes:
svn path=/cvs2svn/branches/MP/; revision=35924
Diffstat (limited to 'usr.sbin/ppp/physical.c')
-rw-r--r-- | usr.sbin/ppp/physical.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/usr.sbin/ppp/physical.c b/usr.sbin/ppp/physical.c index d87746c3dfe0..51ef2b3eb38c 100644 --- a/usr.sbin/ppp/physical.c +++ b/usr.sbin/ppp/physical.c @@ -16,7 +16,7 @@ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. * - * $Id: physical.c,v 1.1.2.29 1998/05/01 19:22:21 brian Exp $ + * $Id: physical.c,v 1.1.2.30 1998/05/01 19:25:35 brian Exp $ * */ @@ -130,14 +130,17 @@ physical_UpdateSet(struct descriptor *d, fd_set *r, fd_set *w, fd_set *e, if (p->fd >= 0) { if (r) { FD_SET(p->fd, r); + log_Printf(LogTIMER, "%s: fdset(r) %d\n", p->link.name, p->fd); sets++; } if (e) { FD_SET(p->fd, e); + log_Printf(LogTIMER, "%s: fdset(e) %d\n", p->link.name, p->fd); sets++; } if (w && (force || link_QueueLen(&p->link))) { FD_SET(p->fd, w); + log_Printf(LogTIMER, "%s: fdset(w) %d\n", p->link.name, p->fd); sets++; } if (sets && *n < p->fd + 1) |