From 88b69f52ee074783e019b5ab2ba0c63e8a3fd2e7 Mon Sep 17 00:00:00 2001 From: Ed Schouten Date: Thu, 14 Jan 2010 05:35:32 +0000 Subject: [PATCH] Phase out ttyslot(3). The ttyslot() function was originally part for SUSv1, marked LEGACY in SUSv2 and removed later on. This function only makes sense when using utmp(5), because it was used to determine the offset of the record for the controlling TTY. It makes little sense to keep it here, because the new utmpx file format doesn't index based on TTY slots. --- ObsoleteFiles.inc | 2 ++ include/unistd.h | 1 - lib/libc/gen/Symbol.map | 1 - lib/libc/gen/ttyname.3 | 23 +++-------------------- lib/libc/gen/ttyslot.c | 4 +++- libexec/getty/ttys.5 | 1 - 6 files changed, 8 insertions(+), 24 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 008b15e8063a..5dc0e3e5910f 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -14,6 +14,8 @@ # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last. # +# 20100114: removal of ttyslot(3) +OLD_FILES+=usr/share/man/man3/ttyslot.3.gz # 20100113: remove utmp.h, replace it by utmpx.h OLD_FILES+=usr/share/man/man3/login.3.gz OLD_FILES+=usr/share/man/man3/logout.3.gz diff --git a/include/unistd.h b/include/unistd.h index b4b7516bc6ac..5ac79718de90 100644 --- a/include/unistd.h +++ b/include/unistd.h @@ -574,7 +574,6 @@ int swapon(const char *); int swapoff(const char *); int syscall(int, ...); off_t __syscall(quad_t, ...); -int ttyslot(void); int undelete(const char *); int unwhiteout(const char *); void *valloc(size_t); /* obsoleted by malloc() */ diff --git a/lib/libc/gen/Symbol.map b/lib/libc/gen/Symbol.map index 534c81acffd4..42404bcc277c 100644 --- a/lib/libc/gen/Symbol.map +++ b/lib/libc/gen/Symbol.map @@ -272,7 +272,6 @@ FBSD_1.0 { openlog; closelog; setlogmask; - ttyslot; ttyname_r; ttyname; timezone; diff --git a/lib/libc/gen/ttyname.3 b/lib/libc/gen/ttyname.3 index c7b8cbcd3c84..e58383331eac 100644 --- a/lib/libc/gen/ttyname.3 +++ b/lib/libc/gen/ttyname.3 @@ -34,8 +34,7 @@ .Sh NAME .Nm ttyname , .Nm ttyname_r , -.Nm isatty , -.Nm ttyslot +.Nm isatty .Nd get name of associated terminal (tty) from file descriptor .Sh LIBRARY .Lb libc @@ -47,8 +46,6 @@ .Fn ttyname_r "int fd" "char *buf" "size_t len" .Ft int .Fn isatty "int fd" -.Ft int -.Fn ttyslot void .Sh DESCRIPTION These functions operate on the system file descriptors for terminal type devices. @@ -89,13 +86,6 @@ The .Fn ttyname_r function takes a buffer and length as arguments to avoid this problem. -.Pp -The -.Fn ttyslot -function -fetches the current process' control terminal number from the -.Xr ttys 5 -file entry. .Sh RETURN VALUES The .Fn ttyname @@ -110,12 +100,6 @@ The .Fn ttyname_r function returns 0 if successful. Otherwise an error number is returned. -.Pp -The -.Fn ttyslot -function -returns the unit number of the device file if found; otherwise -the value zero is returned. .Sh FILES .Bl -tag -width ".Pa /etc/ttys" -compact .It Pa /dev/\(** @@ -142,10 +126,9 @@ is smaller than the length of the string to be returned. .Xr ttys 5 .Sh HISTORY The -.Fn isatty , -.Fn ttyname , +.Fn isatty and -.Fn ttyslot +.Fn ttyname functions appeared in .At v7 . diff --git a/lib/libc/gen/ttyslot.c b/lib/libc/gen/ttyslot.c index 31cc15621f33..b2fac7c0aef4 100644 --- a/lib/libc/gen/ttyslot.c +++ b/lib/libc/gen/ttyslot.c @@ -40,7 +40,7 @@ __FBSDID("$FreeBSD$"); #include int -ttyslot() +__ttyslot(void) { struct ttyent *ttyp; int slot; @@ -63,3 +63,5 @@ ttyslot() endttyent(); return(0); } + +__sym_compat(ttyslot, __ttyslot, FBSD_1.0); diff --git a/libexec/getty/ttys.5 b/libexec/getty/ttys.5 index cf2423a9320d..18151c9855fe 100644 --- a/libexec/getty/ttys.5 +++ b/libexec/getty/ttys.5 @@ -158,7 +158,6 @@ ttyp1 none network off group=pty .Sh SEE ALSO .Xr login 1 , .Xr getttyent 3 , -.Xr ttyslot 3 , .Xr gettytab 5 , .Xr login.conf 5 , .Xr termcap 5 ,