X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/5d586e81f900ac377d7f9b2ad0b4f2909fa70844..063b2136e14f9cd49afb94850daf96846958ccde:/usr/src/sys/kern/tty_conf.c diff --git a/usr/src/sys/kern/tty_conf.c b/usr/src/sys/kern/tty_conf.c index e90d1e91ff..a1a1d10882 100644 --- a/usr/src/sys/kern/tty_conf.c +++ b/usr/src/sys/kern/tty_conf.c @@ -1,53 +1,83 @@ -/* - * Copyright (c) 1982 Regents of the University of California. - * All rights reserved. The Berkeley software License Agreement - * specifies the terms and conditions for redistribution. +/*- + * Copyright (c) 1982, 1986, 1991 The Regents of the University of California. + * All rights reserved. + * + * %sccs.include.redist.c% * - * @(#)tty_conf.c 6.8 (Berkeley) %G% + * @(#)tty_conf.c 7.8 (Berkeley) %G% */ #include "param.h" #include "systm.h" #include "buf.h" #include "ioctl.h" +#include "proc.h" #include "tty.h" #include "conf.h" -int nodev(); -int nulldev(); +#define ttynodisc ((int (*) __P((dev_t, struct tty *)))enodev) +#define ttyerrclose ((int (*) __P((struct tty *, int flags)))enodev) +#define ttyerrio ((int (*) __P((struct tty *, struct uio *, int)))enodev) +#define ttyerrinput ((int (*) __P((int c, struct tty *)))enodev) +#define ttyerrstart ((int (*) __P((struct tty *)))enodev) -int ttyopen(),ttylclose(),ttread(),ttwrite(),nullioctl(),ttstart(); -int ttymodem(), nullmodem(), ttyinput(); - -#include "bk.h" -#if NBK > 0 -int bkopen(),bkclose(),bkread(),bkinput(),bkioctl(); -#endif +int ttyopen __P((dev_t dev, struct tty *tp)); +int ttylclose __P((struct tty *tp, int flags)); +int ttread __P((struct tty *, struct uio *, int flags)); +int ttwrite __P((struct tty *, struct uio *, int flags)); +int nullioctl __P((struct tty *tp, int cmd, caddr_t data, + int flag, struct proc *p)); +int ttyinput __P((int c, struct tty *tp)); +int ttstart __P((struct tty *tp)); +int ttymodem __P((struct tty *tp, int flags)); +int nullmodem __P((struct tty *tp, int flags)); #include "tb.h" #if NTB > 0 -int tbopen(),tbclose(),tbread(),tbinput(),tbioctl(); +int tbopen __P((dev_t dev, struct tty *tp)); +int tbclose __P((struct tty *tp, int flags)); +int tbread __P((struct tty *, struct uio *, int flags)); +int tbioctl __P((struct tty *tp, int cmd, caddr_t data, + int flag, struct proc *p)); +int tbinput __P((int c, struct tty *tp)); #endif +#include "sl.h" +#if NSL > 0 +int slopen __P((dev_t dev, struct tty *tp)); +int slclose __P((struct tty *tp, int flags)); +int sltioctl __P((struct tty *tp, int cmd, caddr_t data, + int flag, struct proc *p)); +int slinput __P((int c, struct tty *tp)); +int slstart __P((struct tty *tp)); +#endif + + struct linesw linesw[] = { ttyopen, ttylclose, ttread, ttwrite, nullioctl, - ttyinput, nodev, nulldev, ttstart, ttymodem, -#if NBK > 0 - bkopen, bkclose, bkread, ttwrite, bkioctl, - bkinput, nodev, nulldev, ttstart, nullmodem, + ttyinput, ttstart, ttymodem, /* 0- termios */ + + ttynodisc, ttyerrclose, ttyerrio, ttyerrio, nullioctl, + ttyerrinput, ttyerrstart, nullmodem, /* 1- defunct */ + + ttynodisc, ttyerrclose, ttyerrio, ttyerrio, nullioctl, + ttyerrinput, ttyerrstart, nullmodem, /* 2- defunct */ + +#if NTB > 0 + tbopen, tbclose, tbread, enodev, tbioctl, + tbinput, ttstart, nullmodem, /* 3- TABLDISC */ #else - nodev, nodev, nodev, nodev, nodev, - nodev, nodev, nodev, nodev, nodev, + ttynodisc, ttyerrclose, ttyerrio, ttyerrio, nullioctl, + ttyerrinput, ttyerrstart, nullmodem, #endif - ttyopen, ttylclose, ttread, ttwrite, nullioctl, - ttyinput, nodev, nulldev, ttstart, ttymodem, -#if NTB > 0 - tbopen, tbclose, tbread, nodev, tbioctl, - tbinput, nodev, nulldev, ttstart, nullmodem, /* 3 */ + +#if NSL > 0 + slopen, slclose, ttyerrio, ttyerrio, sltioctl, + slinput, slstart, nullmodem, /* 4- SLIPDISC */ #else - nodev, nodev, nodev, nodev, nodev, - nodev, nodev, nodev, nodev, nodev, + ttynodisc, ttyerrclose, ttyerrio, ttyerrio, nullioctl, + ttyerrinput, ttyerrstart, nullmodem, #endif }; @@ -58,14 +88,16 @@ int nldisp = sizeof (linesw) / sizeof (linesw[0]); * discipline specific ioctl command. */ /*ARGSUSED*/ -nullioctl(tp, cmd, data, flags) +nullioctl(tp, cmd, data, flags, p) struct tty *tp; + int cmd; char *data; int flags; + struct proc *p; { #ifdef lint - tp = tp; data = data; flags = flags; + tp = tp; data = data; flags = flags; p = p; #endif return (-1); }