summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog27
-rw-r--r--include/netdb.h1
-rw-r--r--include/rpc/auth_des.h1
-rw-r--r--include/string.h1
-rw-r--r--include/unistd.h2
-rw-r--r--locale/loadarchive.c8
-rw-r--r--string/basename.c5
-rw-r--r--sunrpc/rtime.c1
-rw-r--r--sunrpc/svc_authux.c2
-rw-r--r--sysdeps/generic/gai_strerror.c3
-rw-r--r--sysdeps/generic/getdomain.c4
-rw-r--r--sysdeps/generic/getlogin_r.c3
-rw-r--r--sysdeps/i386/bits/byteswap.h58
-rw-r--r--sysdeps/mach/hurd/getdomain.c3
-rw-r--r--sysdeps/mach/hurd/getlogin_r.c3
-rw-r--r--sysdeps/posix/gai_strerror.c3
-rw-r--r--sysdeps/unix/getlogin_r.c5
-rw-r--r--sysdeps/unix/sysv/linux/opensock.c4
18 files changed, 89 insertions, 45 deletions
diff --git a/ChangeLog b/ChangeLog
index 9d6d4a0816..670cd29b46 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,32 @@
2002-08-11 Roland McGrath <roland@redhat.com>
+ * sunrpc/svc_authux.c (_svcauth_unix): Remove spurious printf (ugh!).
+
+ * sysdeps/i386/bits/byteswap.h (__bswap_16, __bswap_32, __bswap_64):
+ Evaluate argument exactly once. Remove __volatile__ from asm's.
+
+ * include/unistd.h: Use libc_hidden_proto for getdomainname
+ and getlogin_r.
+ * sysdeps/generic/getdomain.c: Add libc_hidden_def.
+ * sysdeps/mach/hurd/getdomain.c: Likewise.
+ * sysdeps/unix/getlogin_r.c: Likewise.
+ * sysdeps/mach/hurd/getlogin_r.c: Likewise.
+ * sysdeps/generic/getlogin_r.c: Likewise.
+
+ * include/rpc/auth_des.h: Use libc_hidden_proto for rtime.
+ * sunrpc/rtime.c: Add libc_hidden_def.
+
+ * include/string.h: Use libc_hidden_proto for basename.
+ * string/basename.c [_LIBC]: Add libc_hidden_def.
+
+ * sysdeps/unix/sysv/linux/opensock.c (__opensock): socket -> __socket.
+
+ * locale/loadarchive.c: munmap -> __munmap throughout.
+
+ * include/netdb.h: Use libc_hidden_proto for gai_strerror.
+ * sysdeps/posix/gai_strerror.c: Add libc_hidden_def.
+ * sysdeps/generic/gai_strerror.c: Likewise.
+
* include/sys/errno.h: New file.
* include/signal.h: No libc_hidden_proto for raise,
diff --git a/include/netdb.h b/include/netdb.h
index 3f3fc18743..c77c4036f4 100644
--- a/include/netdb.h
+++ b/include/netdb.h
@@ -31,6 +31,7 @@ libc_hidden_proto (ruserok_af)
libc_hidden_proto (getaddrinfo)
libc_hidden_proto (getnameinfo)
libc_hidden_proto (freeaddrinfo)
+libc_hidden_proto (gai_strerror)
/* Document internal interfaces. */
extern int __gethostent_r (struct hostent *__restrict __result_buf,
diff --git a/include/rpc/auth_des.h b/include/rpc/auth_des.h
index 4cacffa95b..6dee05961d 100644
--- a/include/rpc/auth_des.h
+++ b/include/rpc/auth_des.h
@@ -3,6 +3,7 @@
#include <sunrpc/rpc/auth_des.h>
libc_hidden_proto (getpublickey)
+libc_hidden_proto (rtime)
extern bool_t xdr_authdes_cred (XDR *xdrs, struct authdes_cred *cred);
extern bool_t xdr_authdes_verf (register XDR *xdrs,
diff --git a/include/string.h b/include/string.h
index d9a5eebcbe..e965cf4752 100644
--- a/include/string.h
+++ b/include/string.h
@@ -71,6 +71,7 @@ libc_hidden_proto (__strdup)
libc_hidden_proto (__strndup)
libc_hidden_proto (__strerror_r)
libc_hidden_proto (__strverscmp)
+libc_hidden_proto (basename)
# ifndef _ISOMAC
# ifndef index
diff --git a/include/unistd.h b/include/unistd.h
index 7c1c5da043..675f12040f 100644
--- a/include/unistd.h
+++ b/include/unistd.h
@@ -10,6 +10,8 @@ libc_hidden_proto (execlp)
libc_hidden_proto (execvp)
libc_hidden_proto (getpid)
libc_hidden_proto (getsid)
+libc_hidden_proto (getdomainname)
+libc_hidden_proto (getlogin_r)
/* Now define the internal interfaces. */
diff --git a/locale/loadarchive.c b/locale/loadarchive.c
index ad06f12438..52f58be839 100644
--- a/locale/loadarchive.c
+++ b/locale/loadarchive.c
@@ -205,7 +205,7 @@ _nl_load_locale_from_archive (int category, const char **namep)
if (calculate_head_size ((const struct locarhead *) result)
> archive_stat.st_size)
{
- (void) munmap (result, archive_stat.st_size);
+ (void) __munmap (result, archive_stat.st_size);
goto close_and_out;
}
__close (fd);
@@ -389,7 +389,7 @@ _nl_load_locale_from_archive (int category, const char **namep)
newp = (struct archmapped *) malloc (sizeof (struct archmapped));
if (newp == NULL)
{
- (void) munmap (addr, to - from);
+ (void) __munmap (addr, to - from);
return NULL;
}
@@ -473,13 +473,13 @@ _nl_archive_subfreeres (void)
assert (archmapped == &headmap);
archmapped = NULL;
- (void) munmap (headmap.ptr, headmap.len);
+ (void) __munmap (headmap.ptr, headmap.len);
am = headmap.next;
while (am != NULL)
{
struct archmapped *dead = am;
am = am->next;
- (void) munmap (dead->ptr, dead->len);
+ (void) __munmap (dead->ptr, dead->len);
free (dead);
}
}
diff --git a/string/basename.c b/string/basename.c
index 358fca7863..5ea1bb0b6a 100644
--- a/string/basename.c
+++ b/string/basename.c
@@ -1,5 +1,5 @@
/* Return the name-within-directory of a file name.
- Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1996,97,98,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,3 +37,6 @@ basename (filename)
char *p = strrchr (filename, '/');
return p ? p + 1 : (char *) filename;
}
+#ifdef _LIBC
+libc_hidden_def (basename)
+#endif
diff --git a/sunrpc/rtime.c b/sunrpc/rtime.c
index 0c6d2effe0..4996f01ba9 100644
--- a/sunrpc/rtime.c
+++ b/sunrpc/rtime.c
@@ -145,3 +145,4 @@ rtime (struct sockaddr_in *addrp, struct rpc_timeval *timep,
timep->tv_usec = 0;
return 0;
}
+libc_hidden_def (rtime)
diff --git a/sunrpc/svc_authux.c b/sunrpc/svc_authux.c
index e5edac71e8..5b64c3d036 100644
--- a/sunrpc/svc_authux.c
+++ b/sunrpc/svc_authux.c
@@ -104,8 +104,6 @@ _svcauth_unix (struct svc_req *rqst, struct rpc_msg *msg)
*/
if ((5 + gid_len) * BYTES_PER_XDR_UNIT + str_len > auth_len)
{
- (void) printf ("bad auth_len gid %d str %d auth %d\n",
- gid_len, str_len, auth_len);
stat = AUTH_BADCRED;
goto done;
}
diff --git a/sysdeps/generic/gai_strerror.c b/sysdeps/generic/gai_strerror.c
index 0783631cbd..932c5910df 100644
--- a/sysdeps/generic/gai_strerror.c
+++ b/sysdeps/generic/gai_strerror.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1996,97,2001,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
@@ -26,3 +26,4 @@ gai_strerror (int code)
snprintf (buffer, sizeof buffer, "Unknown error (%d)", code);
return buffer;
}
+libc_hidden_def (gai_strerror)
diff --git a/sysdeps/generic/getdomain.c b/sysdeps/generic/getdomain.c
index e15a018f78..6074ccfb79 100644
--- a/sysdeps/generic/getdomain.c
+++ b/sysdeps/generic/getdomain.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1994, 1995, 1997, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1994,95,97,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
@@ -60,3 +60,5 @@ stub_warning (getdomainname)
#include <stub-tag.h>
#endif
+
+libc_hidden_def (getdomainname)
diff --git a/sysdeps/generic/getlogin_r.c b/sysdeps/generic/getlogin_r.c
index 534a70a0e4..f2470ee032 100644
--- a/sysdeps/generic/getlogin_r.c
+++ b/sysdeps/generic/getlogin_r.c
@@ -1,5 +1,5 @@
/* Reentrant function to return the current login name. Stub version.
- Copyright (C) 1996 Free Software Foundation, Inc.
+ Copyright (C) 1996, 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,6 +31,7 @@ getlogin_r (name, name_len)
__set_errno (ENOSYS);
return errno;
}
+libc_hidden_def (getlogin_r)
stub_warning (getlogin_r)
#include <stub-tag.h>
diff --git a/sysdeps/i386/bits/byteswap.h b/sysdeps/i386/bits/byteswap.h
index d08a342ab7..6812c61e4d 100644
--- a/sysdeps/i386/bits/byteswap.h
+++ b/sysdeps/i386/bits/byteswap.h
@@ -31,18 +31,20 @@
#if defined __GNUC__ && __GNUC__ >= 2
# define __bswap_16(x) \
(__extension__ \
- ({ register unsigned short int __v; \
- if (__builtin_constant_p (x)) \
- __v = __bswap_constant_16 (x); \
+ ({ register unsigned short int __v, __x = (x); \
+ if (__builtin_constant_p (__x)) \
+ __v = __bswap_constant_16 (__x); \
else \
- __asm__ __volatile__ ("rorw $8, %w0" \
- : "=r" (__v) \
- : "0" ((unsigned short int) (x)) \
- : "cc"); \
+ __asm__ ("rorw $8, %w0" \
+ : "=r" (__v) \
+ : "0" (__x) \
+ : "cc"); \
__v; }))
#else
/* This is better than nothing. */
-# define __bswap_16(x) __bswap_constant_16 (x)
+# define __bswap_16(x) \
+ (__extension__ \
+ ({ register unsigned short int __x = (x); __bswap_constant_16 (__x); }))
#endif
@@ -55,33 +57,33 @@
/* To swap the bytes in a word the i486 processors and up provide the
`bswap' opcode. On i386 we have to use three instructions. */
# if !defined __i486__ && !defined __pentium__ && !defined __pentiumpro__
-# define __bswap_32(x) \
+# define __bswap_32(x) \
(__extension__ \
- ({ register unsigned int __v; \
- if (__builtin_constant_p (x)) \
- __v = __bswap_constant_32 (x); \
+ ({ register unsigned int __v, __x = (x); \
+ if (__builtin_constant_p (__x)) \
+ __v = __bswap_constant_32 (__x); \
else \
- __asm__ __volatile__ ("rorw $8, %w0;" \
- "rorl $16, %0;" \
- "rorw $8, %w0" \
- : "=r" (__v) \
- : "0" ((unsigned int) (x)) \
- : "cc"); \
+ __asm__ ("rorw $8, %w0;" \
+ "rorl $16, %0;" \
+ "rorw $8, %w0" \
+ : "=r" (__v) \
+ : "0" (__x) \
+ : "cc"); \
__v; }))
# else
# define __bswap_32(x) \
(__extension__ \
- ({ register unsigned int __v; \
- if (__builtin_constant_p (x)) \
- __v = __bswap_constant_32 (x); \
+ ({ register unsigned int __v, __x = (x); \
+ if (__builtin_constant_p (__x)) \
+ __v = __bswap_constant_32 (__x); \
else \
- __asm__ __volatile__ ("bswap %0" \
- : "=r" (__v) \
- : "0" ((unsigned int) (x))); \
+ __asm__ ("bswap %0" : "=r" (__v) : "0" (__x)); \
__v; }))
# endif
#else
-# define __bswap_32(x) __bswap_constant_32 (x)
+# define __bswap_16(x) \
+ (__extension__ \
+ ({ register unsigned int __x = (x); __bswap_constant_32 (__x); }))
#endif
@@ -101,11 +103,11 @@
(__extension__ \
({ union { __extension__ unsigned long long int __ll; \
unsigned long int __l[2]; } __w, __r; \
- if (__builtin_constant_p (x)) \
- __r.__ll = __bswap_constant_64 (x); \
+ __w.__ll = (x); \
+ if (__builtin_constant_p (__w.__ll)) \
+ __r.__ll = __bswap_constant_64 (__w.__ll); \
else \
{ \
- __w.__ll = (x); \
__r.__l[0] = __bswap_32 (__w.__l[1]); \
__r.__l[1] = __bswap_32 (__w.__l[0]); \
} \
diff --git a/sysdeps/mach/hurd/getdomain.c b/sysdeps/mach/hurd/getdomain.c
index ed62f6dc6f..04f6e7d1d0 100644
--- a/sysdeps/mach/hurd/getdomain.c
+++ b/sysdeps/mach/hurd/getdomain.c
@@ -1,4 +1,4 @@
-/* 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,3 +29,4 @@ getdomainname (char *name, size_t len)
ssize_t n = _hurd_get_host_config ("/etc/nisdomain", name, len);
return n < 0 ? -1 : 0;
}
+libc_hidden_def (getdomainname)
diff --git a/sysdeps/mach/hurd/getlogin_r.c b/sysdeps/mach/hurd/getlogin_r.c
index a3e51a5f71..f4d5faed76 100644
--- a/sysdeps/mach/hurd/getlogin_r.c
+++ b/sysdeps/mach/hurd/getlogin_r.c
@@ -1,5 +1,5 @@
/* Reentrant function to return the current login name. Hurd version.
- Copyright (C) 1996 Free Software Foundation, Inc.
+ Copyright (C) 1996, 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
@@ -39,3 +39,4 @@ getlogin_r (name, name_len)
strncpy (name, login, name_len);
return 0;
}
+libc_hidden_def (getlogin_r)
diff --git a/sysdeps/posix/gai_strerror.c b/sysdeps/posix/gai_strerror.c
index ecca2bdcb7..f99f02638c 100644
--- a/sysdeps/posix/gai_strerror.c
+++ b/sysdeps/posix/gai_strerror.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1997,2001,02 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Philip Blundell <pjb27@cam.ac.uk>, 1997.
@@ -56,3 +56,4 @@ gai_strerror (int code)
return _("Unknown error");
}
+libc_hidden_def (gai_strerror)
diff --git a/sysdeps/unix/getlogin_r.c b/sysdeps/unix/getlogin_r.c
index 9007947e5f..b50776859f 100644
--- a/sysdeps/unix/getlogin_r.c
+++ b/sysdeps/unix/getlogin_r.c
@@ -1,5 +1,5 @@
/* Reentrant function to return the current login name. Unix version.
- Copyright (C) 1991, 1992, 1996, 1997, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1991,92,96,97,98,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
@@ -51,7 +51,7 @@ getlogin_r (name, name_len)
getlogin(). */
result = __ttyname_r (0, real_tty_path, sizeof (tty_pathname));
-
+
if (result != 0)
return result;
@@ -86,3 +86,4 @@ getlogin_r (name, name_len)
return result;
}
+libc_hidden_def (getlogin_r)
diff --git a/sysdeps/unix/sysv/linux/opensock.c b/sysdeps/unix/sysv/linux/opensock.c
index 86c4d39630..7913886b6c 100644
--- a/sysdeps/unix/sysv/linux/opensock.c
+++ b/sysdeps/unix/sysv/linux/opensock.c
@@ -67,7 +67,7 @@ __opensock (void)
{
assert (last_type != 0);
- result = socket (last_family, last_type, 0);
+ result = __socket (last_family, last_type, 0);
if (result != -1 || errno != EAFNOSUPPORT)
/* Maybe the socket type isn't supported anymore (module is
unloaded). In this case again try to find the type. */
@@ -102,7 +102,7 @@ __opensock (void)
if (afs[cnt].family == AF_NETROM || afs[cnt].family == AF_X25)
type = SOCK_SEQPACKET;
- result = socket (afs[cnt].family, type, 0);
+ result = __socket (afs[cnt].family, type, 0);
if (result != -1)
{
/* Found an available family. */