summaryrefslogtreecommitdiffstats
path: root/sys/kern
diff options
context:
space:
mode:
authordavidxu <davidxu@FreeBSD.org>2008-04-15 08:33:32 +0000
committerdavidxu <davidxu@FreeBSD.org>2008-04-15 08:33:32 +0000
commita19eeb1bb90be407b05f596feb555c76224c1e2b (patch)
tree437a345c58351750a20a52bed0bde3fe8b3c2678 /sys/kern
parentc25466ababd0aab3cbbb2d2aed863d6dcf836055 (diff)
downloadFreeBSD-src-a19eeb1bb90be407b05f596feb555c76224c1e2b.zip
FreeBSD-src-a19eeb1bb90be407b05f596feb555c76224c1e2b.tar.gz
Implement POSIX function tcgetsid() which returns session id.
PR: stand/107561
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/tty.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/kern/tty.c b/sys/kern/tty.c
index 076a35c..97fc0cc 100644
--- a/sys/kern/tty.c
+++ b/sys/kern/tty.c
@@ -1010,6 +1010,11 @@ ttioctl(struct tty *tp, u_long cmd, void *data, int flag)
return (ENOTTY);
*(int *)data = tp->t_pgrp ? tp->t_pgrp->pg_id : NO_PID;
break;
+ case TIOCGSID: /* get sid of tty */
+ if (!isctty(p, tp))
+ return (ENOTTY);
+ *(int *)data = tp->t_session->s_sid;
+ break;
#ifdef TIOCHPCL
case TIOCHPCL: /* hang up on last close */
s = spltty();
OpenPOWER on IntegriCloud