From d604206f4c99915072560aa418bfdc4186dcdcc9 Mon Sep 17 00:00:00 2001 From: deuce <> Date: Mon, 24 Dec 2007 22:55:08 +0000 Subject: [PATCH] Tuck away addrlen from accept() for later use by gethostbyaddr() --- src/sbbs3/mailsrvr.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/sbbs3/mailsrvr.c b/src/sbbs3/mailsrvr.c index 6f6d0b8b0f..db6e2089a8 100644 --- a/src/sbbs3/mailsrvr.c +++ b/src/sbbs3/mailsrvr.c @@ -108,6 +108,7 @@ struct mailproc { typedef struct { SOCKET socket; SOCKADDR_IN client_addr; + socklen_t client_addr_len; } smtp_t,pop3_t; static int lprintf(int level, char *fmt, ...) @@ -709,7 +710,7 @@ static void pop3_thread(void* arg) host=NULL; else host=gethostbyaddr((char *)&pop3.client_addr.sin_addr - ,sizeof(pop3.client_addr.sin_addr),AF_INET); + ,pop3.client_addr_len,AF_INET); if(host!=NULL && host->h_name!=NULL) SAFECOPY(host_name,host->h_name); @@ -1984,7 +1985,7 @@ static void smtp_thread(void* arg) host=NULL; else host=gethostbyaddr ((char *)&smtp.client_addr.sin_addr - ,sizeof(smtp.client_addr.sin_addr),AF_INET); + ,smtp.client_addr_len,AF_INET); if(host!=NULL && host->h_name!=NULL) SAFECOPY(host_name,host->h_name); @@ -4494,6 +4495,7 @@ void DLLCALL mail_server(void* arg) smtp->socket=client_socket; smtp->client_addr=client_addr; + smtp->client_addr_len=client_addr_len; _beginthread (smtp_thread, 0, smtp); served++; } @@ -4562,6 +4564,7 @@ void DLLCALL mail_server(void* arg) pop3->socket=client_socket; pop3->client_addr=client_addr; + pop3->client_addr_len=client_addr_len; _beginthread (pop3_thread, 0, pop3); served++; -- GitLab