mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
* posix/wordexp.c (w_addword): Free word if realloc fails and it
was allocated here. [Coverity CID 219] * posix/getconf.c (print_all): Free confstr data after printing. [Coverity CID 218] * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if list allocation fails. [Coverity CID 215] * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition. [Coverity CID 213] * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if string is NULL. [Coverity CID 212] * argp/Makefile: Add rules to build and run bug-argp1. * argp/bug-argp1.c: New file. * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find end of string. * stdlib/canonicalize.c (__realpath): Likewise. * locale/programs/ld-time.c (time_finish): Don't dereference NULL pointer. [Coverity CID 206] * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map in statically linked code. * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in statically built code, be prepared to have no link map. [Coverity CID 205] * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in dgettext calls. [Coverity CID 204] * argp/argp-help.c (struct uparams): Remove valid member. Change the one user. (uparam_names): Reduce size. Avoid relative relocations. Moved to read-only segment. (fill_in_uparams): Update for new layout. * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be assumed to always be != NULL. [Coverity CID 202] * argp/argp-help.c (hol_entry_help): Remove some dead code [Coverity CID 200]. * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize away a few more unconditional yperr2nss calls. (_nss_nis_getservbyname_r): Likewise.
This commit is contained in:
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005
|
||||
/* Copyright (C) 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005, 2006
|
||||
Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
|
||||
@ -70,6 +70,7 @@ static const struct
|
||||
#include "databases.def"
|
||||
#undef DEFINE_DATABASE
|
||||
};
|
||||
#define ndatabases (sizeof (databases) / sizeof (databases[0]))
|
||||
|
||||
|
||||
__libc_lock_define_initialized (static, lock)
|
||||
@ -211,7 +212,7 @@ __nss_configure_lookup (const char *dbname, const char *service_line)
|
||||
service_user *new_db;
|
||||
size_t cnt;
|
||||
|
||||
for (cnt = 0; cnt < sizeof databases; ++cnt)
|
||||
for (cnt = 0; cnt < ndatabases; ++cnt)
|
||||
{
|
||||
int cmp = strcmp (dbname, databases[cnt].name);
|
||||
if (cmp == 0)
|
||||
@ -223,7 +224,7 @@ __nss_configure_lookup (const char *dbname, const char *service_line)
|
||||
}
|
||||
}
|
||||
|
||||
if (cnt == sizeof databases)
|
||||
if (cnt == ndatabases)
|
||||
{
|
||||
__set_errno (EINVAL);
|
||||
return -1;
|
||||
|
Reference in New Issue
Block a user