Dear all,

aren't site-local IPv6 addresses depreceated (RFC 3879)? So shouldn't
the site-local stuff be removed?

Best regards
Michael

On Jan 4, 2008, at 10:56 PM, Crist J. Clark wrote:

Anyone up for adding text to the scopeid field in the ifconfig(8)
output for IPv6 addresses? Other OSes do. To avoid too much
disruption to the current format, the text is appended after the
currently printed hexadecimal field.

Example:

fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       options=8<VLAN_MTU>
inet6 fe80::290:27ff:fe13:2540%fxp0 prefixlen 64 scopeid 0x5(site-local)

While we're at it, update the in6.h file to include all scopes
in RFC4291.

Look OK? Anyone up for applying these?

Patches (diffs off of a not-too-current CURRENT):

Index: sbin/ifconfig/af_inet6.c
===================================================================
RCS file: /ncvs/freebsd/src/sbin/ifconfig/af_inet6.c,v
retrieving revision 1.5
diff -u -r1.5 af_inet6.c
--- sbin/ifconfig/af_inet6.c    3 Feb 2007 03:40:33 -0000       1.5
+++ sbin/ifconfig/af_inet6.c    4 Jan 2008 21:53:26 -0000
@@ -290,8 +290,31 @@
        if ((flags6 & IN6_IFF_TEMPORARY) != 0)
                printf("temporary ");

-        if (scopeid)
-               printf("scopeid 0x%x ", scopeid);
+        if (scopeid) {
+               printf("scopeid 0x%x", scopeid);
+               switch (scopeid) {
+               case __IPV6_ADDR_SCOPE_INTFACELOCAL:
+                       printf("(interface-local) ");
+                       break;
+               case __IPV6_ADDR_SCOPE_LINKLOCAL:
+                       printf("(link-local) ");
+                       break;
+               case __IPV6_ADDR_SCOPE_ADMINLOCAL:
+                       printf("(admin-local) ");
+                       break;
+               case __IPV6_ADDR_SCOPE_SITELOCAL:
+                       printf("(site-local) ");
+                       break;
+               case __IPV6_ADDR_SCOPE_ORGLOCAL:
+                       printf("(org-local) ");
+                       break;
+               case __IPV6_ADDR_SCOPE_GLOBAL:
+                       printf("(global) ");
+                       break;
+               default:
+                       putchar(' ');
+               }
+       }

if (ip6lifetime && (lifetime.ia6t_preferred || lifetime.ia6t_expire)) {
                printf("pltime ");
Index: sys/netinet6/in6.h
===================================================================
RCS file: /ncvs/freebsd/src/sys/netinet6/in6.h,v
retrieving revision 1.44
diff -u -r1.44 in6.h
--- sys/netinet6/in6.h  28 Mar 2006 12:51:22 -0000      1.44
+++ sys/netinet6/in6.h  4 Jan 2008 21:44:36 -0000
@@ -271,6 +271,7 @@
#define IPV6_ADDR_SCOPE_NODELOCAL       0x01
#define IPV6_ADDR_SCOPE_INTFACELOCAL    0x01
#define IPV6_ADDR_SCOPE_LINKLOCAL       0x02
+#define IPV6_ADDR_SCOPE_ADMINLOCAL     0x04
#define IPV6_ADDR_SCOPE_SITELOCAL       0x05
#define IPV6_ADDR_SCOPE_ORGLOCAL        0x08    /* just used in this file */
#define IPV6_ADDR_SCOPE_GLOBAL          0x0e
@@ -278,6 +279,7 @@
#define __IPV6_ADDR_SCOPE_NODELOCAL     0x01
#define __IPV6_ADDR_SCOPE_INTFACELOCAL  0x01
#define __IPV6_ADDR_SCOPE_LINKLOCAL     0x02
+#define __IPV6_ADDR_SCOPE_ADMINLOCAL   0x04
#define __IPV6_ADDR_SCOPE_SITELOCAL     0x05
#define __IPV6_ADDR_SCOPE_ORGLOCAL      0x08    /* just used in this file */
#define __IPV6_ADDR_SCOPE_GLOBAL        0x0e
--
Crist J. Clark                     |     [EMAIL PROTECTED]
_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to