summary refs log tree commit diff
path: root/nss
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1999-07-09 20:58:54 +0000
committerUlrich Drepper <drepper@redhat.com>1999-07-09 20:58:54 +0000
commitc2fa5b5a4f4d2f0f71918f4cd8b5b67a26d4b72c (patch)
tree3682f88638ed44e98e8c0d0c284d209d822b1804 /nss
parenta828c2f5332fbee41968ccc57115d0d8fc105b85 (diff)
downloadglibc-c2fa5b5a4f4d2f0f71918f4cd8b5b67a26d4b72c.tar.gz
glibc-c2fa5b5a4f4d2f0f71918f4cd8b5b67a26d4b72c.tar.xz
glibc-c2fa5b5a4f4d2f0f71918f4cd8b5b67a26d4b72c.zip
Update.
1999-07-09  Cristian Gafton  <gafton@redhat.com>

	* nscd/nscd_gethst_r.c (nscd_gethst_r): Make sure
	resultbuf->h_addr_list addresses are correctly aligned.

	* sysdeps/i386/bits/string.h (__memcpy_c): Help some stupid old
	compilers.
	(__memset_cc): Likewise.
Diffstat (limited to 'nss')
-rw-r--r--nss/getXXbyYY_r.c27
-rw-r--r--nss/getXXent_r.c28
2 files changed, 55 insertions, 0 deletions
diff --git a/nss/getXXbyYY_r.c b/nss/getXXbyYY_r.c
index ac10f4ea7a..a54ae67bb7 100644
--- a/nss/getXXbyYY_r.c
+++ b/nss/getXXbyYY_r.c
@@ -208,5 +208,32 @@ done:
   return status == NSS_STATUS_SUCCESS ? 0 : errno;
 }
 
+#if defined SHARED && DO_VERSIONING
+#define OLD(name) OLD1 (name)
+#define OLD1(name) __old_##name
+
+int
+OLD (REENTRANT_NAME) (ADD_PARAMS, LOOKUP_TYPE *resbuf, char *buffer,
+		      size_t buflen, LOOKUP_TYPE **result H_ERRNO_PARM)
+{
+  int ret = INTERNAL (REENTRANT_NAME) (ADD_VARIABLES, resbuf, buffer,
+  				       buflen, result H_ERRNO_VAR);
+
+  if (ret != 0)
+    ret = -1;
+
+  return ret;
+}
+
+#define do_symbol_version(real, name, version) \
+  symbol_version(real, name, version)
+do_symbol_version(OLD (REENTRANT_NAME), REENTRANT_NAME, GLIBC_2.0);
+
+#define do_default_symbol_version(real, name, version) \
+  default_symbol_version(real, name, version)
+do_default_symbol_version(INTERNAL (REENTRANT_NAME), REENTRANT_NAME,
+			  GLIBC_2.1.2);
+#else
 #define do_weak_alias(n1, n2) weak_alias (n1, (n2))
 do_weak_alias (INTERNAL (REENTRANT_NAME), REENTRANT_NAME)
+#endif
diff --git a/nss/getXXent_r.c b/nss/getXXent_r.c
index 57bb99f081..6f6f22ad0b 100644
--- a/nss/getXXent_r.c
+++ b/nss/getXXent_r.c
@@ -290,5 +290,33 @@ INTERNAL (REENTRANT_GETNAME) (LOOKUP_TYPE *resbuf, char *buffer, size_t buflen,
   *result = status == NSS_STATUS_SUCCESS ? resbuf : NULL;
   return status == NSS_STATUS_SUCCESS ? 0 : errno;
 }
+#if defined SHARED && DO_VERSIONING
+#define OLD(name) OLD1 (name)
+#define OLD1(name) __old_##name
+
+int
+OLD (REENTRANT_GETNAME) (LOOKUP_TYPE *resbuf, char *buffer, size_t buflen,
+			 LOOKUP_TYPE **result H_ERRNO_PARM)
+{
+  int ret = INTERNAL (REENTRANT_GETNAME) (resbuf, buffer, buflen,
+					  result H_ERRNO_VAR);
+
+  if (ret != 0)
+    ret = -1;
+
+  return ret;
+}
+
+#define do_symbol_version(real, name, version) \
+  symbol_version(real, name, version)
+do_symbol_version(OLD (REENTRANT_GETNAME), REENTRANT_GETNAME,
+		  GLIBC_2.0);
+
+#define do_default_symbol_version(real, name, version) \
+  default_symbol_version(real, name, version)
+do_default_symbol_version(INTERNAL (REENTRANT_GETNAME),
+			  REENTRANT_GETNAME, GLIBC_2.1.2);
+#else
 #define do_weak_alias(n1, n2) weak_alias (n1, n2)
 do_weak_alias (INTERNAL (REENTRANT_GETNAME), REENTRANT_GETNAME)
+#endif