svn commit: samba r15329 - in branches/SAMBA_4_0/source/lib/socket: .

abartlet at samba.org abartlet at samba.org
Sat Apr 29 20:01:08 GMT 2006


Author: abartlet
Date: 2006-04-29 20:01:07 +0000 (Sat, 29 Apr 2006)
New Revision: 15329

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

Log:
I'm sick of this patch being in my local tree...

Use inet_ntop to convert IPv6 names to strings.  Don't do a reverse
lookup.

Andrew Bartlett

Modified:
   branches/SAMBA_4_0/source/lib/socket/socket_ipv6.c


Changeset:
Modified: branches/SAMBA_4_0/source/lib/socket/socket_ipv6.c
===================================================================
--- branches/SAMBA_4_0/source/lib/socket/socket_ipv6.c	2006-04-29 17:34:49 UTC (rev 15328)
+++ branches/SAMBA_4_0/source/lib/socket/socket_ipv6.c	2006-04-29 20:01:07 UTC (rev 15329)
@@ -302,7 +302,8 @@
 	socklen_t len = sizeof(*peer_addr);
 	struct socket_address *peer;
 	int ret;
-	struct hostent *he;
+	char addr[128];
+	const char *addr_ret;
 	
 	peer = talloc(mem_ctx, struct socket_address);
 	if (!peer) {
@@ -326,18 +327,18 @@
 
 	peer->sockaddrlen = len;
 
-	he = gethostbyaddr((char *)&peer_addr->sin6_addr, len, AF_INET6);
-
-	if (!he || !he->h_name) {
+	addr_ret = inet_ntop(AF_INET6, &peer_addr->sin6_addr, addr, sizeof(addr));
+	if (addr_ret == NULL) {
 		talloc_free(peer);
 		return NULL;
 	}
-	
-	peer->addr = talloc_strdup(mem_ctx, he->h_name);
-	if (!peer->addr) {
+
+	peer->addr = talloc_strdup(peer, addr_ret);
+	if (peer->addr == NULL) {
 		talloc_free(peer);
 		return NULL;
 	}
+
 	peer->port = ntohs(peer_addr->sin6_port);
 
 	return peer;



More information about the samba-cvs mailing list