diff --git a/src/sbbs3/telgate.cpp b/src/sbbs3/telgate.cpp index 8321db2d25abe1352f7f775db00151332aad500f..ef0bb1ce91ad22f982120f3c7ad450fe6dac44fe 100644 --- a/src/sbbs3/telgate.cpp +++ b/src/sbbs3/telgate.cpp @@ -81,9 +81,9 @@ void sbbs_t::telnet_gate(char* destaddr, ulong mode) addr.sin_family = AF_INET; if((i=bind(remote_socket, (struct sockaddr *) &addr, sizeof (addr)))!=0) { - close_socket(remote_socket); - lprintf("!ERROR %d (%d) binding to socket %d",i, ERROR_VALUE, socket); + lprintf("!ERROR %d (%d) binding to socket %d",i, ERROR_VALUE, remote_socket); bprintf("!ERROR %d (%d) binding to socket\r\n",i, ERROR_VALUE); + close_socket(remote_socket); return; } @@ -93,20 +93,20 @@ void sbbs_t::telnet_gate(char* destaddr, ulong mode) addr.sin_port = htons(port); if((i=connect(remote_socket, (struct sockaddr *)&addr, sizeof(addr)))!=0) { - close_socket(remote_socket); lprintf("!ERROR %d (%d) connecting to server: %s" ,i,ERROR_VALUE, destaddr); bprintf("!ERROR %d (%d) connecting to server: %s\r\n" ,i,ERROR_VALUE, destaddr); + close_socket(remote_socket); return; } l=1; if((i = ioctlsocket(remote_socket, FIONBIO, &l))!=0) { - close_socket(remote_socket); lprintf("!ERROR %d (%d) disabling socket blocking" ,i, ERROR_VALUE); + close_socket(remote_socket); return; }