summaryrefslogtreecommitdiff
path: root/usr.sbin/ppp/server.c
diff options
context:
space:
mode:
authorBrian Somers <brian@FreeBSD.org>1998-08-02 13:01:16 +0000
committerBrian Somers <brian@FreeBSD.org>1998-08-02 13:01:16 +0000
commit0bdcbcbe9be534c9eb729da4f1d7f98de78cc1a8 (patch)
tree03f5835260b0003a58bf7683bf924870f6d08f74 /usr.sbin/ppp/server.c
parentb1770825243dca75f20236abfc8e26821b7f28fd (diff)
downloadsrc-test2-0bdcbcbe9be534c9eb729da4f1d7f98de78cc1a8.tar.gz
src-test2-0bdcbcbe9be534c9eb729da4f1d7f98de78cc1a8.zip
PR: 7469
Be careful that the current or next prompt in the list that we're iterating through doesn't get changed by descriptor_Read().
Notes
Notes: svn path=/head/; revision=38013
Diffstat (limited to 'usr.sbin/ppp/server.c')
-rw-r--r--usr.sbin/ppp/server.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/usr.sbin/ppp/server.c b/usr.sbin/ppp/server.c
index 3fb1de57c147..2a6ccfe77bf3 100644
--- a/usr.sbin/ppp/server.c
+++ b/usr.sbin/ppp/server.c
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: server.c,v 1.21 1998/06/24 19:33:36 brian Exp $
+ * $Id: server.c,v 1.22 1998/06/27 14:18:10 brian Exp $
*/
#include <sys/types.h>
@@ -152,9 +152,13 @@ server_Read(struct descriptor *d, struct bundle *bundle, const fd_set *fdset)
}
}
+ log_PromptListChanged = 0;
for (p = log_PromptList(); p; p = p->next)
- if (descriptor_IsSet(&p->desc, fdset))
+ if (descriptor_IsSet(&p->desc, fdset)) {
descriptor_Read(&p->desc, bundle, fdset);
+ if (log_PromptListChanged)
+ break;
+ }
}
static int