svn commit: samba r7592 - in trunk/source/lib: .

jra at samba.org jra at samba.org
Wed Jun 15 00:23:17 GMT 2005


Author: jra
Date: 2005-06-15 00:23:16 +0000 (Wed, 15 Jun 2005)
New Revision: 7592

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=7592

Log:
Don't call getpeeraddr on a disconnected socket.
Jeremy.

Modified:
   trunk/source/lib/util_sock.c


Changeset:
Modified: trunk/source/lib/util_sock.c
===================================================================
--- trunk/source/lib/util_sock.c	2005-06-15 00:22:59 UTC (rev 7591)
+++ trunk/source/lib/util_sock.c	2005-06-15 00:23:16 UTC (rev 7592)
@@ -26,10 +26,13 @@
    some generic functions to get info that really should be hidden in
    particular modules */
 static int client_fd = -1;
+/* What to print out on a client disconnect error. */
+static char client_ip_string[16];
 
 void client_setfd(int fd)
 {
 	client_fd = fd;
+	safe_strcpy(client_ip_string, get_peer_addr(client_fd), sizeof(client_ip_string)-1);
 }
 
 static char *get_socket_addr(int fd)
@@ -418,7 +421,7 @@
 				if (fd == client_fd) {
 					/* Try and give an error message saying what client failed. */
 					DEBUG(0,("read_socket_with_timeout: client %s read error = %s.\n",
-						client_addr(), strerror(errno) ));
+						client_ip_string, strerror(errno) ));
 				} else {
 					DEBUG(0,("read_socket_with_timeout: read error = %s.\n", strerror(errno) ));
 				}
@@ -452,7 +455,7 @@
 			if (fd == client_fd) {
 				/* Try and give an error message saying what client failed. */
 				DEBUG(0,("read_socket_with_timeout: timeout read for client %s. select error = %s.\n",
-					client_addr(), strerror(errno) ));
+					client_ip_string, strerror(errno) ));
 			} else {
 				DEBUG(0,("read_socket_with_timeout: timeout read. select error = %s.\n", strerror(errno) ));
 			}
@@ -481,7 +484,7 @@
 			if (fd == client_fd) {
 				/* Try and give an error message saying what client failed. */
 				DEBUG(0,("read_socket_with_timeout: timeout read to client %s. read error = %s.\n",
-					client_addr(), strerror(errno) ));
+					client_ip_string, strerror(errno) ));
 			} else {
 				DEBUG(0,("read_socket_with_timeout: timeout read. read error = %s.\n", strerror(errno) ));
 			}
@@ -520,7 +523,7 @@
 			if (fd == client_fd) {
 				/* Try and give an error message saying what client failed. */
 				DEBUG(0,("read_data: read failure for %d bytes to client %s. Error = %s\n",
-					(int)(N - total), client_addr(), strerror(errno) ));
+					(int)(N - total), client_ip_string, strerror(errno) ));
 			} else {
 				DEBUG(0,("read_data: read failure for %d. Error = %s\n", (int)(N - total), strerror(errno) ));
 			}
@@ -548,7 +551,7 @@
 			if (fd == client_fd) {
 				/* Try and give an error message saying what client failed. */
 				DEBUG(0,("write_data: write failure in writing to client %s. Error %s\n",
-					client_addr(), strerror(errno) ));
+					client_ip_string, strerror(errno) ));
 			} else {
 				DEBUG(0,("write_data: write failure. Error = %s\n", strerror(errno) ));
 			}



More information about the samba-cvs mailing list