summaryrefslogtreecommitdiff
path: root/sftp-server.c
diff options
context:
space:
mode:
authorDarren Tucker <dtucker@dtucker.net>2021-08-02 18:56:29 +1000
committerDarren Tucker <dtucker@dtucker.net>2021-08-02 18:56:29 +1000
commit1e11fb24066f3fc259ee30db3dbb2a3127e05956 (patch)
treeb569c5f37c2010b0d683decece036dd1997bb592 /sftp-server.c
parent0f494236b49fb48c1ef33669f14822ca4f3ce2f4 (diff)
downloadopenssh-git-1e11fb24066f3fc259ee30db3dbb2a3127e05956.tar.gz
Check for RLIMIT_NOFILE before trying to use it.
Diffstat (limited to 'sftp-server.c')
-rw-r--r--sftp-server.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sftp-server.c b/sftp-server.c
index 4972b2a6..c89c1f42 100644
--- a/sftp-server.c
+++ b/sftp-server.c
@@ -1491,13 +1491,13 @@ process_extended_limits(u_int32_t id)
struct sshbuf *msg;
int r;
uint64_t nfiles = 0;
-#ifdef HAVE_GETRLIMIT
+#if defined(HAVE_GETRLIMIT) && defined(RLIMIT_NOFILE)
struct rlimit rlim;
#endif
debug("request %u: limits", id);
-#ifdef HAVE_GETRLIMIT
+#if defined(HAVE_GETRLIMIT) && defined(RLIMIT_NOFILE)
if (getrlimit(RLIMIT_NOFILE, &rlim) != -1 && rlim.rlim_cur > 5)
nfiles = rlim.rlim_cur - 5; /* stdio(3) + syslog + spare */
#endif