From da56ddf07ce41bd324c5c38db7d9ac03f4887258 Mon Sep 17 00:00:00 2001 From: NeilBrown Date: Wed, 20 Mar 2013 13:03:17 -0400 Subject: [PATCH 1/1] 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 --- utils/gssd/gssd_proc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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)); -- 2.39.2