svn commit: r199221 - head/lib/libc/net

Hajimu UMEMOTO ume at FreeBSD.org
Thu Nov 12 11:54:13 UTC 2009


Author: ume
Date: Thu Nov 12 11:54:12 2009
New Revision: 199221
URL: http://svn.freebsd.org/changeset/base/199221

Log:
  Add missing IEEE1394 support dropped during merge from NetBSD.

Modified:
  head/lib/libc/net/getnameinfo.c

Modified: head/lib/libc/net/getnameinfo.c
==============================================================================
--- head/lib/libc/net/getnameinfo.c	Thu Nov 12 11:27:07 2009	(r199220)
+++ head/lib/libc/net/getnameinfo.c	Thu Nov 12 11:54:12 2009	(r199221)
@@ -52,6 +52,7 @@ __FBSDID("$FreeBSD$");
 #include <net/if.h>
 #include <net/if_dl.h>
 #include <net/if_types.h>
+#include <net/firewire.h>
 #include <netinet/in.h>
 #include <arpa/inet.h>
 #include <arpa/nameser.h>
@@ -385,6 +386,7 @@ getnameinfo_link(const struct sockaddr *
 {
 	const struct sockaddr_dl *sdl =
 	    (const struct sockaddr_dl *)(const void *)sa;
+	const struct fw_hwaddr *iha;
 	int n;
 
 	if (serv != NULL && servlen > 0)
@@ -400,6 +402,15 @@ getnameinfo_link(const struct sockaddr *
 	}
 
 	switch (sdl->sdl_type) {
+	case IFT_IEEE1394:
+		if (sdl->sdl_alen < sizeof(iha->sender_unique_ID_hi) +
+		    sizeof(iha->sender_unique_ID_lo))
+			return EAI_FAMILY;
+		iha = (const struct fw_hwaddr *)(const void *)LLADDR(sdl);
+		return hexname((const u_int8_t *)&iha->sender_unique_ID_hi,
+		    sizeof(iha->sender_unique_ID_hi) +
+		    sizeof(iha->sender_unique_ID_lo),
+		    host, hostlen);
 	/*
 	 * The following have zero-length addresses.
 	 * IFT_ATM	(net/if_atmsubr.c)


More information about the svn-src-all mailing list