summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/compat/common/tty_43.c485
-rw-r--r--sys/conf/files3
-rw-r--r--sys/ddb/db_structinfo.c3
-rw-r--r--sys/kern/tty.c19
-rw-r--r--sys/kern/tty_conf.c7
-rw-r--r--sys/kern/tty_pty.c15
-rw-r--r--sys/sys/ioctl.h11
-rw-r--r--sys/sys/ioctl_compat.h127
-rw-r--r--sys/sys/tty.h7
-rw-r--r--sys/sys/ttychars.h62
-rw-r--r--sys/sys/ttydev.h61
11 files changed, 12 insertions, 788 deletions
diff --git a/sys/compat/common/tty_43.c b/sys/compat/common/tty_43.c
deleted file mode 100644
index 26606f1ceae..00000000000
--- a/sys/compat/common/tty_43.c
+++ /dev/null
@@ -1,485 +0,0 @@
-/* $OpenBSD: tty_43.c,v 1.11 2013/04/09 02:56:50 tedu Exp $ */
-/* $NetBSD: tty_43.c,v 1.5 1996/05/20 14:29:17 mark Exp $ */
-
-/*-
- * Copyright (c) 1982, 1986, 1991, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)tty_compat.c 8.1 (Berkeley) 6/10/93
- */
-
-/*
- * mapping routines for old line discipline (yuck)
- */
-#include <sys/param.h>
-#include <sys/systm.h>
-#include <sys/ioctl.h>
-#include <sys/proc.h>
-#include <sys/tty.h>
-#include <sys/termios.h>
-#include <sys/file.h>
-#include <sys/conf.h>
-#include <sys/kernel.h>
-#include <sys/syslog.h>
-#include <sys/ioctl_compat.h>
-
-/*
- * XXX libcompat files should be included with config attributes
- */
-#ifdef COMPAT_OLDTTY
-
-int ttydebug = 0;
-
-static const struct speedtab compatspeeds[] = {
-#define MAX_SPEED 17
- { 115200, 17 },
- { 57600, 16 },
- { 38400, 15 },
- { 19200, 14 },
- { 9600, 13 },
- { 4800, 12 },
- { 2400, 11 },
- { 1800, 10 },
- { 1200, 9 },
- { 600, 8 },
- { 300, 7 },
- { 200, 6 },
- { 150, 5 },
- { 134, 4 },
- { 110, 3 },
- { 75, 2 },
- { 50, 1 },
- { 0, 0 },
- { -1, -1 },
-};
-static const int compatspcodes[] = {
- 0, 50, 75, 110, 134, 150, 200, 300, 600, 1200,
- 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200
-};
-
-int ttcompatgetflags(struct tty *);
-void ttcompatsetflags(struct tty *, struct termios *);
-void ttcompatsetlflags(struct tty *, struct termios *);
-
-/*ARGSUSED*/
-int
-ttcompat(struct tty *tp, u_long com, caddr_t data, int flag, struct proc *p)
-{
-
- switch (com) {
- case TIOCGETP: {
- struct sgttyb *sg = (struct sgttyb *)data;
- u_char *cc = tp->t_cc;
- int speed;
-
- speed = ttspeedtab(tp->t_ospeed, compatspeeds);
- sg->sg_ospeed = (speed == -1) ? MAX_SPEED : speed;
- if (tp->t_ispeed == 0)
- sg->sg_ispeed = sg->sg_ospeed;
- else {
- speed = ttspeedtab(tp->t_ispeed, compatspeeds);
- sg->sg_ispeed = (speed == -1) ? MAX_SPEED : speed;
- }
- sg->sg_erase = cc[VERASE];
- sg->sg_kill = cc[VKILL];
- sg->sg_flags = ttcompatgetflags(tp);
- break;
- }
-
- case TIOCSETP:
- case TIOCSETN: {
- struct sgttyb *sg = (struct sgttyb *)data;
- struct termios term;
- int speed;
-
- term = tp->t_termios;
- if ((speed = sg->sg_ispeed) > MAX_SPEED || speed < 0)
- term.c_ispeed = speed;
- else
- term.c_ispeed = compatspcodes[speed];
- if ((speed = sg->sg_ospeed) > MAX_SPEED || speed < 0)
- term.c_ospeed = speed;
- else
- term.c_ospeed = compatspcodes[speed];
- term.c_cc[VERASE] = sg->sg_erase;
- term.c_cc[VKILL] = sg->sg_kill;
- tp->t_flags = (ttcompatgetflags(tp) & 0xffff0000) |
- (sg->sg_flags & 0xffff);
- ttcompatsetflags(tp, &term);
- return (ttioctl(tp, com == TIOCSETP ? TIOCSETAF : TIOCSETA,
- (caddr_t)&term, flag, p));
- }
-
- case TIOCGETC: {
- struct tchars *tc = (struct tchars *)data;
- u_char *cc = tp->t_cc;
-
- tc->t_intrc = cc[VINTR];
- tc->t_quitc = cc[VQUIT];
- tc->t_startc = cc[VSTART];
- tc->t_stopc = cc[VSTOP];
- tc->t_eofc = cc[VEOF];
- tc->t_brkc = cc[VEOL];
- break;
- }
- case TIOCSETC: {
- struct tchars *tc = (struct tchars *)data;
- u_char *cc = tp->t_cc;
-
- cc[VINTR] = tc->t_intrc;
- cc[VQUIT] = tc->t_quitc;
- cc[VSTART] = tc->t_startc;
- cc[VSTOP] = tc->t_stopc;
- cc[VEOF] = tc->t_eofc;
- cc[VEOL] = tc->t_brkc;
- if (tc->t_brkc == (char)-1)
- cc[VEOL2] = _POSIX_VDISABLE;
- break;
- }
- case TIOCSLTC: {
- struct ltchars *ltc = (struct ltchars *)data;
- u_char *cc = tp->t_cc;
-
- cc[VSUSP] = ltc->t_suspc;
- cc[VDSUSP] = ltc->t_dsuspc;
- cc[VREPRINT] = ltc->t_rprntc;
- cc[VDISCARD] = ltc->t_flushc;
- cc[VWERASE] = ltc->t_werasc;
- cc[VLNEXT] = ltc->t_lnextc;
- break;
- }
- case TIOCGLTC: {
- struct ltchars *ltc = (struct ltchars *)data;
- u_char *cc = tp->t_cc;
-
- ltc->t_suspc = cc[VSUSP];
- ltc->t_dsuspc = cc[VDSUSP];
- ltc->t_rprntc = cc[VREPRINT];
- ltc->t_flushc = cc[VDISCARD];
- ltc->t_werasc = cc[VWERASE];
- ltc->t_lnextc = cc[VLNEXT];
- break;
- }
- case TIOCLBIS:
- case TIOCLBIC:
- case TIOCLSET: {
- struct termios term;
- int flags;
-
- term = tp->t_termios;
- flags = ttcompatgetflags(tp);
- switch (com) {
- case TIOCLSET:
- tp->t_flags = (flags & 0xffff) | (*(int *)data << 16);
- break;
- case TIOCLBIS:
- tp->t_flags = flags | (*(int *)data << 16);
- break;
- case TIOCLBIC:
- tp->t_flags = flags & ~(*(int *)data << 16);
- break;
- }
- ttcompatsetlflags(tp, &term);
- return (ttioctl(tp, TIOCSETA, (caddr_t)&term, flag, p));
- }
- case TIOCLGET:
- *(int *)data = ttcompatgetflags(tp) >> 16;
- if (ttydebug)
- printf("CLGET: returning %x\n", *(int *)data);
- break;
-
- case OTIOCGETD:
- *(int *)data = tp->t_line ? tp->t_line : 2;
- break;
-
- case OTIOCSETD: {
- int ldisczero = 0;
-
- return (ttioctl(tp, TIOCSETD,
- *(int *)data == 2 ? (caddr_t)&ldisczero : data, flag, p));
- }
- case OTIOCCONS:
- *(int *)data = 1;
- return (ttioctl(tp, TIOCCONS, data, flag, p));
-
- case TIOCHPCL:
- SET(tp->t_cflag, HUPCL);
- break;
-
- case TIOCGSID:
- if (tp->t_session == NULL)
- return (ENOTTY);
-
- if (tp->t_session->s_leader == NULL)
- return (ENOTTY);
-
- *(int *)data = tp->t_session->s_leader->ps_pid;
- break;
-
- default:
- return (-1);
- }
- return (0);
-}
-
-int
-ttcompatgetflags(struct tty *tp)
-{
- tcflag_t iflag = tp->t_iflag;
- tcflag_t lflag = tp->t_lflag;
- tcflag_t oflag = tp->t_oflag;
- tcflag_t cflag = tp->t_cflag;
- int flags = 0;
-
- if (ISSET(iflag, IXOFF))
- SET(flags, TANDEM);
- if (ISSET(iflag, ICRNL) || ISSET(oflag, ONLCR))
- SET(flags, CRMOD);
- if (ISSET(cflag, PARENB)) {
- if (ISSET(iflag, INPCK)) {
- if (ISSET(cflag, PARODD))
- SET(flags, ODDP);
- else
- SET(flags, EVENP);
- } else
- SET(flags, ANYP);
- }
-
- if (!ISSET(lflag, ICANON)) {
- /* fudge */
- if (ISSET(iflag, IXON) || ISSET(lflag, ISIG|IEXTEN) ||
- ISSET(cflag, PARENB))
- SET(flags, CBREAK);
- else
- SET(flags, RAW);
- }
-
- if (ISSET(flags, RAW))
- SET(flags, ISSET(tp->t_flags, LITOUT|PASS8));
- else if (ISSET(cflag, CSIZE) == CS8) {
- if (!ISSET(oflag, OPOST))
- SET(flags, LITOUT);
- if (!ISSET(iflag, ISTRIP))
- SET(flags, PASS8);
- }
-
- if (ISSET(cflag, MDMBUF))
- SET(flags, MDMBUF);
- if (!ISSET(cflag, HUPCL))
- SET(flags, NOHANG);
- if (ISSET(cflag, XCASE) && ISSET(iflag, IUCLC) && ISSET(oflag, OLCUC))
- SET(flags, LCASE);
- if (ISSET(oflag, OXTABS))
- SET(flags, XTABS);
- if (ISSET(lflag, ECHOE))
- SET(flags, CRTERA|CRTBS);
- if (ISSET(lflag, ECHOKE))
- SET(flags, CRTKIL|CRTBS);
- if (ISSET(lflag, ECHOPRT))
- SET(flags, PRTERA);
- if (ISSET(lflag, ECHOCTL))
- SET(flags, CTLECH);
- if (!ISSET(iflag, IXANY))
- SET(flags, DECCTQ);
- SET(flags, ISSET(lflag, ECHO|TOSTOP|FLUSHO|PENDIN|NOFLSH));
- if (ttydebug)
- printf("getflags: %x\n", flags);
- return (flags);
-}
-
-void
-ttcompatsetflags(struct tty *tp, struct termios *t)
-{
- int flags = tp->t_flags;
- tcflag_t iflag = t->c_iflag;
- tcflag_t oflag = t->c_oflag;
- tcflag_t lflag = t->c_lflag;
- tcflag_t cflag = t->c_cflag;
-
- if (ISSET(flags, TANDEM))
- SET(iflag, IXOFF);
- else
- CLR(iflag, IXOFF);
- if (ISSET(flags, ECHO))
- SET(lflag, ECHO);
- else
- CLR(lflag, ECHO);
- if (ISSET(flags, CRMOD)) {
- SET(iflag, ICRNL);
- SET(oflag, ONLCR);
- } else {
- CLR(iflag, ICRNL);
- CLR(oflag, ONLCR);
- }
- if (ISSET(flags, XTABS))
- SET(oflag, OXTABS);
- else
- CLR(oflag, OXTABS);
- if (ISSET(flags, LCASE)) {
- SET(iflag, IUCLC);
- SET(oflag, OLCUC);
- SET(cflag, XCASE);
- }
- else {
- CLR(iflag, IUCLC);
- CLR(oflag, OLCUC);
- CLR(cflag, XCASE);
- }
-
- if (ISSET(flags, RAW)) {
- iflag &= IXOFF|IXANY;
- CLR(lflag, ISIG|ICANON|IEXTEN);
- CLR(cflag, PARENB);
- } else {
- SET(iflag, BRKINT|IXON|IMAXBEL);
- SET(lflag, ISIG|IEXTEN);
- if (ISSET(flags, CBREAK))
- CLR(lflag, ICANON);
- else
- SET(lflag, ICANON);
- switch (ISSET(flags, ANYP)) {
- case 0:
- CLR(cflag, PARENB);
- break;
- case ANYP:
- SET(cflag, PARENB);
- CLR(iflag, INPCK);
- break;
- case EVENP:
- SET(cflag, PARENB);
- SET(iflag, INPCK);
- CLR(cflag, PARODD);
- break;
- case ODDP:
- SET(cflag, PARENB);
- SET(iflag, INPCK);
- SET(cflag, PARODD);
- break;
- }
- }
-
- if (ISSET(flags, RAW|LITOUT|PASS8)) {
- CLR(cflag, CSIZE|XCASE);
- SET(cflag, CS8);
- if (!ISSET(flags, RAW|PASS8))
- SET(iflag, ISTRIP);
- else
- CLR(iflag, ISTRIP);
- if (!ISSET(flags, RAW|LITOUT))
- SET(oflag, OPOST);
- else
- CLR(oflag, OPOST);
- } else {
- CLR(cflag, CSIZE);
- SET(cflag, CS7);
- if (ISSET(iflag, IUCLC) && ISSET(oflag, OLCUC))
- SET(cflag, XCASE);
- SET(iflag, ISTRIP);
- SET(oflag, OPOST);
- }
-
- t->c_iflag = iflag;
- t->c_oflag = oflag;
- t->c_lflag = lflag;
- t->c_cflag = cflag;
-}
-
-void
-ttcompatsetlflags(struct tty *tp, struct termios *t)
-{
- int flags = tp->t_flags;
- tcflag_t iflag = t->c_iflag;
- tcflag_t oflag = t->c_oflag;
- tcflag_t lflag = t->c_lflag;
- tcflag_t cflag = t->c_cflag;
-
- /* Nothing we can do with CRTBS. */
- if (ISSET(flags, PRTERA))
- SET(lflag, ECHOPRT);
- else
- CLR(lflag, ECHOPRT);
- if (ISSET(flags, CRTERA))
- SET(lflag, ECHOE);
- else
- CLR(lflag, ECHOE);
- /* Nothing we can do with TILDE. */
- if (ISSET(flags, MDMBUF))
- SET(cflag, MDMBUF);
- else
- CLR(cflag, MDMBUF);
- if (ISSET(flags, NOHANG))
- CLR(cflag, HUPCL);
- else
- SET(cflag, HUPCL);
- if (ISSET(flags, CRTKIL))
- SET(lflag, ECHOKE);
- else
- CLR(lflag, ECHOKE);
- if (ISSET(flags, CTLECH))
- SET(lflag, ECHOCTL);
- else
- CLR(lflag, ECHOCTL);
- if (!ISSET(flags, DECCTQ))
- SET(iflag, IXANY);
- else
- CLR(iflag, IXANY);
- if (ISSET(flags, LCASE)) {
- SET(oflag, OLCUC);
- SET(iflag, IUCLC);
- SET(cflag, XCASE);
- }
- CLR(lflag, TOSTOP|FLUSHO|PENDIN|NOFLSH);
- SET(lflag, ISSET(flags, TOSTOP|FLUSHO|PENDIN|NOFLSH));
-
- if (ISSET(flags, RAW|LITOUT|PASS8)) {
- CLR(cflag, CSIZE);
- SET(cflag, CS8);
- if (!ISSET(flags, RAW|PASS8))
- SET(iflag, ISTRIP);
- else
- CLR(iflag, ISTRIP);
- if (!ISSET(flags, RAW|LITOUT))
- SET(oflag, OPOST);
- else {
- CLR(oflag, OPOST);
- CLR(cflag, XCASE);
- }
- } else {
- CLR(cflag, CSIZE);
- SET(cflag, CS7);
- SET(iflag, ISTRIP);
- SET(oflag, OPOST);
- if (ISSET(oflag, OLCUC) && ISSET(iflag, IUCLC))
- SET(cflag, XCASE);
- }
-
- t->c_iflag = iflag;
- t->c_oflag = oflag;
- t->c_lflag = lflag;
- t->c_cflag = cflag;
-}
-#endif /* COMPAT_OLDTTY */
diff --git a/sys/conf/files b/sys/conf/files
index 7284beac2ab..5d0bd09dece 100644
--- a/sys/conf/files
+++ b/sys/conf/files
@@ -1,4 +1,4 @@
-# $OpenBSD: files,v 1.562 2013/11/11 09:15:34 mpi Exp $
+# $OpenBSD: files,v 1.563 2013/12/13 19:55:12 naddy Exp $
# $NetBSD: files,v 1.87 1996/05/19 17:17:50 jonathan Exp $
# @(#)files.newconf 7.5 (Berkeley) 5/10/93
@@ -999,7 +999,6 @@ file net/pfkeyv2_convert.c key | ipsec | tcp_signature
# COMPAT_* support code (base and other shared code)
file compat/common/compat_util.c !small_kernel
file compat/common/compat_dir.c !small_kernel & compat_linux
-file compat/common/tty_43.c compat_43
# libx86emu
file dev/x86emu/x86emu.c x86emu
diff --git a/sys/ddb/db_structinfo.c b/sys/ddb/db_structinfo.c
index e0f9b06199c..13fc16dedb8 100644
--- a/sys/ddb/db_structinfo.c
+++ b/sys/ddb/db_structinfo.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: db_structinfo.c,v 1.6 2013/03/15 09:10:52 ratchov Exp $ */
+/* $OpenBSD: db_structinfo.c,v 1.7 2013/12/13 19:55:12 naddy Exp $ */
/* public domain */
/*
* This file is intended to be compiled with debug information,
@@ -80,7 +80,6 @@
#include <sys/tprintf.h>
#include <sys/tree.h>
#include <sys/tty.h>
-#include <sys/ttydev.h>
#include <sys/ucred.h>
#include <sys/uio.h>
#include <sys/un.h>
diff --git a/sys/kern/tty.c b/sys/kern/tty.c
index 8248643322b..d46d29a1a7b 100644
--- a/sys/kern/tty.c
+++ b/sys/kern/tty.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: tty.c,v 1.102 2013/10/11 12:44:12 millert Exp $ */
+/* $OpenBSD: tty.c,v 1.103 2013/12/13 19:55:12 naddy Exp $ */
/* $NetBSD: tty.c,v 1.68.4.2 1996/06/06 16:04:52 thorpej Exp $ */
/*-
@@ -183,9 +183,6 @@ ttyopen(dev_t device, struct tty *tp, struct proc *p)
SET(tp->t_state, TS_ISOPEN);
bzero(&tp->t_winsize, sizeof(tp->t_winsize));
tp->t_column = 0;
-#ifdef COMPAT_OLDTTY
- tp->t_flags = 0;
-#endif
}
CLR(tp->t_state, TS_WOPEN);
splx(s);
@@ -740,16 +737,6 @@ ttioctl(struct tty *tp, u_long cmd, caddr_t data, int flag, struct proc *p)
case TIOCSTAT:
case TIOCSTI:
case TIOCSWINSZ:
-#ifdef COMPAT_OLDTTY
- case TIOCLBIC:
- case TIOCLBIS:
- case TIOCLSET:
- case TIOCSETC:
- case OTIOCSETD:
- case TIOCSETN:
- case TIOCSETP:
- case TIOCSLTC:
-#endif
while (isbackground(pr, tp) &&
(pr->ps_flags & PS_PPWAIT) == 0 &&
(p->p_sigacts->ps_sigignore & sigmask(SIGTTOU)) == 0 &&
@@ -1041,11 +1028,7 @@ ttioctl(struct tty *tp, u_long cmd, caddr_t data, int flag, struct proc *p)
break;
}
default:
-#ifdef COMPAT_OLDTTY
- return (ttcompat(tp, cmd, data, flag, p));
-#else
return (-1);
-#endif
}
return (0);
}
diff --git a/sys/kern/tty_conf.c b/sys/kern/tty_conf.c
index 2b88bb4521c..f63ef7e6d2d 100644
--- a/sys/kern/tty_conf.c
+++ b/sys/kern/tty_conf.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: tty_conf.c,v 1.16 2010/06/29 19:09:12 tedu Exp $ */
+/* $OpenBSD: tty_conf.c,v 1.17 2013/12/13 19:55:12 naddy Exp $ */
/* $NetBSD: tty_conf.c,v 1.18 1996/05/19 17:17:55 jonathan Exp $ */
/*-
@@ -103,8 +103,9 @@ struct linesw linesw[] =
{ ttynodisc, ttyerrclose, ttyerrio, ttyerrio, nullioctl,
ttyerrinput, ttyerrstart, nullmodem }, /* 1- defunct */
- { ttyopen, ttylclose, ttread, ttwrite, nullioctl,
- ttyinput, ttstart, ttymodem }, /* 2- old NTTYDISC */
+ /* 2- old NTTYDISC (defunct) */
+ { ttynodisc, ttyerrclose, ttyerrio, ttyerrio, nullioctl,
+ ttyerrinput, ttyerrstart, nullmodem },
/* 3- TABLDISC (defunct) */
{ ttynodisc, ttyerrclose, ttyerrio, ttyerrio, nullioctl,
diff --git a/sys/kern/tty_pty.c b/sys/kern/tty_pty.c
index 1346ef36971..2b4ba3c9155 100644
--- a/sys/kern/tty_pty.c
+++ b/sys/kern/tty_pty.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: tty_pty.c,v 1.62 2013/10/11 12:44:13 millert Exp $ */
+/* $OpenBSD: tty_pty.c,v 1.63 2013/12/13 19:55:12 naddy Exp $ */
/* $NetBSD: tty_pty.c,v 1.33.4.1 1996/06/02 09:08:11 mrg Exp $ */
/*
@@ -833,10 +833,6 @@ ptyioctl(dev_t dev, u_long cmd, caddr_t data, int flag, struct proc *p)
ttyflush(tp, FREAD|FWRITE);
return (0);
-#ifdef COMPAT_OLDTTY
- case TIOCSETP:
- case TIOCSETN:
-#endif
case TIOCSETD:
case TIOCSETA:
case TIOCSETAW:
@@ -886,15 +882,6 @@ ptyioctl(dev_t dev, u_long cmd, caddr_t data, int flag, struct proc *p)
case TIOCSETA:
case TIOCSETAW:
case TIOCSETAF:
-#ifdef COMPAT_OLDTTY
- case TIOCSETP:
- case TIOCSETN:
- case TIOCSETC:
- case TIOCSLTC:
- case TIOCLBIS:
- case TIOCLBIC:
- case TIOCLSET:
-#endif
pti->pt_send |= TIOCPKT_IOCTL;
ptcwakeup(tp, FREAD);
default:
diff --git a/sys/sys/ioctl.h b/sys/sys/ioctl.h
index 757e9d59562..a9db3153a95 100644
--- a/sys/sys/ioctl.h
+++ b/sys/sys/ioctl.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: ioctl.h,v 1.13 2011/07/04 22:53:53 tedu Exp $ */
+/* $OpenBSD: ioctl.h,v 1.14 2013/12/13 19:55:12 naddy Exp $ */
/* $NetBSD: ioctl.h,v 1.20 1996/01/30 18:21:47 thorpej Exp $ */
/*-
@@ -71,13 +71,6 @@ __END_DECLS
#endif /* !_KERNEL */
#endif /* !_SYS_IOCTL_H_ */
-/*
- * Keep outside _SYS_IOCTL_H_
- * Compatibility with old terminal driver
- *
- * Source level -> #define USE_OLD_TTY
- * Kernel level -> options COMPAT_43 or ...
- */
-#if defined(USE_OLD_TTY) || defined(COMPAT_43) || defined(COMPAT_LINUX)
+#if defined(COMPAT_LINUX)
#include <sys/ioctl_compat.h>
#endif
diff --git a/sys/sys/ioctl_compat.h b/sys/sys/ioctl_compat.h
index 7eccaacd993..7534b9ca9eb 100644
--- a/sys/sys/ioctl_compat.h
+++ b/sys/sys/ioctl_compat.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: ioctl_compat.h,v 1.4 2003/06/02 23:28:21 millert Exp $ */
+/* $OpenBSD: ioctl_compat.h,v 1.5 2013/12/13 19:55:12 naddy Exp $ */
/* $NetBSD: ioctl_compat.h,v 1.10 1995/03/31 03:10:15 christos Exp $ */
/*
@@ -40,131 +40,6 @@
#ifndef _SYS_IOCTL_COMPAT_H_
#define _SYS_IOCTL_COMPAT_H_
-#include <sys/ttychars.h>
-#include <sys/ttydev.h>
-
-struct tchars {
- char t_intrc; /* interrupt */
- char t_quitc; /* quit */
- char t_startc; /* start output */
- char t_stopc; /* stop output */
- char t_eofc; /* end-of-file */
- char t_brkc; /* input delimiter (like nl) */
-};
-
-struct ltchars {
- char t_suspc; /* stop process signal */
- char t_dsuspc; /* delayed stop process signal */
- char t_rprntc; /* reprint line */
- char t_flushc; /* flush output (toggles) */
- char t_werasc; /* word erase */
- char t_lnextc; /* literal next character */
-};
-
-/*
- * Structure for TIOCGETP and TIOCSETP ioctls.
- */
-#ifndef _SGTTYB_
-#define _SGTTYB_
-struct sgttyb {
- char sg_ispeed; /* input speed */
- char sg_ospeed; /* output speed */
- char sg_erase; /* erase character */
- char sg_kill; /* kill character */
- short sg_flags; /* mode flags */
-};
-#endif
-
-#ifdef USE_OLD_TTY
-# undef TIOCGETD
-# define TIOCGETD _IOR('t', 0, int) /* get line discipline */
-# undef TIOCSETD
-# define TIOCSETD _IOW('t', 1, int) /* set line discipline */
-#else
-# define OTIOCGETD _IOR('t', 0, int) /* get line discipline */
-# define OTIOCSETD _IOW('t', 1, int) /* set line discipline */
-#endif
-#define TIOCHPCL _IO('t', 2) /* hang up on last close */
-#define TIOCGETP _IOR('t', 8,struct sgttyb)/* get parameters -- gtty */
-#define TIOCSETP _IOW('t', 9,struct sgttyb)/* set parameters -- stty */
-#define TIOCSETN _IOW('t',10,struct sgttyb)/* as above, but no flushtty*/
-#define TIOCSETC _IOW('t',17,struct tchars)/* set special characters */
-#define TIOCGETC _IOR('t',18,struct tchars)/* get special characters */
-#define TANDEM 0x00000001 /* send stopc on out q full */
-#define CBREAK 0x00000002 /* half-cooked mode */
-#define LCASE 0x00000004 /* simulate lower case */
-#define ECHO 0x00000008 /* echo input */
-#define CRMOD 0x00000010 /* map \r to \r\n on output */
-#define RAW 0x00000020 /* no i/o processing */
-#define ODDP 0x00000040 /* get/send odd parity */
-#define EVENP 0x00000080 /* get/send even parity */
-#define ANYP 0x000000c0 /* get any parity/send none */
-#define NLDELAY 0x00000300 /* \n delay */
-#define NL0 0x00000000
-#define NL1 0x00000100 /* tty 37 */
-#define NL2 0x00000200 /* vt05 */
-#define NL3 0x00000300
-#define TBDELAY 0x00000c00 /* horizontal tab delay */
-#define TAB0 0x00000000
-#define TAB1 0x00000400 /* tty 37 */
-#define TAB2 0x00000800
-#define XTABS 0x00000c00 /* expand tabs on output */
-#define CRDELAY 0x00003000 /* \r delay */
-#define CR0 0x00000000
-#define CR1 0x00001000 /* tn 300 */
-#define CR2 0x00002000 /* tty 37 */
-#define CR3 0x00003000 /* concept 100 */
-#define VTDELAY 0x00004000 /* vertical tab delay */
-#define FF0 0x00000000
-#define FF1 0x00004000 /* tty 37 */
-#define BSDELAY 0x00008000 /* \b delay */
-#define BS0 0x00000000
-#define BS1 0x00008000
-#define ALLDELAY (NLDELAY|TBDELAY|CRDELAY|VTDELAY|BSDELAY)
-#define CRTBS 0x00010000 /* do backspacing for crt */
-#define PRTERA 0x00020000 /* \ ... / erase */
-#define CRTERA 0x00040000 /* " \b " to wipe out char */
-#define TILDE 0x00080000 /* hazeltine tilde kludge */
-#define MDMBUF 0x00100000 /*start/stop output on carrier*/
-#define LITOUT 0x00200000 /* literal output */
-#define TOSTOP 0x00400000 /*SIGSTOP on background output*/
-#define FLUSHO 0x00800000 /* flush output to terminal */
-#define NOHANG 0x01000000 /* (no-op) was no SIGHUP on carrier drop */
-#define L001000 0x02000000
-#define CRTKIL 0x04000000 /* kill line with " \b " */
-#define PASS8 0x08000000
-#define CTLECH 0x10000000 /* echo control chars as ^X */
-#define PENDIN 0x20000000 /* tp->t_rawq needs reread */
-#define DECCTQ 0x40000000 /* only ^Q starts after ^S */
-#define NOFLSH 0x80000000 /* no output flush on signal */
-#define TIOCLBIS _IOW('t', 127, int) /* bis local mode bits */
-#define TIOCLBIC _IOW('t', 126, int) /* bic local mode bits */
-#define TIOCLSET _IOW('t', 125, int) /* set entire local mode word */
-#define TIOCLGET _IOR('t', 124, int) /* get local modes */
-#define LCRTBS (CRTBS>>16)
-#define LPRTERA (PRTERA>>16)
-#define LCRTERA (CRTERA>>16)
-#define LTILDE (TILDE>>16)
-#define LMDMBUF (MDMBUF>>16)
-#define LLITOUT (LITOUT>>16)
-#define LTOSTOP (TOSTOP>>16)
-#define LFLUSHO (FLUSHO>>16)
-#define LNOHANG (NOHANG>>16)
-#define LCRTKIL (CRTKIL>>16)
-#define LPASS8 (PASS8>>16)
-#define LCTLECH (CTLECH>>16)
-#define LPENDIN (PENDIN>>16)
-#define LDECCTQ (DECCTQ>>16)
-#define LNOFLSH (NOFLSH>>16)
-#define TIOCSLTC _IOW('t',117,struct ltchars)/* set local special chars*/
-#define TIOCGLTC _IOR('t',116,struct ltchars)/* get local special chars*/
-#define OTIOCCONS _IO('t', 98) /* for hp300 -- sans int arg */
-#define OTTYDISC 0
-#define NETLDISC 1
-#define NTTYDISC 2
-
-#define TIOCGSID _IOR('t', 99, int) /* For svr4 -- get session id */
-
/*
* Passthrough ioctl commands. These are passed through to devices
* as they are, it is expected that the device (an LKM, for example),
diff --git a/sys/sys/tty.h b/sys/sys/tty.h
index c8d5e378737..6655ab0065c 100644
--- a/sys/sys/tty.h
+++ b/sys/sys/tty.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: tty.h,v 1.32 2013/01/17 21:24:58 deraadt Exp $ */
+/* $OpenBSD: tty.h,v 1.33 2013/12/13 19:55:12 naddy Exp $ */
/* $NetBSD: tty.h,v 1.30.4.1 1996/06/02 09:08:13 mrg Exp $ */
/*-
@@ -308,9 +308,4 @@ int cttypoll(dev_t, int, struct proc *);
void clalloc(struct clist *, int, int);
void clfree(struct clist *);
-#if defined(COMPAT_43)
-# define COMPAT_OLDTTY
-int ttcompat(struct tty *, u_long, caddr_t, int, struct proc *);
-#endif
-
#endif
diff --git a/sys/sys/ttychars.h b/sys/sys/ttychars.h
deleted file mode 100644
index 297e4033078..00000000000
--- a/sys/sys/ttychars.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/* $OpenBSD: ttychars.h,v 1.3 2003/06/02 23:28:22 millert Exp $ */
-/* $NetBSD: ttychars.h,v 1.6 1994/06/29 06:45:54 cgd Exp $ */
-
-/*-
- * Copyright (c) 1982, 1986, 1990, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)ttychars.h 8.2 (Berkeley) 1/4/94
- */
-
-/*
- * 4.3 COMPATIBILITY FILE
- *
- * User visible structures and constants related to terminal handling.
- */
-#ifndef _SYS_TTYCHARS_H_
-#define _SYS_TTYCHARS_H_
-
-struct ttychars {
- char tc_erase; /* erase last character */
- char tc_kill; /* erase entire line */
- char tc_intrc; /* interrupt */
- char tc_quitc; /* quit */
- char tc_startc; /* start output */
- char tc_stopc; /* stop output */
- char tc_eofc; /* end-of-file */
- char tc_brkc; /* input delimiter (like nl) */
- char tc_suspc; /* stop process signal */
- char tc_dsuspc; /* delayed stop process signal */
- char tc_rprntc; /* reprint line */
- char tc_flushc; /* flush output (toggles) */
- char tc_werasc; /* word erase */
- char tc_lnextc; /* literal next character */
-};
-#ifdef USE_OLD_TTY
-#include <sys/ttydefaults.h> /* to pick up character defaults */
-#endif
-#endif /* !_SYS_TTYCHARS_H_ */
diff --git a/sys/sys/ttydev.h b/sys/sys/ttydev.h
deleted file mode 100644
index 9d33505db20..00000000000
--- a/sys/sys/ttydev.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/* $OpenBSD: ttydev.h,v 1.4 2003/06/02 23:28:22 millert Exp $ */
-/* $NetBSD: ttydev.h,v 1.7 1994/06/29 06:45:58 cgd Exp $ */
-
-/*-
- * Copyright (c) 1982, 1986, 1990, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)ttydev.h 8.2 (Berkeley) 1/4/94
- */
-
-/* COMPATIBILITY HEADER FILE */
-
-#ifndef _SYS_TTYDEV_H_
-#define _SYS_TTYDEV_H_
-
-#ifdef USE_OLD_TTY
-#define B0 0
-#define B50 1
-#define B75 2
-#define B110 3
-#define B134 4
-#define B150 5
-#define B200 6
-#define B300 7
-#define B600 8
-#define B1200 9
-#define B1800 10
-#define B2400 11
-#define B4800 12
-#define B9600 13
-#define EXTA 14
-#define EXTB 15
-#define B57600 16
-#define B115200 17
-#endif /* USE_OLD_TTY */
-
-#endif /* !_SYS_TTYDEV_H_ */