head 1.2; access; symbols pkgsrc-2016Q4:1.1.0.76 pkgsrc-2016Q4-base:1.1 pkgsrc-2016Q3:1.1.0.74 pkgsrc-2016Q3-base:1.1 pkgsrc-2016Q2:1.1.0.72 pkgsrc-2016Q2-base:1.1 pkgsrc-2016Q1:1.1.0.70 pkgsrc-2016Q1-base:1.1 pkgsrc-2015Q4:1.1.0.68 pkgsrc-2015Q4-base:1.1 pkgsrc-2015Q3:1.1.0.66 pkgsrc-2015Q3-base:1.1 pkgsrc-2015Q2:1.1.0.64 pkgsrc-2015Q2-base:1.1 pkgsrc-2015Q1:1.1.0.62 pkgsrc-2015Q1-base:1.1 pkgsrc-2014Q4:1.1.0.60 pkgsrc-2014Q4-base:1.1 pkgsrc-2014Q3:1.1.0.58 pkgsrc-2014Q3-base:1.1 pkgsrc-2014Q2:1.1.0.56 pkgsrc-2014Q2-base:1.1 pkgsrc-2014Q1:1.1.0.54 pkgsrc-2014Q1-base:1.1 pkgsrc-2013Q4:1.1.0.52 pkgsrc-2013Q4-base:1.1 pkgsrc-2013Q3:1.1.0.50 pkgsrc-2013Q3-base:1.1 pkgsrc-2013Q2:1.1.0.48 pkgsrc-2013Q2-base:1.1 pkgsrc-2013Q1:1.1.0.46 pkgsrc-2013Q1-base:1.1 pkgsrc-2012Q4:1.1.0.44 pkgsrc-2012Q4-base:1.1 pkgsrc-2012Q3:1.1.0.42 pkgsrc-2012Q3-base:1.1 pkgsrc-2012Q2:1.1.0.40 pkgsrc-2012Q2-base:1.1 pkgsrc-2012Q1:1.1.0.38 pkgsrc-2012Q1-base:1.1 pkgsrc-2011Q4:1.1.0.36 pkgsrc-2011Q4-base:1.1 pkgsrc-2011Q3:1.1.0.34 pkgsrc-2011Q3-base:1.1 pkgsrc-2011Q2:1.1.0.32 pkgsrc-2011Q2-base:1.1 pkgsrc-2011Q1:1.1.0.30 pkgsrc-2011Q1-base:1.1 pkgsrc-2010Q4:1.1.0.28 pkgsrc-2010Q4-base:1.1 pkgsrc-2010Q3:1.1.0.26 pkgsrc-2010Q3-base:1.1 pkgsrc-2010Q2:1.1.0.24 pkgsrc-2010Q2-base:1.1 pkgsrc-2010Q1:1.1.0.22 pkgsrc-2010Q1-base:1.1 pkgsrc-2009Q4:1.1.0.20 pkgsrc-2009Q4-base:1.1 pkgsrc-2009Q3:1.1.0.18 pkgsrc-2009Q3-base:1.1 pkgsrc-2009Q2:1.1.0.16 pkgsrc-2009Q2-base:1.1 pkgsrc-2009Q1:1.1.0.14 pkgsrc-2009Q1-base:1.1 pkgsrc-2008Q4:1.1.0.12 pkgsrc-2008Q4-base:1.1 pkgsrc-2008Q3:1.1.0.10 pkgsrc-2008Q3-base:1.1 cube-native-xorg:1.1.0.8 cube-native-xorg-base:1.1 pkgsrc-2008Q2:1.1.0.6 pkgsrc-2008Q2-base:1.1 cwrapper:1.1.0.4 pkgsrc-2008Q1:1.1.0.2 pkgsrc-2008Q1-base:1.1; locks; strict; comment @# @; 1.2 date 2016.12.29.19.13.02; author wiz; state dead; branches; next 1.1; commitid kFYPk8EnajcmFUzz; 1.1 date 2008.03.08.13.59.39; author bouyer; state Exp; branches; next ; desc @@ 1.2 log @Remove xenkernel and tools versions 3, 33, and 41. As discussed on pkgsrc-users. @ text @$NetBSD: patch-ca,v 1.1 2008/03/08 13:59:39 bouyer Exp $ --- console/daemon/io.c.orig 2008-03-08 14:24:52.000000000 +0100 +++ console/daemon/io.c 2008-03-08 14:41:23.000000000 +0100 @@@@ -56,6 +56,7 @@@@ { int domid; int tty_fd; + int stty_fd; bool is_dead; struct buffer buffer; struct domain *next; @@@@ -160,6 +161,12 @@@@ char *data; unsigned int len; + if ((dom->stty_fd = open(slave, O_RDONLY, 0)) == -1) { + dolog(LOG_ERR, "Failed to open slave tty %s for " + "domain-%d", slave, dom->domid); + goto out; + } + if (tcgetattr(master, &term) != -1) { cfmakeraw(&term); tcsetattr(master, TCSAFLUSH, &term); @@@@ -444,6 +451,7 @@@@ { if (d->tty_fd != -1) { close(d->tty_fd); + close(d->stty_fd); d->tty_fd = -1; } @@@@ -527,6 +535,7 @@@@ len = read(dom->tty_fd, msg, len); if (len < 1) { close(dom->tty_fd); + close(dom->stty_fd); dom->tty_fd = -1; if (domain_is_valid(dom->domid)) { @@@@ -545,6 +554,7 @@@@ xc_evtchn_notify(dom->xce_handle, dom->local_port); } else { close(dom->tty_fd); + close(dom->stty_fd); dom->tty_fd = -1; shutdown_domain(dom); } @@@@ -564,6 +574,7 @@@@ dom->domid, len, errno); close(dom->tty_fd); + close(dom->stty_fd); dom->tty_fd = -1; if (domain_is_valid(dom->domid)) { @ 1.1 log @On NetBSD, the pseudo-tty attributes are reset when the slave is open for the first time. This cause a race between xenconsole and xenconsoled, where the later start writing to the master pty before the former has switched it back to raw, causing some lines to be echoed back to the domU. Fix this by keeping the slave open in xenconsoled, so that when xenconsole opens it attributes are not reset. Hint provided by fvdl@@, thanks ! Because of this we no longer need to set the slave to raw in xenconsole, so shorten patch-cc. Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD: patch-cb,v 1.1.1.1 2007/06/14 19:39:46 bouyer Exp $ @