From 1ca933cfe8fb2e72e9079a14b8217dc6f37a6c0b Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Tue, 4 Feb 2003 01:14:16 +0000 Subject: [PATCH] Treats errno 22 (EINVAL) when accepting the same as ENOTSOCK (socket closed). --- src/sbbs3/ftpsrvr.c | 2 +- src/sbbs3/mailsrvr.c | 4 ++-- src/sbbs3/main.cpp | 2 +- src/sbbs3/services.c | 2 +- src/sbbs3/websrvr.c | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/sbbs3/ftpsrvr.c b/src/sbbs3/ftpsrvr.c index dbe3f54956..23ecee4258 100644 --- a/src/sbbs3/ftpsrvr.c +++ b/src/sbbs3/ftpsrvr.c @@ -4624,7 +4624,7 @@ void DLLCALL ftp_server(void* arg) if(client_socket == INVALID_SOCKET) { - if(ERROR_VALUE == ENOTSOCK || ERROR_VALUE == EINTR) + if(ERROR_VALUE == ENOTSOCK || ERROR_VALUE == EINTR || ERROR_VALUE == EINVAL) lprintf("0000 FTP socket closed while listening"); else lprintf("0000 !ERROR %d accepting connection", ERROR_VALUE); diff --git a/src/sbbs3/mailsrvr.c b/src/sbbs3/mailsrvr.c index 95af9fc2dc..1f5ec0e7f5 100644 --- a/src/sbbs3/mailsrvr.c +++ b/src/sbbs3/mailsrvr.c @@ -3427,7 +3427,7 @@ void DLLCALL mail_server(void* arg) if(client_socket == INVALID_SOCKET) { - if(ERROR_VALUE == ENOTSOCK) + if(ERROR_VALUE == ENOTSOCK || ERROR_VALUE == EINVAL) lprintf("0000 SMTP socket closed while listening"); else lprintf("%04d !ERROR %d accept failed", server_socket, ERROR_VALUE); @@ -3477,7 +3477,7 @@ void DLLCALL mail_server(void* arg) if(client_socket == INVALID_SOCKET) { - if(ERROR_VALUE == ENOTSOCK) + if(ERROR_VALUE == ENOTSOCK || ERROR_VALUE == EINVAL) lprintf("%04d POP3 socket closed while listening",pop3_socket); else lprintf("%04d !ERROR %d accept failed", pop3_socket, ERROR_VALUE); diff --git a/src/sbbs3/main.cpp b/src/sbbs3/main.cpp index 0bbfd52d4e..dc46365663 100644 --- a/src/sbbs3/main.cpp +++ b/src/sbbs3/main.cpp @@ -3803,7 +3803,7 @@ void DLLCALL bbs_thread(void* arg) } if(client_socket == INVALID_SOCKET) { - if(ERROR_VALUE == ENOTSOCK || ERROR_VALUE == EINTR) { + if(ERROR_VALUE == ENOTSOCK || ERROR_VALUE == EINTR || ERROR_VALUE == EINVAL) { lputs("BBS socket closed"); break; } diff --git a/src/sbbs3/services.c b/src/sbbs3/services.c index c8cfd63933..c90d85019d 100644 --- a/src/sbbs3/services.c +++ b/src/sbbs3/services.c @@ -1614,7 +1614,7 @@ void DLLCALL services_thread(void* arg) /* TCP */ if((client_socket=accept(service[i].socket ,(struct sockaddr *)&client_addr, &client_addr_len))==INVALID_SOCKET) { - if(ERROR_VALUE == ENOTSOCK) + if(ERROR_VALUE == ENOTSOCK || ERROR_VALUE == EINVAL) lprintf("%04d %s socket closed while listening" ,service[i].socket, service[i].protocol); else diff --git a/src/sbbs3/websrvr.c b/src/sbbs3/websrvr.c index 427ce44bba..6389f52aeb 100644 --- a/src/sbbs3/websrvr.c +++ b/src/sbbs3/websrvr.c @@ -2283,7 +2283,7 @@ void DLLCALL web_server(void* arg) } if(client_socket == INVALID_SOCKET) { - if(ERROR_VALUE == ENOTSOCK || ERROR_VALUE == EINTR) { + if(ERROR_VALUE == ENOTSOCK || ERROR_VALUE == EINTR || ERROR_VALUE == EINVAL) { lprintf("Web Server socket closed"); break; } -- GitLab