summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKen Raeburn <raeburn@mit.edu>2008-06-27 00:31:59 +0000
committerKen Raeburn <raeburn@mit.edu>2008-06-27 00:31:59 +0000
commit4b680153e7696af2a2c50d7fbdb24e52d11659ff (patch)
tree363e9f7058e26341ad247b683f6ec6484b734d8c /src
parentba6b8b71eae805e4cbbe856ee8f1b9c790d6f143 (diff)
downloadkrb5-4b680153e7696af2a2c50d7fbdb24e52d11659ff.tar.gz
krb5-4b680153e7696af2a2c50d7fbdb24e52d11659ff.tar.xz
krb5-4b680153e7696af2a2c50d7fbdb24e52d11659ff.zip
Don't do FD_SETSIZE check on Windows.
Also, for form's sake, use closesocket instead of close inside the check. Kevin or Jeff, could you please verify that the code works again? ticket: 5925 status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@20479 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/lib/krb5/os/sendto_kdc.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/krb5/os/sendto_kdc.c b/src/lib/krb5/os/sendto_kdc.c
index 87d78c8a0..2063b302f 100644
--- a/src/lib/krb5/os/sendto_kdc.c
+++ b/src/lib/krb5/os/sendto_kdc.c
@@ -671,12 +671,14 @@ start_connection (struct conn_state *state,
dprint("socket: %m creating with af %d\n", state->err, ai->ai_family);
return -1; /* try other hosts */
}
+#ifndef _WIN32 /* On Windows FD_SETSIZE is a count, not a max value. */
if (fd >= FD_SETSIZE) {
- close(fd);
+ closesocket(fd);
state->err = EMFILE;
dprint("socket: fd %d too high\n", fd);
return -1;
}
+#endif
set_cloexec_fd(fd);
/* Make it non-blocking. */
if (ai->ai_socktype == SOCK_STREAM) {