diff options
Diffstat (limited to 'sysdeps/posix')
-rw-r--r-- | sysdeps/posix/cuserid.c | 5 | ||||
-rw-r--r-- | sysdeps/posix/getaddrinfo.c | 2 |
2 files changed, 4 insertions, 3 deletions
diff --git a/sysdeps/posix/cuserid.c b/sysdeps/posix/cuserid.c index 68de92ae64..5d9ef83c33 100644 --- a/sysdeps/posix/cuserid.c +++ b/sysdeps/posix/cuserid.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991, 1996, 1998 Free Software Foundation, Inc. +/* Copyright (C) 1991, 1996, 1998, 1999 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,8 @@ cuserid (s) struct passwd pwent; struct passwd *pwptr; - if (__getpwuid_r (__geteuid (), &pwent, buf, sizeof (buf), &pwptr)) + if (__getpwuid_r (__geteuid (), &pwent, buf, sizeof (buf), &pwptr) + || pwptr == NULL) { if (s != NULL) s[0] = '\0'; diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c index f43aa03d1f..6810963357 100644 --- a/sysdeps/posix/getaddrinfo.c +++ b/sysdeps/posix/getaddrinfo.c @@ -206,7 +206,7 @@ gaih_inet_serv (const char *servicename, struct gaih_typeproto *tp, r = __getservbyname_r (servicename, tp->name, &ts, tmpbuf, tmpbuflen, &s); - if (r) + if (r || s == NULL) { if (errno == ERANGE) tmpbuflen *= 2; |