From: NeilBrown Date: Wed, 20 Mar 2013 17:03:17 +0000 (-0400) Subject: gssd: use correct test for success of getrlimit() X-Git-Tag: debian/1%1.2.8-1~11^2^2~34 X-Git-Url: https://git.decadent.org.uk/gitweb/?p=nfs-utils.git;a=commitdiff_plain;h=da56ddf07ce41bd324c5c38db7d9ac03f4887258 gssd: use correct test for success of getrlimit() commit 7c5cb5e732a4b8704f8c79ec819c5d271e040339 gssd: base the size of the fd array on the RLIMIT_NOFILE limit. didn't actually work as claimed. It only uses the returned value if getrlimit() returns -1 -- which of course it only does when there was an error. So change the test to "== 0". Reported-by: Leonardo Chiquitto< lchiquitto@suse.com> Signed-off-by: NeilBrown Signed-off-by: Steve Dickson --- diff --git a/utils/gssd/gssd_proc.c b/utils/gssd/gssd_proc.c index c17ab3b..e10bda6 100644 --- a/utils/gssd/gssd_proc.c +++ b/utils/gssd/gssd_proc.c @@ -477,7 +477,7 @@ init_client_list(void) TAILQ_INIT(&clnt_list); /* Eventually plan to grow/shrink poll array: */ pollsize = FD_ALLOC_BLOCK; - if (getrlimit(RLIMIT_NOFILE, &rlim) < 0 && + if (getrlimit(RLIMIT_NOFILE, &rlim) == 0 && rlim.rlim_cur != RLIM_INFINITY) pollsize = rlim.rlim_cur; pollarray = calloc(pollsize, sizeof(struct pollfd));