diff options
-rw-r--r-- | ChangeLog | 14 | ||||
-rw-r--r-- | elf/rtld.c | 4 | ||||
-rw-r--r-- | nscd/nscd_initgroups.c | 2 |
3 files changed, 18 insertions, 2 deletions
@@ -1,3 +1,17 @@ +2006-09-29 Ulrich Drepper <drepper@redhat.com> + + [BZ #3273] + * nscd/nscd_initgroups.c (__nscd_getgrouplist): It is OK to have + found no group members. + Patch by Petr Baudis. + +2006-09-29 Jakub Jelinek <jakub@redhat.com> + + * elf/rtld.c (_dl_start_final): If not USE___THREAD, don't + assert bootstrap_map.l_tls_modid is zero. + (_dl_start): Initialize bootstrap_map.l_tls_modid to 0 + if USE___THREAD. + 2006-09-27 Ulrich Drepper <drepper@redhat.com> * libio/stdio.h: Move open_wmemstream prototype to ... diff --git a/elf/rtld.c b/elf/rtld.c index 9a21b8bc6f..718fa13b71 100644 --- a/elf/rtld.c +++ b/elf/rtld.c @@ -303,7 +303,6 @@ _dl_start_final (void *arg, struct dl_start_final_info *info) GL(dl_rtld_map).l_tls_offset = info->l.l_tls_offset; GL(dl_rtld_map).l_tls_modid = 1; # else - assert (info->l.l_tls_modid == 0); # if NO_TLS_OFFSET != 0 GL(dl_rtld_map).l_tls_offset = NO_TLS_OFFSET; # endif @@ -389,6 +388,9 @@ _dl_start (void *arg) ++cnt) bootstrap_map.l_info[cnt] = 0; # endif +# if USE___THREAD + bootstrap_map.l_tls_modid = 0; +# endif #endif /* Figure out the run-time load address of the dynamic linker itself. */ diff --git a/nscd/nscd_initgroups.c b/nscd/nscd_initgroups.c index 3d82275d7e..97a037d4a9 100644 --- a/nscd/nscd_initgroups.c +++ b/nscd/nscd_initgroups.c @@ -91,7 +91,7 @@ __nscd_getgrouplist (const char *user, gid_t group, long int *size, doesn't use memcpy but instead copies each array element one by one. */ assert (sizeof (int32_t) == sizeof (gid_t)); - assert (initgr_resp->ngrps > 0); + assert (initgr_resp->ngrps >= 0); /* Make sure we have enough room. We always count GROUP in even though we might not end up adding it. */ |