This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Some more PLT entries, vwarn fix


Hi!

11 more PLT bypasses, cleanup for fstat/lstat and bugfix for vwarn.
Built and tested on IA-32 (other arches need to wait till tomorrow).

2002-08-13  Jakub Jelinek  <jakub@redhat.com>

	* include/unistd.h (seteuid, setegid): Add
	libc_hidden_proto.
	* sysdeps/generic/seteuid.c (seteuid): Add libc_hidden_def.
	* sysdeps/generic/setegid.c (setegid): Likewise.
	* sysdeps/mach/hurd/seteuid.c (seteuid): Likewise.
	* sysdeps/mach/hurd/setegid.c (setegid): Likewise.
	* sysdeps/unix/bsd/seteuid.c (seteuid): Likewise.
	* sysdeps/unix/bsd/setegid.c (setegid): Likewise.
	* sysdeps/unix/sysv/aix/seteuid.c (seteuid): Likewise.
	* sysdeps/unix/sysv/aix/setegid.c (setegid): Likewise.
	* sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c (seteuid): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Likewise.
	* sysdeps/unix/sysv/linux/seteuid.c (seteuid): Likewise.
	* sysdeps/unix/sysv/linux/setegid.c (setegid): Likewise.
	* sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Likewise.
	Remove fallback if __ASSUME_SETRESUID_SYSCALL.

	* include/sys/stat.h (__fxstat_internal, __fxstat64_internal,
	__lxstat_internal, __lxstat64_internal): Remove.
	(__fxstat, __fxstat64, __lxstat, __lxstat64, __xstat, __xstat64):
	Add hidden_proto.
	* sysdeps/generic/fxstat.c (__fxstat): Add hidden_def.
	Remove INTDEF where present, remove #undef at the beginning.
	* sysdeps/generic/fxstat64.c (__fxstat64): Likewise.
	* sysdeps/generic/lxstat.c (__lxstat): Likewise.
	* sysdeps/generic/lxstat64.c (__lxstat64): Likewise.
	* sysdeps/generic/xstat.c (__xstat): Likewise.
	* sysdeps/generic/xstat64.c (__xstat64): Likewise.
	* sysdeps/mach/hurd/dl-sysdep.c (__xstat64, __fxstat64): Likewise.
	* sysdeps/mach/hurd/fxstat.c (__fxstat): Likewise.
	* sysdeps/mach/hurd/fxstat64.c (__fxstat64): Likewise.
	* sysdeps/mach/hurd/lxstat.c (__lxstat): Likewise.
	* sysdeps/mach/hurd/lxstat64.c (__lxstat64): Likewise.
	* sysdeps/mach/hurd/xstat.c (__xstat): Likewise.
	* sysdeps/mach/hurd/xstat64.c (__xstat64): Likewise.
	* sysdeps/unix/fxstat.c (__fxstat): Likewise.
	* sysdeps/unix/common/lxstat.c (__lxstat): Likewise.
	* sysdeps/unix/sysv/aix/fxstat.c (__fxstat): Likewise.
	* sysdeps/unix/sysv/aix/fxstat64.c (__fxstat64): Likewise.
	* sysdeps/unix/sysv/aix/lxstat.c (__lxstat): Likewise.
	* sysdeps/unix/sysv/aix/lxstat64.c (__lxstat64): Likewise.
	* sysdeps/unix/sysv/aix/xstat.c (__xstat): Likewise.
	* sysdeps/unix/sysv/aix/xstat64.c (__xstat64): Likewise.
	* sysdeps/unix/sysv/linux/ia64/fxstat.c (__fxstat): Likewise.
	* sysdeps/unix/sysv/linux/ia64/lxstat.c (__lxstat): Likewise.
	* sysdeps/unix/sysv/linux/ia64/xstat.c (__xstat): Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c (__fxstat): Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c (__lxstat): Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/xstat.c (__xstat): Likewise.
	* sysdeps/unix/sysv/linux/i386/fxstat.c (__fxstat): Likewise.
	* sysdeps/unix/sysv/linux/i386/lxstat.c (__lxstat): Likewise.
	* sysdeps/unix/sysv/linux/i386/xstat.c (__xstat): Likewise.
	* sysdeps/unix/sysv/linux/xstat.c (__xstat): Likewise.
	* sysdeps/unix/sysv/linux/xstat64.c (__xstat64): Likewise.
	* sysdeps/unix/sysv/linux/fxstat.c (__fxstat): Likewise.
	* sysdeps/unix/sysv/linux/fxstat64.c (__fxstat64): Likewise.
	* sysdeps/unix/sysv/linux/lxstat.c (__lxstat): Likewise.
	* sysdeps/unix/sysv/linux/lxstat64.c (__lxstat64): Likewise.
	* sysdeps/unix/xstat.c (__xstat): Likewise.

	* include/sys/statvfs.h (statvfs, fstatvfs): Add libc_hidden_proto.
	* sysdeps/generic/statvfs.c (statvfs): Add libc_hidden_def.
	* sysdeps/generic/fstatvfs.c (fstatvfs): Likewise.
	* sysdeps/mach/hurd/statvfs.c (statvfs): Likewise.
	* sysdeps/mach/hurd/fstatvfs.c (fstatvfs): Likewise.
	* sysdeps/unix/sysv/linux/statvfs.c (statvfs): Likewise.
	* sysdeps/unix/sysv/linux/fstatvfs.c (fstatvfs): Likewise.

	* include/unistd.h (tcgetpgrp): Add libc_hidden_proto.
	* include/termios.h (tcsetattr, cfsetispeed, cfsetospeed): Likewise.
	* sysdeps/generic/tcgetpgrp.c (tcgetpgrp): Add libc_hidden_def.
	* sysdeps/generic/tcsetattr.c (tcsetattr): Likewise.
	* sysdeps/generic/speed.c (cfsetispeed, cfsetospeed): Likewise.
	* sysdeps/unix/bsd/bsd4.4/tcsetattr.c (tcgetpgrp): Likewise.
	* sysdeps/unix/bsd/sun/sunos4/tcsetattr.c (tcsetattr): Likewise.
	* sysdeps/unix/bsd/sun/sunos4/speed.c (cfsetispeed, cfsetospeed):
	Likewise.
	* sysdeps/unix/bsd/tcgetpgrp.c (tcgetpgrp): Likewise.
	* sysdeps/unix/bsd/tcsetattr.c (tcsetattr): Likewise.
	* sysdeps/unix/sysv/aix/tcsetattr.c (tcsetattr): Likewise.
	* sysdeps/unix/sysv/aix/speed.c (cfsetispeed, cfsetospeed): Likewise.
	* sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
	* sysdeps/unix/sysv/linux/speed.c (cfsetispeed, cfsetospeed):
	Likewise.
	* sysdeps/unix/sysv/tcgetpgrp.c (tcgetpgrp): Likewise.
	* sysdeps/unix/sysv/tcsetattr.c (tcsetattr): Likewise.

	* include/string.h (strcoll): Add libc_hidden_proto.
	* string/strcoll.c (strcoll): Add libc_hidden_def.

	* misc/err.c (vwarn): Fix pasto in libc_hidden_def.

--- libc/include/unistd.h.jj	2002-08-12 15:27:47.000000000 +0200
+++ libc/include/unistd.h	2002-08-13 00:25:17.000000000 +0200
@@ -12,7 +12,9 @@ libc_hidden_proto (getpid)
 libc_hidden_proto (getsid)
 libc_hidden_proto (getdomainname)
 libc_hidden_proto (getlogin_r)
-
+libc_hidden_proto (seteuid)
+libc_hidden_proto (setegid)
+libc_hidden_proto (tcgetpgrp)
 
 /* Now define the internal interfaces.  */
 extern int __access (__const char *__name, int __type);
--- libc/include/sys/stat.h.jj	2002-08-04 20:23:21.000000000 +0200
+++ libc/include/sys/stat.h	2002-08-13 01:11:22.000000000 +0200
@@ -11,14 +11,14 @@ extern __mode_t __umask (__mode_t __mask
 extern int __mkdir (__const char *__path, __mode_t __mode);
 extern int __mknod (__const char *__path,
 		    __mode_t __mode, __dev_t __dev);
-extern int __fxstat_internal (int __ver, int __fildes,
-			      struct stat *__stat_buf) attribute_hidden;
-extern int __fxstat64_internal (int __ver, int __fildes,
-				struct stat64 *__stat_buf) attribute_hidden;
-extern int __lxstat_internal (int __ver, __const char *__file,
-			      struct stat *__stat_buf) attribute_hidden;
-extern int __lxstat64_internal (int __ver, __const char *__file,
-				struct stat64 *__stat_buf) attribute_hidden;
+#if !defined NOT_IN_libc || defined IS_IN_rtld
+hidden_proto (__fxstat)
+hidden_proto (__fxstat64)
+hidden_proto (__lxstat)
+hidden_proto (__lxstat64)
+hidden_proto (__xstat)
+hidden_proto (__xstat64)
+#endif
 extern __inline__ int __stat (__const char *__path, struct stat *__statbuf)
 {
   return __xstat (_STAT_VER, __path, __statbuf);
@@ -41,22 +41,7 @@ extern __inline__ int __mknod (__const c
 #define __lstat(fname, buf)  __lxstat (_STAT_VER, fname, buf)
 #define lstat64(fname, buf)  __lxstat64 (_STAT_VER, fname, buf)
 #define stat64(fname, buf) __xstat64 (_STAT_VER, fname, buf)
-#ifndef NOT_IN_libc
-# define fstat64(fd, buf) INTUSE(__fxstat64) (_STAT_VER, fd, buf)
-# define fstat(fd, buf) INTUSE(__fxstat) (_STAT_VER, fd, buf)
-# define __fstat(fd, buf)  INTUSE(__fxstat) (_STAT_VER, fd, buf)
-
-# define __fxstat(ver, fd, buf) INTUSE(__fxstat) (ver, fd, buf)
-# ifndef __fxstat64
-#  define __fxstat64(ver, fd, buf) INTUSE(__fxstat64) (ver, fd, buf)
-# endif
-# define __lxstat(ver, name, buf) INTUSE(__lxstat) (ver, name, buf)
-# ifndef __lxstat64
-#  define __lxstat64(ver, name, buf) INTUSE(__lxstat64) (ver, name, buf)
-# endif
-#else
-# define fstat64(fd, buf) __fxstat64 (_STAT_VER, fd, buf)
-# define fstat(fd, buf) __fxstat (_STAT_VER, fd, buf)
-# define __fstat(fd, buf) __fxstat (_STAT_VER, fd, buf)
-#endif
+#define fstat64(fd, buf) __fxstat64 (_STAT_VER, fd, buf)
+#define fstat(fd, buf) __fxstat (_STAT_VER, fd, buf)
+#define __fstat(fd, buf) __fxstat (_STAT_VER, fd, buf)
 #endif
--- libc/include/sys/statvfs.h.jj	2001-01-25 11:24:20.000000000 +0100
+++ libc/include/sys/statvfs.h	2002-08-13 00:04:36.000000000 +0200
@@ -4,4 +4,7 @@
 /* Now define the internal interfaces.  */
 extern int __statvfs64 (__const char *__file, struct statvfs64 *__buf);
 extern int __fstatvfs64 (int __fildes, struct statvfs64 *__buf);
+
+libc_hidden_proto (statvfs)
+libc_hidden_proto (fstatvfs)
 #endif
--- libc/include/termios.h.jj	2001-01-02 14:17:33.000000000 +0100
+++ libc/include/termios.h	2002-08-13 00:39:39.000000000 +0200
@@ -6,4 +6,8 @@ extern int __tcgetattr (int __fd, struct
 
 extern int __libc_tcdrain (int __fd);
 
+libc_hidden_proto (tcsetattr)
+libc_hidden_proto (cfsetispeed)
+libc_hidden_proto (cfsetospeed)
+
 #endif
--- libc/include/string.h.jj	2002-08-12 15:27:47.000000000 +0200
+++ libc/include/string.h	2002-08-13 00:50:55.000000000 +0200
@@ -72,6 +72,7 @@ libc_hidden_proto (__strndup)
 libc_hidden_proto (__strerror_r)
 libc_hidden_proto (__strverscmp)
 libc_hidden_proto (basename)
+libc_hidden_proto (strcoll)
 
 # ifndef _ISOMAC
 #  ifndef index
--- libc/string/strcoll.c.jj	2002-01-30 18:02:53.000000000 +0100
+++ libc/string/strcoll.c	2002-08-13 00:49:59.000000000 +0200
@@ -551,3 +551,6 @@ STRCOLL (s1, s2, l)
 
   return result;
 }
+#if !defined WIDE_CHAR_VERSION && !defined USE_IN_EXTENDED_LOCALE_MODEL
+libc_hidden_def (strcoll)
+#endif
--- libc/sysdeps/generic/seteuid.c.jj	2001-08-23 18:49:35.000000000 +0200
+++ libc/sysdeps/generic/seteuid.c	2002-08-12 22:22:40.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992, 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1992, 1995, 1996, 1997, 2002 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
@@ -27,7 +27,6 @@ seteuid (uid)
   __set_errno (ENOSYS);
   return -1;
 }
-
-
+libc_hidden_def (seteuid)
 stub_warning (seteuid)
 #include <stub-tag.h>
--- libc/sysdeps/generic/setegid.c.jj	2001-08-23 18:49:35.000000000 +0200
+++ libc/sysdeps/generic/setegid.c	2002-08-12 22:23:11.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1992,1994,1995,1996,1997,2002 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
@@ -27,7 +27,6 @@ setegid (gid)
   __set_errno (ENOSYS);
   return -1;
 }
-
-
+libc_hidden_def (setegid)
 stub_warning (setegid)
 #include <stub-tag.h>
--- libc/sysdeps/generic/fxstat.c.jj	2002-04-30 12:53:42.000000000 +0200
+++ libc/sysdeps/generic/fxstat.c	2002-08-13 01:13:10.000000000 +0200
@@ -20,8 +20,6 @@
 #include <stddef.h>
 #include <sys/stat.h>
 
-#undef __fxstat
-
 /* Get information about the file descriptor FD in BUF.  */
 int
 __fxstat (int vers, int fd, struct stat *buf)
@@ -47,7 +45,6 @@ __fxstat (int vers, int fd, struct stat 
   return -1;
 }
 stub_warning (fstat)
-
-INTDEF(__fxstat)
+hidden_def (__fxstat)
 weak_alias (__fxstat, _fxstat)
 #include <stub-tag.h>
--- libc/sysdeps/generic/fxstat64.c.jj	2002-04-30 12:53:42.000000000 +0200
+++ libc/sysdeps/generic/fxstat64.c	2002-08-13 01:13:15.000000000 +0200
@@ -20,8 +20,6 @@
 #include <stddef.h>
 #include <sys/stat.h>
 
-#undef __fxstat64
-
 /* Get information about the file descriptor FD in BUF.  */
 int
 __fxstat64 (int vers, int fd, struct stat64 *buf)
@@ -46,7 +44,6 @@ __fxstat64 (int vers, int fd, struct sta
   __set_errno (ENOSYS);
   return -1;
 }
+hidden_def (__fxstat64)
 stub_warning (fstat64)
 #include <stub-tag.h>
-
-INTDEF(__fxstat64)
--- libc/sysdeps/generic/lxstat.c.jj	2002-04-30 12:53:42.000000000 +0200
+++ libc/sysdeps/generic/lxstat.c	2002-08-13 01:13:19.000000000 +0200
@@ -18,13 +18,10 @@
 
 #include <sys/stat.h>
 
-#undef __lxstat
-
 int
 __lxstat (int version, const char *file, struct stat *buf)
 {
   return __xstat (version, file, buf);
 }
-
-INTDEF(__lxstat)
+hidden_def (__lxstat)
 weak_alias (__lxstat, _lxstat)
--- libc/sysdeps/generic/lxstat64.c.jj	2002-04-30 12:53:42.000000000 +0200
+++ libc/sysdeps/generic/lxstat64.c	2002-08-13 01:13:24.000000000 +0200
@@ -20,8 +20,6 @@
 #include <stddef.h>
 #include <sys/stat.h>
 
-#undef __lxstat64
-
 /* Get file information about FILE in BUF.
    If FILE is a symbolic link, do not follow it.  */
 int
@@ -36,6 +34,6 @@ __lxstat64 (int vers, const char *file, 
   __set_errno (ENOSYS);
   return -1;
 }
-INTDEF(__lxstat64)
+hidden_def (__lxstat64)
 stub_warning (__lxstat64)
 #include <stub-tag.h>
--- libc/sysdeps/generic/xstat.c.jj	2001-08-23 18:49:41.000000000 +0200
+++ libc/sysdeps/generic/xstat.c	2002-08-13 01:13:29.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1995, 1996, 1997, 2002 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
@@ -33,7 +33,7 @@ __xstat (int vers, const char *file, str
   __set_errno (ENOSYS);
   return -1;
 }
+hidden_def (__xstat)
 stub_warning (stat)
-
 weak_alias (__xstat, _xstat)
 #include <stub-tag.h>
--- libc/sysdeps/generic/xstat64.c.jj	2001-08-23 18:49:41.000000000 +0200
+++ libc/sysdeps/generic/xstat64.c	2002-08-13 01:13:33.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1995, 1996, 1997, 2002 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
@@ -33,5 +33,6 @@ __xstat64 (int vers, const char *file, s
   __set_errno (ENOSYS);
   return -1;
 }
+hidden_def (__xstat64)
 stub_warning (stat64)
 #include <stub-tag.h>
--- libc/sysdeps/generic/statvfs.c.jj	2001-08-23 18:49:38.000000000 +0200
+++ libc/sysdeps/generic/statvfs.c	2002-08-13 00:07:11.000000000 +0200
@@ -1,5 +1,5 @@
 /* Return information about the filesystem on which FILE resides.
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2002 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
@@ -29,6 +29,6 @@ __statvfs (const char *file, struct stat
   return -1;
 }
 weak_alias (__statvfs, statvfs)
-
+libc_hidden_weak (statvfs)
 stub_warning (statvfs)
 #include <stub-tag.h>
--- libc/sysdeps/generic/fstatvfs.c.jj	2001-08-23 18:49:27.000000000 +0200
+++ libc/sysdeps/generic/fstatvfs.c	2002-08-13 00:07:45.000000000 +0200
@@ -1,5 +1,5 @@
 /* Return information about the filesystem on which FD resides.
-   Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
+   Copyright (C) 1996, 1997, 1998, 2002 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
@@ -28,6 +28,6 @@ __fstatvfs (int fd, struct statvfs *buf)
   return -1;
 }
 stub_warning (fstatvfs)
-
 weak_alias (__fstatvfs, fstatvfs)
+libc_hidden_weak (fstatvfs)
 #include <stub-tag.h>
--- libc/sysdeps/generic/tcgetpgrp.c.jj	2001-08-23 18:49:41.000000000 +0200
+++ libc/sysdeps/generic/tcgetpgrp.c	2002-08-13 00:28:15.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1995, 1996, 1997, 2002 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
@@ -34,7 +34,6 @@ tcgetpgrp (fd)
   __set_errno (ENOSYS);
   return (pid_t) -1;
 }
-
-
+libc_hidden_def (tcgetpgrp)
 stub_warning (tcgetpgrp)
 #include <stub-tag.h>
--- libc/sysdeps/generic/tcsetattr.c.jj	2001-08-23 18:49:41.000000000 +0200
+++ libc/sysdeps/generic/tcsetattr.c	2002-08-13 00:28:52.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,95,96,2000,01 Free Software Foundation, Inc.
+/* Copyright (C) 1991,95,96,2000,01,02 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
@@ -58,7 +58,7 @@ tcsetattr (int fd, int optional_actions,
   __set_errno (ENOSYS);
   return -1;
 }
-
+libc_hidden_def (tcsetattr)
 
 /* Strychnine checking.  */
 static int
--- libc/sysdeps/generic/speed.c.jj	2001-08-23 18:49:38.000000000 +0200
+++ libc/sysdeps/generic/speed.c	2002-08-13 00:43:02.000000000 +0200
@@ -1,5 +1,5 @@
 /* `struct termios' speed frobnication functions.  4.4 BSD/generic GNU version.
-   Copyright (C) 1991, 1992, 1993, 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1991,1992,1993,1996,1997,2002 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
@@ -52,6 +52,7 @@ cfsetospeed (termios_p, speed)
   termios_p->__ospeed = speed;
   return 0;
 }
+libc_hidden_def (cfsetospeed)
 
 /* Set the input baud rate stored in *TERMIOS_P to SPEED.  */
 int
@@ -68,3 +69,4 @@ cfsetispeed (termios_p, speed)
   termios_p->__ispeed = speed;
   return 0;
 }
+libc_hidden_def (cfsetispeed)
--- libc/sysdeps/mach/hurd/seteuid.c.jj	2001-08-23 18:50:05.000000000 +0200
+++ libc/sysdeps/mach/hurd/seteuid.c	2002-08-12 22:23:38.000000000 +0200
@@ -66,3 +66,4 @@ seteuid (uid)
   __mach_port_deallocate (__mach_task_self (), newauth);
   return err;
 }
+libc_hidden_def (seteuid)
--- libc/sysdeps/mach/hurd/setegid.c.jj	2001-08-23 18:50:05.000000000 +0200
+++ libc/sysdeps/mach/hurd/setegid.c	2002-08-12 22:23:49.000000000 +0200
@@ -66,3 +66,4 @@ setegid (gid)
   __mach_port_deallocate (__mach_task_self (), newauth);
   return err;
 }
+libc_hidden_def (setegid)
--- libc/sysdeps/mach/hurd/dl-sysdep.c.jj	2002-08-03 11:09:41.000000000 +0200
+++ libc/sysdeps/mach/hurd/dl-sysdep.c	2002-08-12 23:24:57.000000000 +0200
@@ -505,6 +505,7 @@ __fxstat64 (int vers, int fd, struct sta
 
   return 0;
 }
+libc_hidden_def (__fxstat64)
 
 int weak_function
 __xstat64 (int vers, const char *file, struct stat64 *buf)
@@ -522,6 +523,7 @@ __xstat64 (int vers, const char *file, s
 
   return 0;
 }
+libc_hidden_def (__xstat64)
 
 /* This function is called by the dynamic linker (rtld.c) to check
    whether debugging malloc is allowed even for SUID binaries.  This
--- libc/sysdeps/mach/hurd/fxstat.c.jj	2002-06-21 11:40:01.000000000 +0200
+++ libc/sysdeps/mach/hurd/fxstat.c	2002-08-13 01:13:40.000000000 +0200
@@ -22,8 +22,6 @@
 
 #include "xstatconv.c"
 
-#undef __fxstat
-
 /* Get information about the file descriptor FD in BUF.  */
 int
 __fxstat (int vers, int fd, struct stat *buf)
@@ -31,6 +29,5 @@ __fxstat (int vers, int fd, struct stat 
   struct stat64 buf64;
   return __fxstat64 (vers, fd, &buf64) ?: xstat64_conv (buf, &buf64);
 }
-
-INTDEF(__fxstat)
+hidden_def (__fxstat)
 weak_alias (__fxstat, _fxstat)
--- libc/sysdeps/mach/hurd/fxstat64.c.jj	2002-06-21 11:40:01.000000000 +0200
+++ libc/sysdeps/mach/hurd/fxstat64.c	2002-08-13 01:13:44.000000000 +0200
@@ -24,8 +24,6 @@
 #include <hurd.h>
 #include <hurd/fd.h>
 
-#undef __fxstat64
-
 /* Get information about the file descriptor FD in BUF.  */
 int
 __fxstat64 (int vers, int fd, struct stat64 *buf)
@@ -40,7 +38,6 @@ __fxstat64 (int vers, int fd, struct sta
 
   return 0;
 }
-
-INTDEF(__fxstat64)
+hidden_def (__fxstat64)
 
 #endif
--- libc/sysdeps/mach/hurd/lxstat.c.jj	2002-06-21 11:40:03.000000000 +0200
+++ libc/sysdeps/mach/hurd/lxstat.c	2002-08-13 01:13:47.000000000 +0200
@@ -22,14 +22,11 @@
 
 #include "xstatconv.c"
 
-#undef __lxstat
-
 int
 __lxstat (int vers, const char *file, struct stat *buf)
 {
   struct stat64 buf64;
   return __lxstat64 (vers, file, &buf64) ?: xstat64_conv (buf, &buf64);
 }
-
-INTDEF(__lxstat)
+hidden_def (__lxstat)
 weak_alias (__lxstat, _lxstat)
--- libc/sysdeps/mach/hurd/lxstat64.c.jj	2002-06-21 11:40:03.000000000 +0200
+++ libc/sysdeps/mach/hurd/lxstat64.c	2002-08-13 01:13:51.000000000 +0200
@@ -22,8 +22,6 @@
 #include <fcntl.h>
 #include <hurd.h>
 
-#undef __lxstat64
-
 /* Get information about the file descriptor FD in BUF.  */
 int
 __lxstat64 (int vers, const char *file, struct stat64 *buf)
@@ -43,4 +41,4 @@ __lxstat64 (int vers, const char *file, 
     return __hurd_fail (err);
   return 0;
 }
-INTDEF(__lxstat64)
+hidden_def (__lxstat64)
--- libc/sysdeps/mach/hurd/xstat.c.jj	2002-06-21 11:40:06.000000000 +0200
+++ libc/sysdeps/mach/hurd/xstat.c	2002-08-13 01:13:55.000000000 +0200
@@ -28,4 +28,5 @@ __xstat (int vers, const char *file, str
   struct stat64 buf64;
   return __xstat64 (vers, file, &buf64) ?: xstat64_conv (buf, &buf64);
 }
+hidden_def (__xstat)
 weak_alias (__xstat, _xstat)
--- libc/sysdeps/mach/hurd/xstat64.c.jj	2002-06-21 11:40:06.000000000 +0200
+++ libc/sysdeps/mach/hurd/xstat64.c	2002-08-13 01:14:00.000000000 +0200
@@ -42,5 +42,6 @@ __xstat64 (int vers, const char *file, s
     return __hurd_fail (err);
   return 0;
 }
+hidden_def (__xstat64)
 
 #endif
--- libc/sysdeps/mach/hurd/fstatvfs.c.jj	2001-08-23 18:50:02.000000000 +0200
+++ libc/sysdeps/mach/hurd/fstatvfs.c	2002-08-13 00:09:26.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2001, 2002 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
@@ -26,3 +26,4 @@ fstatvfs (int fd, struct statvfs *buf)
      can simply call fstatfs.  */
   return __fstatfs (fd, (struct statfs *)buf);
 }
+libc_hidden_def (fstatvfs)
--- libc/sysdeps/mach/hurd/statvfs.c.jj	2001-08-23 18:50:05.000000000 +0200
+++ libc/sysdeps/mach/hurd/statvfs.c	2002-08-13 00:09:45.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2001, 2002 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
@@ -26,3 +26,4 @@ statvfs (const char *file, struct statvf
      can simply call statfs.  */
   return __statfs (file, (struct statfs *)buf);
 }
+libc_hidden_def (statvfs)
--- libc/sysdeps/unix/fxstat.c.jj	2002-04-30 12:56:17.000000000 +0200
+++ libc/sysdeps/unix/fxstat.c	2002-08-13 01:14:04.000000000 +0200
@@ -24,8 +24,6 @@
 
 extern int __syscall_fstat (int, struct stat *__unbounded);
 
-#undef __fxstat
-
 /* Get information about the file descriptor FD in BUF.  */
 int
 __fxstat (int vers, int fd, struct stat *buf)
@@ -38,5 +36,5 @@ __fxstat (int vers, int fd, struct stat 
 
   return __syscall_fstat (fd, CHECK_1 (buf));
 }
-INTDEF(__fxstat)
+hidden_def (__fxstat)
 weak_alias (__fxstat, _fxstat)
--- libc/sysdeps/unix/bsd/bsd4.4/tcsetattr.c.jj	2001-08-23 18:50:29.000000000 +0200
+++ libc/sysdeps/unix/bsd/bsd4.4/tcsetattr.c	2002-08-13 00:32:36.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992, 1994, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1992, 1994, 1997, 2002 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
@@ -60,3 +60,4 @@ tcsetattr (fd, optional_actions, termios
       return __ioctl (fd, TIOCSETAF, termios_p);
     }
 }
+libc_hidden_def (tcsetattr)
--- libc/sysdeps/unix/bsd/sun/sunos4/tcsetattr.c.jj	2001-08-23 18:50:34.000000000 +0200
+++ libc/sysdeps/unix/bsd/sun/sunos4/tcsetattr.c	2002-08-13 00:33:06.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1996, 1997, 2002 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
@@ -47,3 +47,4 @@ tcsetattr (fd, optional_actions, termios
 
   return __ioctl (fd, cmd, termios_p);
 }
+libc_hidden_def (tcsetattr)
--- libc/sysdeps/unix/bsd/sun/sunos4/speed.c.jj	2001-08-23 18:50:31.000000000 +0200
+++ libc/sysdeps/unix/bsd/sun/sunos4/speed.c	2002-08-13 00:42:22.000000000 +0200
@@ -1,5 +1,5 @@
 /* `struct termios' speed frobnication functions.  SunOS 4 version.
-   Copyright (C) 1991, 1992, 1993, 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1991,1992,1993,1996,1997,2002 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
@@ -87,6 +87,7 @@ cfsetospeed (termios_p, speed)
   __set_errno (EINVAL);
   return -1;
 }
+libc_hidden_def (cfsetospeed)
 
 /* Set the input baud rate stored in *TERMIOS_P to SPEED.  */
 int
@@ -114,3 +115,4 @@ cfsetispeed (termios_p, speed)
   __set_errno (EINVAL);
   return -1;
 }
+libc_hidden_def (cfsetispeed)
--- libc/sysdeps/unix/bsd/seteuid.c.jj	2001-08-23 18:50:29.000000000 +0200
+++ libc/sysdeps/unix/bsd/seteuid.c	2002-08-12 22:26:22.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 1996, 1997, 2002 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
@@ -32,3 +32,4 @@ seteuid (uid)
 
   return __setreuid (-1, uid);
 }
+libc_hidden_def (seteuid)
--- libc/sysdeps/unix/bsd/setegid.c.jj	2001-08-23 18:50:29.000000000 +0200
+++ libc/sysdeps/unix/bsd/setegid.c	2002-08-12 22:26:37.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 1996, 1997, 2002 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
@@ -32,3 +32,4 @@ setegid (gid)
 
   return __setregid (-1, gid);
 }
+libc_hidden_def (setegid)
--- libc/sysdeps/unix/bsd/tcgetpgrp.c.jj	2001-08-23 18:50:29.000000000 +0200
+++ libc/sysdeps/unix/bsd/tcgetpgrp.c	2002-08-13 00:31:34.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1997, 2002 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
@@ -32,3 +32,4 @@ tcgetpgrp (fd)
     return (pid_t) -1;
   return (pid_t) pgrp;
 }
+libc_hidden_def (tcgetpgrp)
--- libc/sysdeps/unix/bsd/tcsetattr.c.jj	2001-08-23 18:50:29.000000000 +0200
+++ libc/sysdeps/unix/bsd/tcsetattr.c	2002-08-13 00:32:02.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1993, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1993, 1996, 1997, 2002 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
@@ -185,3 +185,4 @@ tcsetattr (fd, optional_actions, termios
     return -1;
   return 0;
 }
+libc_hidden_def (tcsetattr)
--- libc/sysdeps/unix/common/lxstat.c.jj	2002-04-30 12:56:34.000000000 +0200
+++ libc/sysdeps/unix/common/lxstat.c	2002-08-13 01:14:08.000000000 +0200
@@ -22,8 +22,6 @@
 #include <sys/stat.h>
 #include <bp-checks.h>
 
-#undef __lxstat
-
 extern int __syscall_lstat (const char *__unbounded, struct stat *__unbounded);
 
 int
@@ -37,5 +35,5 @@ __lxstat (int vers, const char *file, st
 
   return __syscall_lstat (CHECK_STRING (file), CHECK_1 (buf));
 }
-INTDEF(__lxstat)
+hidden_def (__lxstat)
 weak_alias (__lxstat, _lxstat)
--- libc/sysdeps/unix/sysv/aix/seteuid.c.jj	2001-08-23 18:50:37.000000000 +0200
+++ libc/sysdeps/unix/sysv/aix/seteuid.c	2002-08-12 22:24:53.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 2002 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
@@ -29,3 +29,4 @@ __seteuid (uid_t uid)
   return setuidx (ID_EFFECTIVE, uid);
 }
 strong_alias (__seteuid, seteuid)
+libc_hidden_def (seteuid)
--- libc/sysdeps/unix/sysv/aix/setegid.c.jj	2001-08-23 18:50:37.000000000 +0200
+++ libc/sysdeps/unix/sysv/aix/setegid.c	2002-08-12 22:25:06.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 2002 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
@@ -29,3 +29,4 @@ __setegid (gid_t gid)
   return setgidx (ID_EFFECTIVE, gid);
 }
 strong_alias (__setegid, setegid)
+libc_hidden_def (setegid)
--- libc/sysdeps/unix/sysv/aix/fxstat.c.jj	2002-04-30 12:56:36.000000000 +0200
+++ libc/sysdeps/unix/sysv/aix/fxstat.c	2002-08-13 01:14:12.000000000 +0200
@@ -23,12 +23,10 @@
 
 extern int fstatx (int fd, struct stat *st, int len, int cmd);
 
-#undef __fxstat
-
 int
 __fxstat (int ver, int fd, struct stat *st)
 {
   assert (ver == 0);
   return fstatx (fd, st, sizeof (*st), STX_NORMAL);
 }
-INTDEF(__fxstat)
+hidden_def (__fxstat)
--- libc/sysdeps/unix/sysv/aix/fxstat64.c.jj	2002-04-30 12:56:36.000000000 +0200
+++ libc/sysdeps/unix/sysv/aix/fxstat64.c	2002-08-13 01:14:16.000000000 +0200
@@ -22,16 +22,12 @@
 #define STX_NORMAL      0x00
 #define STX_64          0x08
 
-#undef __fxstat64
-
 extern int fstatx (int fd, struct stat64 *st, int len, int cmd);
 
-#undef __fxstat64
-
 int
 __fxstat64 (int ver, int fd, struct stat64 *st)
 {
   assert (ver == 0);
   return fstatx (fd, st, sizeof (*st), STX_NORMAL | STX_64);
 }
-INTDEF(__fxstat64)
+hidden_def (__fxstat64)
--- libc/sysdeps/unix/sysv/aix/lxstat.c.jj	2002-04-30 12:56:36.000000000 +0200
+++ libc/sysdeps/unix/sysv/aix/lxstat.c	2002-08-13 01:14:19.000000000 +0200
@@ -21,8 +21,6 @@
 
 #define STX_LINK        0x01
 
-#undef __lxstat
-
 extern int statx (const char *pathname, struct stat *st, int len, int cmd);
 
 int
@@ -31,5 +29,4 @@ __lxstat (int ver, const char *pathname,
   assert (ver == 0);
   return statx (pathname, st, sizeof (*st), STX_LINK);
 }
-
-INTDEF(__lxstat)
+hidden_def (__lxstat)
--- libc/sysdeps/unix/sysv/aix/lxstat64.c.jj	2002-04-30 12:56:37.000000000 +0200
+++ libc/sysdeps/unix/sysv/aix/lxstat64.c	2002-08-13 01:14:22.000000000 +0200
@@ -22,8 +22,6 @@
 #define STX_LINK        0x01
 #define STX_64          0x08
 
-#undef __lxstat64
-
 extern int statx (const char *pathname, struct stat64 *st, int len, int cmd);
 
 int
@@ -32,5 +30,4 @@ __lxstat64 (int ver, const char *pathnam
   assert (ver == 0);
   return statx (pathname, st, sizeof (*st), STX_LINK | STX_64);
 }
-
-INTDEF(__lxstat64)
+hidden_def (__lxstat64)
--- libc/sysdeps/unix/sysv/aix/xstat.c.jj	2001-08-23 18:50:40.000000000 +0200
+++ libc/sysdeps/unix/sysv/aix/xstat.c	2002-08-13 01:14:26.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2000, 2002 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
@@ -21,7 +21,6 @@
 
 #define STX_NORMAL      0x00
 
-
 extern int statx (const char *pathname, struct stat *st, int len, int cmd);
 
 int
@@ -30,3 +29,4 @@ __xstat (int ver, const char *pathname, 
   assert (ver == 0);
   return statx (pathname, st, sizeof (*st), STX_NORMAL);
 }
+hidden_def (__xstat)
--- libc/sysdeps/unix/sysv/aix/xstat64.c.jj	2001-08-23 18:50:40.000000000 +0200
+++ libc/sysdeps/unix/sysv/aix/xstat64.c	2002-08-13 01:14:29.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2000, 2002 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
@@ -31,3 +31,4 @@ __xstat64 (int ver, const char *pathname
   assert (ver == 0);
   return statx (pathname, st, sizeof (*st), STX_NORMAL | STX_64);
 }
+hidden_def (__xstat64)
--- libc/sysdeps/unix/sysv/aix/tcsetattr.c.jj	2001-08-23 18:50:37.000000000 +0200
+++ libc/sysdeps/unix/sysv/aix/tcsetattr.c	2002-08-13 00:34:39.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992, 1995, 1996, 1997, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1992,1995,1996,1997,2000,2002 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
@@ -195,3 +195,4 @@ tcsetattr (fd, optional_actions, termios
     return -1;
   return 0;
 }
+libc_hidden_def (tcsetattr)
--- libc/sysdeps/unix/sysv/aix/speed.c.jj	2001-08-23 18:50:37.000000000 +0200
+++ libc/sysdeps/unix/sysv/aix/speed.c	2002-08-13 00:41:23.000000000 +0200
@@ -1,5 +1,5 @@
 /* `struct termios' speed frobnication functions.  AIX version.
-   Copyright (C) 2000 Free Software Foundation, Inc.
+   Copyright (C) 2000, 2002 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
@@ -53,6 +53,8 @@ cfsetospeed (termios_p, speed)
   termios_p->c_cflag |= speed & 0x0000000f;
   return 0;
 }
+libc_hidden_def (cfsetospeed)
+
 
 /* Set the input baud rate stored in *TERMIOS_P to SPEED.  */
 int
@@ -70,3 +72,4 @@ cfsetispeed (termios_p, speed)
   termios_p->c_cflag |= (speed << 16) & ~0x000f0000;
   return 0;
 }
+libc_hidden_def (cfsetispeed)
--- libc/sysdeps/unix/sysv/linux/ia64/fxstat.c.jj	2002-04-30 12:56:55.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/ia64/fxstat.c	2002-08-13 01:14:41.000000000 +0200
@@ -20,10 +20,6 @@
 /* Ho hum, since xstat == xstat64 we must get rid of the prototype or gcc
    will complain since they don't strictly match.  */
 #define __fxstat64 __fxstat64_disable
-#define __fxstat64_internal __fxstat64_internal_disable
-/* To avoid the optimizations of using _internal functions define
-   NOT_IN_libc.  */
-#define NOT_IN_libc	1
 
 #include <errno.h>
 #include <stddef.h>
@@ -35,9 +31,6 @@
 
 extern int __syscall_fstat (int, struct stat *__unbounded);
 
-#undef __fxstat
-#undef __fxstat64_internal
-
 /* Get information about the file FD in BUF.  */
 int
 __fxstat (int vers, int fd, struct stat *buf)
@@ -45,8 +38,8 @@ __fxstat (int vers, int fd, struct stat 
   return INLINE_SYSCALL (fstat, 2, fd, CHECK_1 (buf));
 }
 
-INTDEF(__fxstat)
+hidden_def (__fxstat)
 weak_alias (__fxstat, _fxstat);
 #undef __fxstat64
 strong_alias (__fxstat, __fxstat64);
-INTDEF(__fxstat64)
+hidden_ver (__fxstat, __fxstat64)
--- libc/sysdeps/unix/sysv/linux/ia64/lxstat.c.jj	2002-04-30 12:56:55.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/ia64/lxstat.c	2002-08-13 01:14:48.000000000 +0200
@@ -20,10 +20,6 @@
 /* Ho hum, since xstat == xstat64 we must get rid of the prototype or gcc
    will complain since they don't strictly match.  */
 #define __lxstat64 __lxstat64_disable
-#define __lxstat64_internal __lxstat64_internal_disable
-/* To avoid the optimizations of using _internal functions define
-   NOT_IN_libc.  */     
-#define NOT_IN_libc	1
 
 #include <errno.h>
 #include <stddef.h>
@@ -33,9 +29,6 @@
 #include <sys/syscall.h>
 #include <bp-checks.h>
 
-#undef __lxstat
-#undef __lxstat64_internal
-
 extern int __syscall_lstat (const char *__unbounded, struct stat *__unbounded);
 
 /* Get information about the file FD in BUF.  */
@@ -45,8 +38,8 @@ __lxstat (int vers, const char *name, st
   return INLINE_SYSCALL (lstat, 2, CHECK_STRING (name), CHECK_1 (buf));
 }
 
-INTDEF(__lxstat)
+hidden_def (__lxstat)
 weak_alias (__lxstat, _lxstat);
 #undef __lxstat64
 strong_alias (__lxstat, __lxstat64);
-INTDEF(__lxstat64)
+hidden_ver (__lxstat, __lxstat64)
--- libc/sysdeps/unix/sysv/linux/ia64/xstat.c.jj	2001-08-23 18:51:06.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/ia64/xstat.c	2002-08-13 01:14:55.000000000 +0200
@@ -1,5 +1,5 @@
 /* xstat using old-style Unix stat system call.
-   Copyright (C) 1991, 95, 96, 97, 98, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1991,95,96,97,98,2000,2002 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
@@ -37,7 +37,8 @@ __xstat (int vers, const char *name, str
 {
   return INLINE_SYSCALL (stat, 2, name, CHECK_1 (buf));
 }
-
+hidden_def (__xstat)
 weak_alias (__xstat, _xstat);
 #undef __xstat64
 strong_alias (__xstat, __xstat64);
+hidden_ver (__xstat, __xstat64)
--- libc/sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c.jj	2002-04-25 22:02:28.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c	2002-08-13 01:15:01.000000000 +0200
@@ -30,8 +30,6 @@
 
 extern int __syscall_fstat (int, struct stat *);
 
-#undef __fxstat
-
 /* Get information about the file FD in BUF.  */
 int
 __fxstat (int vers, int fd, struct stat *buf)
@@ -39,8 +37,8 @@ __fxstat (int vers, int fd, struct stat 
   return INLINE_SYSCALL (fstat, 2, fd, buf);
 }
 
-INTDEF(__fxstat)
+hidden_def (__fxstat)
 weak_alias (__fxstat, _fxstat);
 #undef __fxstat64
 strong_alias (__fxstat, __fxstat64);
-INTDEF(__fxstat64)
+hidden_ver (__fxstat, __fxstat64)
--- libc/sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c.jj	2002-04-25 22:02:28.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c	2002-08-13 01:15:13.000000000 +0200
@@ -28,8 +28,6 @@
 #include <sysdep.h>
 #include <sys/syscall.h>
 
-#undef __lxstat
-
 extern int __syscall_lstat (const char *, struct stat *);
 
 /* Get information about the file FD in BUF.  */
@@ -39,8 +37,8 @@ __lxstat (int vers, const char *name, st
   return INLINE_SYSCALL (lstat, 2, name, buf);
 }
 
-INTDEF(__lxstat)
+hidden_def (__lxstat)
 weak_alias (__lxstat, _lxstat);
 #undef __lxstat64
-INTDEF(__lxstat64)
 strong_alias (__lxstat, __lxstat64);
+hidden_ver (__lxstat, __lxstat64)
--- libc/sysdeps/unix/sysv/linux/s390/s390-64/xstat.c.jj	2001-08-23 18:51:29.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/s390/s390-64/xstat.c	2002-08-13 01:15:19.000000000 +0200
@@ -1,5 +1,5 @@
 /* xstat using old-style Unix stat system call.  64 bit S/390 version.
-   Copyright (C) 2001 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2002 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
@@ -36,7 +36,8 @@ __xstat (int vers, const char *name, str
 {
   return INLINE_SYSCALL (stat, 2, name, buf);
 }
-
+hidden_def (__xstat)
 weak_alias (__xstat, _xstat);
 #undef __xstat64
 strong_alias (__xstat, __xstat64);
+hidden_ver (__xstat, __xstat64)
--- libc/sysdeps/unix/sysv/linux/i386/seteuid.c.jj	2001-08-23 18:50:59.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/seteuid.c	2002-08-12 22:31:37.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000, 2002 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
@@ -33,7 +33,11 @@ seteuid (uid_t uid)
   /* First try the syscall.  */
 #ifdef __NR_setresuid
   result = __setresuid (-1, uid, -1);
+#if __ASSUME_SETRESUID_SYSCALL > 0
+  if (0)
+#else
   if (result == -1 && errno == ENOSYS)
+#endif
     /* No system call available.  Use emulation.  This may not work
        since `setreuid' also sets the saved user ID when UID is not
        equal to the real user ID, making it impossible to switch back.  */
@@ -42,3 +46,4 @@ seteuid (uid_t uid)
 
   return result;
 }
+libc_hidden_def (seteuid)
--- libc/sysdeps/unix/sysv/linux/i386/setegid.c.jj	2001-08-23 18:50:59.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/setegid.c	2002-08-12 22:32:02.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995, 96, 97, 98, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 96, 97, 98, 2000, 2002 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
@@ -25,3 +25,4 @@ setegid (gid)
 {
   return __setregid (-1, gid);
 }
+libc_hidden_def (setegid)
--- libc/sysdeps/unix/sysv/linux/i386/fxstat.c.jj	2002-04-25 22:02:23.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/fxstat.c	2002-08-13 01:15:48.000000000 +0200
@@ -44,8 +44,6 @@ extern int __have_no_stat64;
 # endif
 #endif
 
-#undef __fxstat
-
 /* Get information about the file FD in BUF.  */
 int
 __fxstat (int vers, int fd, struct stat *buf)
@@ -96,10 +94,10 @@ __fxstat (int vers, int fd, struct stat 
 #endif  /* __ASSUME_STAT64_SYSCALL  */
 }
 
-INTDEF(__fxstat)
+hidden_def (__fxstat)
 weak_alias (__fxstat, _fxstat);
 #ifdef XSTAT_IS_XSTAT64
 #undef __fxstat64
 strong_alias (__fxstat, __fxstat64);
-INTDEF(__fxstat64)
+hidden_ver (__fxstat, __fxstat64)
 #endif
--- libc/sysdeps/unix/sysv/linux/i386/lxstat.c.jj	2002-04-25 22:02:23.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/lxstat.c	2002-08-13 01:15:57.000000000 +0200
@@ -34,8 +34,6 @@
 
 #include <xstatconv.c>
 
-#undef __lxstat
-
 extern int __syscall_lstat (const char *__unbounded,
 			    struct kernel_stat *__unbounded);
 
@@ -98,10 +96,10 @@ __lxstat (int vers, const char *name, st
 #endif
 }
 
-INTDEF(__lxstat)
+hidden_def (__lxstat)
 weak_alias (__lxstat, _lxstat);
 #ifdef XSTAT_IS_XSTAT64
 #undef __lxstat64
-INTDEF(__lxstat64)
 strong_alias (__lxstat, __lxstat64);
+hidden_ver (__lxstat, __lxstat64)
 #endif
--- libc/sysdeps/unix/sysv/linux/i386/xstat.c.jj	2001-08-23 18:50:59.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/i386/xstat.c	2002-08-13 01:16:05.000000000 +0200
@@ -1,5 +1,5 @@
 /* xstat using old-style Unix stat system call.
-   Copyright (C) 1991,95,96,97,98,2000 Free Software Foundation, Inc.
+   Copyright (C) 1991,95,96,97,98,2000,2002 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
@@ -94,9 +94,10 @@ __xstat (int vers, const char *name, str
   return result;
 #endif  /* __ASSUME_STAT64_SYSCALL  */
 }
-
+hidden_def (__xstat)
 weak_alias (__xstat, _xstat);
 #ifdef XSTAT_IS_XSTAT64
 # undef __xstat64
 strong_alias (__xstat, __xstat64);
+hidden_ver (__xstat, __xstat64)
 #endif
--- libc/sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c.jj	2001-08-23 18:51:33.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c	2002-08-12 22:32:57.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 1999, 2000, 2002 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
@@ -50,6 +50,7 @@ seteuid (uid_t uid)
 
   return result;
 }
+libc_hidden_def (seteuid)
 #else
 # include <sysdeps/unix/bsd/seteuid.c>
 #endif
--- libc/sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c.jj	2001-08-23 18:51:33.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c	2002-08-12 22:33:26.000000000 +0200
@@ -46,6 +46,7 @@ setegid (gid_t gid)
 
   return result;
 }
+libc_hidden_def (setegid)
 #else
 # include <sysdeps/unix/bsd/setegid.c>
 #endif
--- libc/sysdeps/unix/sysv/linux/seteuid.c.jj	2001-08-23 18:50:44.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/seteuid.c	2002-08-12 22:27:09.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 1999, 2002 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
@@ -50,6 +50,7 @@ seteuid (uid_t uid)
 
   return result;
 }
+libc_hidden_def (seteuid)
 #else
 # include <sysdeps/unix/bsd/seteuid.c>
 #endif
--- libc/sysdeps/unix/sysv/linux/setegid.c.jj	2001-08-23 18:50:44.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/setegid.c	2002-08-12 22:27:29.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000, 2002 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
@@ -46,6 +46,7 @@ setegid (gid_t gid)
 
   return result;
 }
+libc_hidden_def (setegid)
 #else
 # include <sysdeps/unix/bsd/setegid.c>
 #endif
--- libc/sysdeps/unix/sysv/linux/xstat.c.jj	2001-08-23 18:50:47.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/xstat.c	2002-08-13 01:16:12.000000000 +0200
@@ -1,5 +1,6 @@
 /* xstat using old-style Unix stat system call.
-   Copyright (C) 1991, 1995, 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1991, 1995, 1996, 1997, 1998, 2000, 2002
+   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
@@ -52,9 +53,10 @@ __xstat (int vers, const char *name, str
 
   return result;
 }
-
+hidden_def (__xstat)
 weak_alias (__xstat, _xstat);
 #ifdef XSTAT_IS_XSTAT64
 #undef __xstat64
 strong_alias (__xstat, __xstat64);
+hidden_ver (__xstat, __xstat64)
 #endif
--- libc/sysdeps/unix/sysv/linux/xstat64.c.jj	2002-02-04 17:35:20.000000000 +0100
+++ libc/sysdeps/unix/sysv/linux/xstat64.c	2002-08-13 01:16:37.000000000 +0200
@@ -48,9 +48,6 @@ int __have_no_stat64;
 /* Get information about the file NAME in BUF.  */
 
 int
-___xstat64 (int vers, const char *name, struct stat64 *buf);
-
-int
 ___xstat64 (int vers, const char *name, struct stat64 *buf)
 {
   int result;
@@ -104,3 +101,4 @@ compat_symbol (libc, __old__xstat64, __x
 #else
 strong_alias (___xstat64, __xstat64);
 #endif
+hidden_ver (___xstat64, __xstat64)
--- libc/sysdeps/unix/sysv/linux/fxstat.c.jj	2002-04-25 22:02:20.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/fxstat.c	2002-08-13 01:16:53.000000000 +0200
@@ -20,7 +20,6 @@
 /* Ho hum, if xstat == xstat64 we must get rid of the prototype or gcc
    will complain since they don't strictly match.  */
 #define __fxstat64 __fxstat64_disable
-#define __fxstat64_internal __fxstat64_internal_disable
 
 #include <errno.h>
 #include <stddef.h>
@@ -36,8 +35,6 @@
 
 extern int __syscall_fstat (int, struct kernel_stat *__unbounded);
 
-#undef __fxstat
-
 /* Get information about the file FD in BUF.  */
 int
 __fxstat (int vers, int fd, struct stat *buf)
@@ -55,11 +52,10 @@ __fxstat (int vers, int fd, struct stat 
   return result;
 }
 
-INTDEF(__fxstat)
+hidden_def (__fxstat)
 weak_alias (__fxstat, _fxstat);
 #ifdef XSTAT_IS_XSTAT64
 #undef __fxstat64
-#undef __fxstat64_internal
 strong_alias (__fxstat, __fxstat64);
-INTDEF(__fxstat64)
+hidden_ver (__fxstat, __fxstat64)
 #endif
--- libc/sysdeps/unix/sysv/linux/fxstat64.c.jj	2002-04-25 22:02:20.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/fxstat64.c	2002-08-13 01:17:43.000000000 +0200
@@ -43,7 +43,6 @@ extern int __have_no_stat64;
 #endif
 
 /* Get information about the file FD in BUF.  */
-extern int ___fxstat64 (int vers, int fd, struct stat64 *buf);
 
 int
 ___fxstat64 (int vers, int fd, struct stat64 *buf)
@@ -90,8 +89,6 @@ ___fxstat64 (int vers, int fd, struct st
 
 versioned_symbol (libc, ___fxstat64, __fxstat64, GLIBC_2_2);
 
-INTDEF2(___fxstat64, __fxstat64)
-
 # if SHLIB_COMPAT(libc, GLIBC_2_1, GLIBC_2_2)
 strong_alias (___fxstat64, __old__fxstat64)
 compat_symbol (libc, __old__fxstat64, __fxstat64, GLIBC_2_1);
@@ -99,6 +96,5 @@ compat_symbol (libc, __old__fxstat64, __
 
 #else
 strong_alias (___fxstat64, __fxstat64);
-
-INTDEF(__fxstat64)
 #endif
+hidden_ver (___fxstat64, __fxstat64)
--- libc/sysdeps/unix/sysv/linux/lxstat.c.jj	2002-04-25 22:02:20.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/lxstat.c	2002-08-13 01:17:56.000000000 +0200
@@ -20,7 +20,6 @@
 /* Ho hum, if xstat == xstat64 we must get rid of the prototype or gcc
    will complain since they don't strictly match.  */
 #define __lxstat64 __lxstat64_disable
-#define __lxstat64_internal __lxstat64_internal_disable
 
 #include <errno.h>
 #include <stddef.h>
@@ -33,8 +32,6 @@
 
 #include <xstatconv.c>
 
-#undef __lxstat
-
 extern int __syscall_lstat (const char *__unbounded,
 			    struct kernel_stat *__unbounded);
 
@@ -56,11 +53,10 @@ __lxstat (int vers, const char *name, st
   return result;
 }
 
-INTDEF(__lxstat)
+hidden_def (__lxstat)
 weak_alias (__lxstat, _lxstat);
 #ifdef XSTAT_IS_XSTAT64
 #undef __lxstat64
-#undef __lxstat64_internal
 strong_alias (__lxstat, __lxstat64);
-INTDEF(__lxstat64)
+hidden_ver (__lxstat, __lxstat64)
 #endif
--- libc/sysdeps/unix/sysv/linux/lxstat64.c.jj	2002-04-25 22:02:20.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/lxstat64.c	2002-08-13 01:18:05.000000000 +0200
@@ -32,8 +32,6 @@
 # include <xstatconv.c>
 #endif
 
-#undef __lxstat64
-
 extern int __syscall_lstat (const char *__unbounded,
 			    struct kernel_stat *__unbounded);
 
@@ -47,8 +45,6 @@ extern int __have_no_stat64;
 #endif
 
 /* Get information about the file NAME in BUF.  */
-extern int ___lxstat64 (int vers, const char *name, struct stat64 *buf);
-
 int
 ___lxstat64 (int vers, const char *name, struct stat64 *buf)
 {
@@ -102,4 +98,4 @@ compat_symbol (libc, __old__lxstat64, __
 #else
 strong_alias (___lxstat64, __lxstat64);
 #endif
-INTDEF2(___lxstat64, __lxstat64)
+hidden_ver (___lxstat64, __lxstat64)
--- libc/sysdeps/unix/sysv/linux/statvfs.c.jj	2001-08-23 18:50:44.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/statvfs.c	2002-08-13 00:11:14.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -43,3 +43,4 @@ statvfs (const char *file, struct statvf
   /* We signal success if the statfs call succeeded.  */
   return 0;
 }
+libc_hidden_def (statvfs)
--- libc/sysdeps/unix/sysv/linux/fstatvfs.c.jj	2001-08-23 18:50:44.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/fstatvfs.c	2002-08-13 00:11:05.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -43,3 +43,4 @@ fstatvfs (int fd, struct statvfs *buf)
   /* We signal success if the statfs call succeeded.  */
   return 0;
 }
+libc_hidden_def (fstatvfs)
--- libc/sysdeps/unix/sysv/linux/tcsetattr.c.jj	2001-08-23 18:50:44.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/tcsetattr.c	2002-08-13 00:36:26.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1996, 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1996, 1997, 1998, 2002 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
@@ -118,3 +118,4 @@ tcsetattr (fd, optional_actions, termios
 
   return retval;
 }
+libc_hidden_def (tcsetattr)
--- libc/sysdeps/unix/sysv/linux/speed.c.jj	2001-08-23 18:50:44.000000000 +0200
+++ libc/sysdeps/unix/sysv/linux/speed.c	2002-08-13 00:40:45.000000000 +0200
@@ -1,5 +1,5 @@
 /* `struct termios' speed frobnication functions.  Linux version.
-   Copyright (C) 1991, 92, 93, 95, 96, 97, 98, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1991,92,93,95,96,97,98,2000,02 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
@@ -71,6 +71,8 @@ cfsetospeed  (termios_p, speed)
 
   return 0;
 }
+libc_hidden_def (cfsetospeed)
+
 
 /* Set the input baud rate stored in *TERMIOS_P to SPEED.
    Although for Linux there is no difference between input and output
@@ -99,3 +101,4 @@ cfsetispeed (termios_p, speed)
 
   return 0;
 }
+libc_hidden_def (cfsetispeed)
--- libc/sysdeps/unix/sysv/tcgetpgrp.c.jj	2001-08-23 18:50:34.000000000 +0200
+++ libc/sysdeps/unix/sysv/tcgetpgrp.c	2002-08-13 00:33:38.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1992, 1997, 2002 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
@@ -33,3 +33,4 @@ tcgetpgrp (fd)
     return (pid_t) -1;
   return (pid_t) pgrp;
 }
+libc_hidden_def (tcgetpgrp)
--- libc/sysdeps/unix/sysv/tcsetattr.c.jj	2001-08-23 18:50:34.000000000 +0200
+++ libc/sysdeps/unix/sysv/tcsetattr.c	2002-08-13 00:34:01.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992, 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1992, 1995, 1996, 1997, 2002 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
@@ -207,3 +207,4 @@ tcsetattr (fd, optional_actions, termios
     return -1;
   return 0;
 }
+libc_hidden_def (tcsetattr)
--- libc/sysdeps/unix/xstat.c.jj	2001-08-23 18:50:29.000000000 +0200
+++ libc/sysdeps/unix/xstat.c	2002-08-13 01:18:10.000000000 +0200
@@ -1,5 +1,5 @@
 /* xstat using old-style Unix stat system call.
-   Copyright (C) 1991, 1995, 1996, 1997, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1991,1995,1996,1997,2000,2002 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
@@ -35,4 +35,5 @@ __xstat (int vers, const char *file, str
 
   return __syscall_stat (CHECK_STRING (file), CHECK_1 (buf));
 }
+hidden_def (__xstat)
 weak_alias (__xstat, _xstat)
--- libc/misc/err.c.jj	2002-08-12 15:27:49.000000000 +0200
+++ libc/misc/err.c	2002-08-13 02:16:30.000000000 +0200
@@ -142,7 +142,7 @@ vwarn (const char *format, __gnuc_va_lis
     }
   funlockfile (stderr);
 }
-libc_hidden_def (vwarnx)
+libc_hidden_def (vwarn)
 
 
 void

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]