summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2008-01-18 18:07:04 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2008-01-18 18:07:04 +0000
commit81aa963bc78a1b8275f73ab9ff7edefa50108109 (patch)
tree4a9d8f90423ea0163a64c8a9fd0d7d5909624d38
parentaf3e1b9f2277a126fee0ea22ff4bd6e4387eba2f (diff)
Notes
-rw-r--r--sys/kern/tty_pty.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/kern/tty_pty.c b/sys/kern/tty_pty.c
index ebb4eb41e7d2..6a7cfdbac2e7 100644
--- a/sys/kern/tty_pty.c
+++ b/sys/kern/tty_pty.c
@@ -160,6 +160,8 @@ static void
pty_create_slave(struct ucred *cred, struct ptsc *pt, int n)
{
+ KASSERT(n >= 0 && n / 32 < sizeof(names),
+ ("pty_create_slave: n %d ptsc %p", n, pt));
pt->devs = make_dev_cred(&pts_cdevsw, n, cred, UID_ROOT, GID_WHEEL,
0666, "tty%c%r", names[n / 32], n % 32);
pt->devs->si_drv1 = pt;
@@ -350,7 +352,7 @@ ptcopen(struct cdev *dev, int flag, int devtype, struct thread *td)
pt->pt_ucntl = 0;
if (!pt->devs)
- pty_create_slave(td->td_ucred, pt, minor(dev));
+ pty_create_slave(td->td_ucred, pt, minor2unit(minor(dev)));
pt->pt_devc_open = 1;
return (0);