aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2021-06-30 07:21:14 +0200
committerFlorian Weimer <fweimer@redhat.com>2021-06-30 08:43:37 +0200
commit734c60ebb607086ad6d67b2544d6b7baba72a652 (patch)
tree3d0480b60b81da20b51df998f6585feeb85a8d14
parent98164ba55d01dfe517a71cbc5538ff1f5dc563d6 (diff)
downloadglibc-734c60ebb607086ad6d67b2544d6b7baba72a652.tar.xz
glibc-734c60ebb607086ad6d67b2544d6b7baba72a652.zip
login: Move libutil into libc
The symbols forkpty, login, login_tty, logout, logwtmp, openpty were moved using scripts/move-symbol-to-libc.py. This is a single commit because most of the symbols are tied together via forkpty, for example. Several changes to use hidden prototypes are needed. This commit also updates pseudoterminal terminology on modified lines. For 390 (31-bit), this commit follows the existing style for the compat symbol version creation. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
-rw-r--r--include/pty.h3
-rw-r--r--include/utmp.h5
-rw-r--r--login/Makefile15
-rw-r--r--login/Versions19
-rw-r--r--login/forkpty.c29
-rw-r--r--login/libutil-compat.c33
-rw-r--r--login/login.c22
-rw-r--r--login/login_tty.c32
-rw-r--r--login/logout.c19
-rw-r--r--login/logwtmp.c12
-rw-r--r--login/openpty.c59
-rw-r--r--sysdeps/mach/hurd/i386/libc.abilist12
-rw-r--r--sysdeps/mach/hurd/i386/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/alpha/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/alpha/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/arc/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/arc/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/arm/be/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/arm/be/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/arm/le/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/arm/le/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/csky/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/csky/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/hppa/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/hppa/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/i386/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/i386/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/ia64/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/ia64/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/m68k/coldfire/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/m68k/m680x0/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/be/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/be/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/le/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/le/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips32/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/nios2/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/nios2/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv32/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv64/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/Makefile3
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/Versions3
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist13
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/libutil-compat.c23
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/libutil.abilist9
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/login.c11
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/login32.c12
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/sh/be/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/sh/be/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/sh/le/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/sh/le/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/64/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/64/libutil.abilist7
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist12
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/x32/libutil.abilist7
79 files changed, 640 insertions, 269 deletions
diff --git a/include/pty.h b/include/pty.h
index 4979bb765f..93335fe3b6 100644
--- a/include/pty.h
+++ b/include/pty.h
@@ -3,7 +3,8 @@
# ifndef _ISOMAC
-libutil_hidden_proto (openpty)
+libc_hidden_proto (forkpty)
+libc_hidden_proto (openpty)
# endif /* !_ISOMAC */
#endif
diff --git a/include/utmp.h b/include/utmp.h
index e8162bd08d..b7921e5fb8 100644
--- a/include/utmp.h
+++ b/include/utmp.h
@@ -29,7 +29,10 @@ extern int __getutline_r (const struct utmp *__line,
struct utmp *__buffer, struct utmp **__result);
libc_hidden_proto (__getutline_r)
-libutil_hidden_proto (login_tty)
+libc_hidden_proto (login)
+libc_hidden_proto (login_tty)
+libc_hidden_proto (logout)
+libc_hidden_proto (logwtmp)
# endif /* !_ISOMAC */
#endif
diff --git a/login/Makefile b/login/Makefile
index bc72e6e5b4..4e6b97734d 100644
--- a/login/Makefile
+++ b/login/Makefile
@@ -28,7 +28,7 @@ headers := utmp.h bits/utmp.h lastlog.h pty.h
routines := getlogin getlogin_r setlogin getlogin_r_chk \
getutent getutent_r getutid getutline getutid_r getutline_r \
utmp_file utmpname updwtmp getpt grantpt unlockpt ptsname \
- ptsname_r_chk
+ ptsname_r_chk login login_tty logout logwtmp openpty forkpty
CFLAGS-grantpt.c += -DLIBEXECDIR='"$(libexecdir)"'
@@ -46,11 +46,18 @@ vpath %.c programs
tests := tst-utmp tst-utmpx tst-grantpt tst-ptsname tst-getlogin tst-updwtmpx \
tst-pututxline-lockfail tst-pututxline-cache
-# Build the -lutil library with these extra functions.
+ifeq ($(have-GLIBC_2.33),yes)
+# Empty compatibility library for old binaries.
extra-libs := libutil
extra-libs-others := $(extra-libs)
-
-libutil-routines:= login login_tty logout logwtmp openpty forkpty
+libutil-routines := libutil-compat
+libutil-shared-only-routines := libutil-compat
+
+# Pretend that libutil.so is a linker script, so that the symbolic
+# link is not installed.
+install-lib-ldscripts = libutil.so
+$(inst_libdir)/libutil.so:
+endif # $(have-GLIBC_2.33)
include ../Rules
diff --git a/login/Versions b/login/Versions
index 475fcf063f..b1ccf86f4d 100644
--- a/