From 4d8ed62ca2ad22127747341c161481f18932d823 Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Fri, 9 Mar 2001 22:03:13 +0000
Subject: [PATCH] Moved socket_check() here (from execmisc.cpp).

---
 src/sbbs3/main.cpp | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/src/sbbs3/main.cpp b/src/sbbs3/main.cpp
index c1ea103c01..5e7c8e9d63 100644
--- a/src/sbbs3/main.cpp
+++ b/src/sbbs3/main.cpp
@@ -185,6 +185,30 @@ int close_socket(SOCKET sock)
 	return(result);
 }
 
+/* Return true if connected */
+bool socket_check(SOCKET sock)
+{
+	char	ch;
+	int		i;
+	fd_set	socket_set;
+	struct	timeval tv;
+
+	FD_ZERO(&socket_set);
+	FD_SET(sock,&socket_set);
+
+	tv.tv_sec=0;
+	tv.tv_usec=0;
+
+	i=select(sock+1,&socket_set,NULL,NULL,&tv);
+	if(i==SOCKET_ERROR)
+		return(false);
+
+	if(i==0 || recv(sock,&ch,1,MSG_PEEK)==1) 
+		return(true);
+
+	return(false);
+}
+
 u_long resolve_ip(char *addr)
 {
 	HOSTENT*	host;
-- 
GitLab