1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-29 11:41:21 +03:00

nsswitch: handle missing actions properly

Some internal functions need to know if a database has a nonzero
list of actions; success getting the database does not guarantee
that.  Add checks for such as needed.

Skip the ":" in each nsswitch.conf line so as not to add a dummy
action libnss_:.so

See also https://bugzilla.redhat.com/show_bug.cgi?id=1906066

Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
This commit is contained in:
DJ Delorie
2020-12-09 21:46:30 -05:00
parent 2ee7711bdd
commit d2e929a907
12 changed files with 110 additions and 4 deletions

View File

@ -212,7 +212,8 @@ process_line (struct nss_database_data *data, char *line)
if (line[0] == '\0' || name == line)
/* Syntax error. Skip this line. */
return true;
*line++ = '\0';
while (line[0] != '\0' && (isspace (line[0]) || line[0] == ':'))
*line++ = '\0';
int db = name_to_database_index (name);
if (db < 0)