|
Line
Link Here
|
| 0 |
-- a/src/common.c |
0 |
++ b/src/common.c |
|
Lines 193-200
static int get_gid_by_groupname(const char *gr_name, gid_t *gid)
Link Here
|
| 193 |
} |
193 |
} |
| 194 |
if (err != 0) { |
194 |
if (err != 0) { |
| 195 |
free(buffer); |
195 |
free(buffer); |
|
|
196 |
/* An NSS provider may report an unavailable database as ENOENT. */ |
| 197 |
if (err == ENOENT) |
| 198 |
return LIBROLE_NO_SUCH_GROUP; |
| 196 |
return errno_to_result(err); |
199 |
return errno_to_result(err); |
| 197 |
} |
200 |
} |
| 198 |
if (!grp_ptr) { |
201 |
if (!grp_ptr) { |
| 199 |
free(buffer); |
202 |
free(buffer); |
| 200 |
-- a/src/parser.c |
203 |
++ b/src/parser.c |
|
Lines 297-302
int parse_line(char *line, struct librole_graph *G)
Link Here
|
| 297 |
return result; |
297 |
return result; |
| 298 |
libnss_role_parse_line_error: |
298 |
libnss_role_parse_line_error: |
| 299 |
free(role->list); |
299 |
/* Existing role lists are owned by G and freed by librole_graph_free(). */ |
|
|
300 |
if (!role_exists) |
| 301 |
free(role->list); |
| 300 |
return result; |
302 |
return result; |
| 301 |
} |
303 |
} |