summaryrefslogtreecommitdiffstats
path: root/usr.sbin/dconschat
diff options
context:
space:
mode:
authorsimokawa <simokawa@FreeBSD.org>2007-05-31 04:55:05 +0000
committersimokawa <simokawa@FreeBSD.org>2007-05-31 04:55:05 +0000
commit799f344ad5a15b5b73fd5ad2b1a4e3ea732d9d75 (patch)
treeef87c1dd02a5a64488d590a599d5b3697760b286 /usr.sbin/dconschat
parent35bb610d680a7807d2a4d85cd134b7f5931a86f1 (diff)
downloadFreeBSD-src-799f344ad5a15b5b73fd5ad2b1a4e3ea732d9d75.zip
FreeBSD-src-799f344ad5a15b5b73fd5ad2b1a4e3ea732d9d75.tar.gz
Discard backlog on GDB port when connected.
MFC after: 3 days
Diffstat (limited to 'usr.sbin/dconschat')
-rw-r--r--usr.sbin/dconschat/dconschat.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/usr.sbin/dconschat/dconschat.c b/usr.sbin/dconschat/dconschat.c
index e7dc004..9594c16 100644
--- a/usr.sbin/dconschat/dconschat.c
+++ b/usr.sbin/dconschat/dconschat.c
@@ -605,6 +605,16 @@ dconschat_accept_socket(struct dcons_state *dc, struct dcons_port *p)
p->skip_read = 0;
}
#endif
+ /* discard backlog on GDB port */
+ if (IS_GDB(p)) {
+ char buf[2048];
+ int len;
+
+ while ((len = dconschat_read_dcons(dc, DCONS_GDB, &buf[0],
+ 2048)) > 0)
+ if (verbose)
+ printf("discard %d chars on GDB port\n", len);
+ }
p->infd = p->outfd = ns;
EV_SET(&kev, ns, EVFILT_READ, EV_ADD, NOTE_LOWAT, 1, (void *)p);
OpenPOWER on IntegriCloud