diff --git a/usr.sbin/ppp/server.c b/usr.sbin/ppp/server.c index 5203d7ce704d..d4ec6c4ebce1 100644 --- a/usr.sbin/ppp/server.c +++ b/usr.sbin/ppp/server.c @@ -102,6 +102,10 @@ server_Read(struct fdescriptor *d, struct bundle *bundle, const fd_set *fdset) wfd = accept(s->fd, sa, &ssize); if (wfd < 0) log_Printf(LogERROR, "server_Read: accept(): %s\n", strerror(errno)); + else if (sa->sa_len == 0) { + close(wfd); + wfd = -1; + } } else wfd = -1;