diff --git a/src/sexpots/sexpots.c b/src/sexpots/sexpots.c
index 04f0158fb2e83410882ac7b25ef0f965427ab7b8..9636db412667f177d37382ebf0b04ed1e297332a 100644
--- a/src/sexpots/sexpots.c
+++ b/src/sexpots/sexpots.c
@@ -1290,8 +1290,19 @@ BOOL handle_call(void)
 				lprintf(LOG_WARNING,"Socket Disconnected");
 				break;
 			}
-			lprintf(LOG_ERR,"SOCKET RECV ERROR %d",ERROR_VALUE);
-			continue;
+			if(ERROR_VALUE == EAGAIN)
+				continue;
+        	else if(ERROR_VALUE == ENOTSOCK)
+   	            lprintf(LOG_WARNING,"Socket closed by peer on receive");
+       	    else if(ERROR_VALUE==ECONNRESET) 
+				lprintf(LOG_WARNING,"Connection reset by peer on receive");
+			else if(ERROR_VALUE==ESHUTDOWN)
+				lprintf(LOG_WARNING,"Socket shutdown on receive");
+       	    else if(ERROR_VALUE==ECONNABORTED) 
+				lprintf(LOG_WARNING,"Connection aborted by peer on receive");
+			else
+				lprintf(LOG_ERR,"SOCKET RECV ERROR %d",ERROR_VALUE);
+			break;
 		}
 
 		if(telnet)