summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2009-02-07 17:00:27 +0000
committerUlrich Drepper <drepper@redhat.com>2009-02-07 17:00:27 +0000
commitbc16e0c4670f13510d0abb6d868d6b243b0e1b4b (patch)
treea380e2a1cfcec3db54a2328dc202f1b761bc5437
parent26b62243eed34c3ce43da0ea9e469ecc38a73968 (diff)
* grp/compat-initgroups.c [NOT_IN_libc] (__libc_use_alloca): Define.
-rw-r--r--ChangeLog4
-rw-r--r--grp/compat-initgroups.c7
2 files changed, 11 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 155e68401f..e065df1021 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2009-02-07 Ulrich Drepper <drepper@redhat.com>
+
+ * grp/compat-initgroups.c [NOT_IN_libc] (__libc_use_alloca): Define.
+
2009-02-06 Ulrich Drepper <drepper@redhat.com>
[BZ #7095]
diff --git a/grp/compat-initgroups.c b/grp/compat-initgroups.c
index 374f42a0dc..7bcc203fe4 100644
--- a/grp/compat-initgroups.c
+++ b/grp/compat-initgroups.c
@@ -8,6 +8,13 @@ typedef enum nss_status (*end_function) (void);
typedef enum nss_status (*get_function) (struct group *, char *,
size_t, int *);
+/* This file is also used in nscd where __libc_alloca_cutoff is not
+ available. */
+#ifdef NOT_IN_libc
+# define __libc_use_alloca(size) ((size) < __MAX_ALLOCA_CUTOFF * 4)
+#endif
+
+
static enum nss_status
compat_call (service_user *nip, const char *user, gid_t group, long int *start,
long int *size, gid_t **groupsp, long int limit, int *errnop)