A patch for nscd
H.J. Lu
hjl@varesearch.com
Sun Jul 11 17:44:00 GMT 1999
nscd has its own get[a-z]*_r functions. But nscd uses the weak names
to call those functions. As the result of my get[a-z]*_r version
change, which makes get[a-z]*_r strong instead of weak, and a linker
bug fix, the strong versions of get[a-z]*_r in libc.so are used. Here
is a patch to use nscd's own get[a-z]*_r functions.
--
H.J. Lu (hjl@gnu.org)
---
Sun Jul 11 17:36:43 1999 H.J. Lu <hjl@gnu.org>
* nscd/grpcache.c: Add prefix "__" to get[a-z]*_r () to get
nscd's own strong version of the get[a-z]*_r function.
* nscd/hstcache.c: Likwise.
* nscd/pwdcache.c: Likwise.
Index: nscd/grpcache.c
===================================================================
RCS file: /work/cvs/gnu/glibc-2.1/nscd/grpcache.c,v
retrieving revision 1.1.1.9
diff -u -p -r1.1.1.9 grpcache.c
--- nscd/grpcache.c 1999/06/27 01:14:33 1.1.1.9
+++ nscd/grpcache.c 1999/07/12 00:29:58
@@ -208,7 +208,7 @@ addgrbyname (struct database *db, int fd
if (debug_level > 0)
dbg_log (_("Haven't found \"%s\" in group cache!"), key);
- while (getgrnam_r (key, &resultbuf, buffer, buflen, &grp) != 0
+ while (__getgrnam_r (key, &resultbuf, buffer, buflen, &grp) != 0
&& errno == ERANGE)
{
errno = 0;
@@ -236,7 +236,7 @@ addgrbygid (struct database *db, int fd,
if (debug_level > 0)
dbg_log (_("Haven't found \"%d\" in group cache!"), gid);
- while (getgrgid_r (gid, &resultbuf, buffer, buflen, &grp) != 0
+ while (__getgrgid_r (gid, &resultbuf, buffer, buflen, &grp) != 0
&& errno == ERANGE)
{
errno = 0;
Index: nscd/hstcache.c
===================================================================
RCS file: /work/cvs/gnu/glibc-2.1/nscd/hstcache.c,v
retrieving revision 1.1.1.3
diff -u -p -r1.1.1.3 hstcache.c
--- nscd/hstcache.c 1999/06/27 01:14:33 1.1.1.3
+++ nscd/hstcache.c 1999/07/12 00:30:53
@@ -329,8 +329,8 @@ addhstbyaddr (struct database *db, int f
inet_ntop (AF_INET, key, buf, sizeof (buf)));
}
- while (gethostbyaddr_r (key, INADDRSZ, AF_INET, &resultbuf, buffer, buflen,
- &hst, &h_errno) != 0
+ while (__gethostbyaddr_r (key, INADDRSZ, AF_INET, &resultbuf, buffer, buflen,
+ &hst, &h_errno) != 0
&& h_errno == NETDB_INTERNAL
&& errno == ERANGE)
{
@@ -396,8 +396,8 @@ addhstbyaddrv6 (struct database *db, int
inet_ntop (AF_INET6, key, buf, sizeof (buf)));
}
- while (gethostbyaddr_r (key, IN6ADDRSZ, AF_INET6, &resultbuf, buffer, buflen,
- &hst, &h_errno) != 0
+ while (__gethostbyaddr_r (key, IN6ADDRSZ, AF_INET6, &resultbuf, buffer, buflen,
+ &hst, &h_errno) != 0
&& h_errno == NETDB_INTERNAL
&& errno == ERANGE)
{
Index: nscd/pwdcache.c
===================================================================
RCS file: /work/cvs/gnu/glibc-2.1/nscd/pwdcache.c,v
retrieving revision 1.1.1.6
diff -u -p -r1.1.1.6 pwdcache.c
--- nscd/pwdcache.c 1999/06/27 01:14:33 1.1.1.6
+++ nscd/pwdcache.c 1999/07/12 00:31:29
@@ -206,7 +206,7 @@ addpwbyname (struct database *db, int fd
if (debug_level > 0)
dbg_log (_("Haven't found \"%s\" in password cache!"), key);
- while (getpwnam_r (key, &resultbuf, buffer, buflen, &pwd) != 0
+ while (__getpwnam_r (key, &resultbuf, buffer, buflen, &pwd) != 0
&& errno == ERANGE)
{
errno = 0;
@@ -234,7 +234,7 @@ addpwbyuid (struct database *db, int fd,
if (debug_level > 0)
dbg_log (_("Haven't found \"%d\" in password cache!"), uid);
- while (getpwuid_r (uid, &resultbuf, buffer, buflen, &pwd) != 0
+ while (__getpwuid_r (uid, &resultbuf, buffer, buflen, &pwd) != 0
&& errno == ERANGE)
{
errno = 0;
More information about the Libc-hacker
mailing list