From c5f57c58cae865ec63448282295bb078fc935d39 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 1 Jul 1999 21:13:35 +0000 Subject: Update. 1999-07-01 Andreas Jaeger * inet/rcmd.c (__icheckhost): Fix typo in last patch. 1999-07-01 Andreas Jaeger * wcsmbs/wcschr.c (wcschr): Fix last patch: Add missing semicolon. * wcsmbs/wcsrchr.c (wcsrchr): Likewise. 1999-07-01 Andreas Jaeger * posix/wordexp.c (parse_tilde): Handle failing call to get.*_r functions correctly for non-existing entry. * sysdeps/posix/cuserid.c (cuserid): Likewise. * sysdeps/posix/getaddrinfo.c (gaih_inet_serv): Likewise. --- ChangeLog | 16 ++++++++++++++++ inet/rcmd.c | 3 +-- posix/wordexp.c | 4 ++-- sysdeps/posix/cuserid.c | 5 +++-- sysdeps/posix/getaddrinfo.c | 2 +- wcsmbs/wcschr.c | 2 +- wcsmbs/wcsrchr.c | 2 +- 7 files changed, 25 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index 49c5c4b264..8884c1b918 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,19 @@ +1999-07-01 Andreas Jaeger + + * inet/rcmd.c (__icheckhost): Fix typo in last patch. + +1999-07-01 Andreas Jaeger + + * wcsmbs/wcschr.c (wcschr): Fix last patch: Add missing semicolon. + * wcsmbs/wcsrchr.c (wcsrchr): Likewise. + +1999-07-01 Andreas Jaeger + + * posix/wordexp.c (parse_tilde): Handle failing call to + get.*_r functions correctly for non-existing entry. + * sysdeps/posix/cuserid.c (cuserid): Likewise. + * sysdeps/posix/getaddrinfo.c (gaih_inet_serv): Likewise. + 1999-06-30 Ulrich Drepper * sysdeps/unix/sysv/linux/gethostid.c: Handle failing call to diff --git a/inet/rcmd.c b/inet/rcmd.c index 30f20d1922..2d2ed8044f 100644 --- a/inet/rcmd.c +++ b/inet/rcmd.c @@ -472,8 +472,7 @@ __icheckhost (raddr, lhost, rhost) buffer = __alloca (buflen); save_errno = errno; while (__gethostbyname_r (lhost, &hostbuf, buffer, buflen, &hp, &herr) - != 0 - || hp = NULL) + != 0) if (herr != NETDB_INTERNAL || errno != ERANGE) return (0); else { diff --git a/posix/wordexp.c b/posix/wordexp.c index c43d608aba..b6cf85af32 100644 --- a/posix/wordexp.c +++ b/posix/wordexp.c @@ -311,7 +311,7 @@ parse_tilde (char **word, size_t *word_length, size_t *max_length, buffer = __alloca (buflen); } - if (result == 0 && pwd.pw_dir != NULL) + if (result == 0 && tpwd != NULL && pwd.pw_dir != NULL) { *word = w_addstr (*word, word_length, max_length, pwd.pw_dir); if (*word == NULL) @@ -340,7 +340,7 @@ parse_tilde (char **word, size_t *word_length, size_t *max_length, buffer = __alloca (buflen); } - if (result == 0 && pwd.pw_dir) + if (result == 0 && tpwd != NULL && pwd.pw_dir) *word = w_addstr (*word, word_length, max_length, pwd.pw_dir); else { 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; diff --git a/wcsmbs/wcschr.c b/wcsmbs/wcschr.c index a884c0be4c..01e5b2ac98 100644 --- a/wcsmbs/wcschr.c +++ b/wcsmbs/wcschr.c @@ -28,7 +28,7 @@ wcschr (wcs, wc) do if (*wcs == wc) return (wchar_t *) wcs; - while (*wcs++ != L'\0') + while (*wcs++ != L'\0'); return NULL; } diff --git a/wcsmbs/wcsrchr.c b/wcsmbs/wcsrchr.c index 59184c558b..e041f7a05d 100644 --- a/wcsmbs/wcsrchr.c +++ b/wcsmbs/wcsrchr.c @@ -31,7 +31,7 @@ wcsrchr (wcs, wc) do if (*wcs == wc) retval = wcs; - while (*wcs++ != L'\0') + while (*wcs++ != L'\0'); return (wchar_t *) retval; } -- cgit 1.4.1