aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/ppp/physical.c
diff options
context:
space:
mode:
authorBrian Somers <brian@FreeBSD.org>1998-05-10 22:20:20 +0000
committerBrian Somers <brian@FreeBSD.org>1998-05-10 22:20:20 +0000
commit24989c68ac5ed0620ed7b47e08dd5a126392c715 (patch)
tree2c49dfcdbc035f19aaf551f812fc7fb4a34d07fe /usr.sbin/ppp/physical.c
parente8607d386f7af1f0a7c2503d4e32a53b7a33af90 (diff)
downloadsrc-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.c5
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)