]> andersk Git - openssh.git/commitdiff
- (djm) OpenBSD CVS Sync
authordjm <djm>
Wed, 25 Sep 2002 02:19:08 +0000 (02:19 +0000)
committerdjm <djm>
Wed, 25 Sep 2002 02:19:08 +0000 (02:19 +0000)
   - stevesk@cvs.openbsd.org 2002/09/23 20:46:27
     [canohost.c]
     change get_peer_ipaddr() and get_local_ipaddr() to not return NULL for
     non-sockets; fixes a problem passing NULL to snprintf(). ok markus@

ChangeLog
canohost.c

index ea0db4c9ba799a60e1ace2ebe34fb561ea7c5486..25365eeb5b38d0e2eb1491145ca3e56fcb51ec47 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+20020923
+ - (djm) OpenBSD CVS Sync
+   - stevesk@cvs.openbsd.org 2002/09/23 20:46:27
+     [canohost.c]
+     change get_peer_ipaddr() and get_local_ipaddr() to not return NULL for
+     non-sockets; fixes a problem passing NULL to snprintf(). ok markus@
+
 20020923
  - (tim) [configure.ac] s/return/exit/ patch by dtucker@zip.com.au
 
index 8081ed598eab0685726a22c2f8947049a6904c53..a457d3c52243bbdfaa43f3593fd36642fce540e7 100644 (file)
@@ -12,7 +12,7 @@
  */
 
 #include "includes.h"
-RCSID("$OpenBSD: canohost.c,v 1.33 2002/07/09 11:56:27 itojun Exp $");
+RCSID("$OpenBSD: canohost.c,v 1.34 2002/09/23 20:46:27 stevesk Exp $");
 
 #include "packet.h"
 #include "xmalloc.h"
@@ -218,18 +218,12 @@ get_socket_address(int socket, int remote, int flags)
 
        if (remote) {
                if (getpeername(socket, (struct sockaddr *)&addr, &addrlen)
-                   < 0) {
-                       debug("get_socket_ipaddr: getpeername failed: %.100s",
-                           strerror(errno));
+                   < 0)
                        return NULL;
-               }
        } else {
                if (getsockname(socket, (struct sockaddr *)&addr, &addrlen)
-                   < 0) {
-                       debug("get_socket_ipaddr: getsockname failed: %.100s",
-                           strerror(errno));
+                   < 0)
                        return NULL;
-               }
        }
        /* Get the address in ascii. */
        if (getnameinfo((struct sockaddr *)&addr, addrlen, ntop, sizeof(ntop),
@@ -243,13 +237,21 @@ get_socket_address(int socket, int remote, int flags)
 char *
 get_peer_ipaddr(int socket)
 {
-       return get_socket_address(socket, 1, NI_NUMERICHOST);
+       char *p;
+
+       if ((p = get_socket_address(socket, 1, NI_NUMERICHOST)) != NULL)
+               return p;
+       return xstrdup("UNKNOWN");
 }
 
 char *
 get_local_ipaddr(int socket)
 {
-       return get_socket_address(socket, 0, NI_NUMERICHOST);
+       char *p;
+
+       if ((p = get_socket_address(socket, 0, NI_NUMERICHOST)) != NULL)
+               return p;
+       return xstrdup("UNKNOWN");
 }
 
 char *
This page took 0.138944 seconds and 5 git commands to generate.