diff mbox

[COMMITTED] Make sysdeps/posix bring in login subdir.

Message ID 20150724003333.02E102C3B93@topped-with-meat.com
State New
Headers show

Commit Message

Roland McGrath July 24, 2015, 12:33 a.m. UTC
POSIX now specifies getlogin and friends, so we should define them (even if
stubbily) for any POSIXish system, not just Unixish systems.

This affects only NaCl configurations in practice.
Verified on x86_64-linux-gnu that nothing at all changed.


Thanks,
Roland


	* sysdeps/unix/Subdirs: Moved ...
	* sysdeps/posix/Subdirs: ... here.
	* login/pty.h (struct termios, struct winsize): Add forward decls.
	* login/openpty.c (openpty): Put ioctl call under [TIOCSWINSZ].
	* sysdeps/nacl/glob.c: Just #include <sysdeps/wordsize-64/glob.c>.
	* sysdeps/arm/nacl/libc.abilist: Updated.
	* sysdeps/nacl/libutil.abilist: New file.
diff mbox

Patch

diff --git a/login/openpty.c b/login/openpty.c
index ad02f6f..c3cef7c 100644
--- a/login/openpty.c
+++ b/login/openpty.c
@@ -117,10 +117,12 @@  openpty (int *amaster, int *aslave, char *name,
     }
 
   /* XXX Should we ignore errors here?  */
-  if(termp)
+  if (termp)
     tcsetattr (slave, TCSAFLUSH, termp);
+#ifdef TIOCSWINSZ
   if (winp)
     ioctl (slave, TIOCSWINSZ, winp);
+#endif
 
   *amaster = master;
   *aslave = slave;
diff --git a/login/pty.h b/login/pty.h
index c8745d4..3c052a0 100644
--- a/login/pty.h
+++ b/login/pty.h
@@ -21,6 +21,9 @@ 
 
 #include <features.h>
 
+struct termios;
+struct winsize;
+
 #include <termios.h>
 #include <sys/ioctl.h>
 
diff --git a/sysdeps/arm/nacl/libc.abilist b/sysdeps/arm/nacl/libc.abilist
index b3d14c2..bef1259 100644
--- a/sysdeps/arm/nacl/libc.abilist
+++ b/sysdeps/arm/nacl/libc.abilist
@@ -224,6 +224,7 @@  GLIBC_2.22
  __getdomainname_chk F
  __getgroups_chk F
  __gethostname_chk F
+ __getlogin_r_chk F
  __getpagesize F
  __getpgid F
  __getpid F
@@ -348,6 +349,7 @@  GLIBC_2.22
  __profile_frequency F
  __progname D 0x4
  __progname_full D 0x4
+ __ptsname_r_chk F
  __pwrite64 F
  __rawmemchr F
  __rcmd_errstr D 0x4
@@ -680,6 +682,8 @@  GLIBC_2.22
  endspent F
  endttyent F
  endusershell F
+ endutent F
+ endutxent F
  environ D 0x4
  envz_add F
  envz_entry F
@@ -884,6 +888,8 @@  GLIBC_2.22
  getitimer F
  getline F
  getloadavg F
+ getlogin F
+ getlogin_r F
  getmntent F
  getmntent_r F
  getnameinfo F
@@ -912,6 +918,7 @@  GLIBC_2.22
  getprotobynumber_r F
  getprotoent F
  getprotoent_r F
+ getpt F
  getpw F
  getpwent F
  getpwent_r F
@@ -950,6 +957,17 @@  GLIBC_2.22
  getttynam F
  getuid F
  getusershell F
+ getutent F
+ getutent_r F
+ getutid F
+ getutid_r F
+ getutline F
+ getutline_r F
+ getutmp F
+ getutmpx F
+ getutxent F
+ getutxid F
+ getutxline F
  getw F
  getwc F
  getwc_unlocked F
@@ -966,6 +984,7 @@  GLIBC_2.22
  gmtime_r F
  gnu_get_libc_release F
  gnu_get_libc_version F
+ grantpt F
  group_member F
  gsignal F
  gtty F
@@ -1255,6 +1274,7 @@  GLIBC_2.22
  posix_fallocate64 F
  posix_madvise F
  posix_memalign F
+ posix_openpt F
  posix_spawn F
  posix_spawn_file_actions_addclose F
  posix_spawn_file_actions_adddup2 F
@@ -1322,6 +1342,8 @@  GLIBC_2.22
  pthread_setcanceltype F
  pthread_setschedparam F
  ptrace F
+ ptsname F
+ ptsname_r F
  putc F
  putc_unlocked F
  putchar F
@@ -1332,6 +1354,8 @@  GLIBC_2.22
  puts F
  putsgent F
  putspent F
+ pututline F
+ pututxline F
  putw F
  putwc F
  putwc_unlocked F
@@ -1466,6 +1490,7 @@  GLIBC_2.22
  setjmp F
  setlinebuf F
  setlocale F
+ setlogin F
  setlogmask F
  setmntent F
  setnetent F
@@ -1493,6 +1518,8 @@  GLIBC_2.22
  setttyent F
  setuid F
  setusershell F
+ setutent F
+ setutxent F
  setvbuf F
  setxattr F
  sgetsgent F
@@ -1690,13 +1717,18 @@  GLIBC_2.22
  ungetwc F
  unlink F
  unlinkat F
+ unlockpt F
  unsetenv F
+ updwtmp F
+ updwtmpx F
  uselocale F
  usleep F
  ustat F
  utime F
  utimensat F
  utimes F
+ utmpname F
+ utmpxname F
  valloc F
  vasprintf F
  vdprintf F
diff --git a/sysdeps/nacl/glob.c b/sysdeps/nacl/glob.c
index eda6e9e..be2ee03 100644
--- a/sysdeps/nacl/glob.c
+++ b/sysdeps/nacl/glob.c
@@ -1,26 +1,2 @@ 
-/* Do glob searching.  NaCl version.
-   Copyright (C) 2015 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <unistd.h>			/* Declares __getlogin_r.  */
-
-/* We do not have getlogin_r in the library at all for NaCl.
-   Define it away so the glob code does not try to use it.  */
-#define __getlogin_r(name, len)		(ENOSYS)
-
 /* Fetch the version that defines glob64 as an alias.  */
 #include <sysdeps/wordsize-64/glob.c>
diff --git a/sysdeps/nacl/libutil.abilist b/sysdeps/nacl/libutil.abilist
new file mode 100644
index 0000000..13bc927
--- /dev/null
+++ b/sysdeps/nacl/libutil.abilist
@@ -0,0 +1,8 @@ 
+GLIBC_2.22
+ GLIBC_2.22 A
+ forkpty F
+ login F
+ login_tty F
+ logout F
+ logwtmp F
+ openpty F
diff --git a/sysdeps/unix/Subdirs b/sysdeps/posix/Subdirs
similarity index 100%
rename from sysdeps/unix/Subdirs
rename to sysdeps/posix/Subdirs