Merged 6Wind patch.
diff --git a/acconfig.h b/acconfig.h
index de39bc8..caaf3ae 100644
--- a/acconfig.h
+++ b/acconfig.h
@@ -32,7 +32,7 @@
 #undef HAVE_IPV6
 
 /* Define if you wish to support ipv6 router advertisment.  */
-/* #undef HAVE_RTADV */
+#undef HAVE_RTADV
 
 /* whether system has GNU regex */
 #undef HAVE_GNU_REGEX
@@ -40,6 +40,9 @@
 /* whether system has SNMP library */
 #undef HAVE_SNMP
 
+/* whether systme has a ifra_lifetime field */
+#undef HAVE_IFRA_LIFETIME
+
 /* whether sockaddr has a sa_len field */
 #undef HAVE_SA_LEN
 
@@ -88,6 +91,9 @@
 /* Define if you have KAME project ipv6 stack.  */
 #undef KAME
 
+/* Define if you have 6WIND MUSICA IPv6 stack. */
+#undef MUSICA
+
 /* Define if you have Linux ipv6 stack.  */
 #undef LINUX_IPV6
 
@@ -139,6 +145,12 @@
 /* Define if FreeBSD 3.2 */
 #undef FREEBSD_32
 
+/* Define if FreeBSD */
+#undef FREEBSD
+
+/* Define if SIXOS */
+#undef SIXOS
+
 /* Define if OpenBSD */
 #undef OPEN_BSD
 
diff --git a/config.sub b/config.sub
index 004c7de..8c16a0e 100755
--- a/config.sub
+++ b/config.sub
@@ -995,7 +995,8 @@
 	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
 	      | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
 	      | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
-	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* | -storm-chaos*)
+	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
+        | -storm-chaos* | -sixos*)
 	# Remember, each alternative MUST END IN *, to match a version number.
 		;;
 	-qnx*)
diff --git a/configure.in b/configure.in
index 0aec5e7..62f43f5 100755
--- a/configure.in
+++ b/configure.in
@@ -81,7 +81,7 @@
 [  --enable-snmp           enable SNMP support])
 AC_ARG_WITH(libpam,
 [  --with-libpam           use libpam for PAM support in vtysh])
-AC_ARG_ENABLE(tcpsock,
+AC_ARG_ENABLE(tcp-zebra,
 [  --enable-tcp-zebra      enable TCP/IP socket connection between zebra and protocol daemon])
 dnl Temporary option until OSPF NSSA implementation complete
 AC_ARG_ENABLE(nssa,
@@ -98,9 +98,8 @@
 [  --enable-ospf-te        enable Traffic Engineering Extension to OSPF])
 AC_ARG_ENABLE(multipath,
 [  --enable-multipath=ARG  enable multipath function, ARG must be digit])
-
-dnl AC_ARG_ENABLE(rtadv,
-dnl [  --enable-rtadv          enable IPV6 router advertisment option])
+AC_ARG_ENABLE(rtadv,
+[  --disable-rtadv         disable IPV6 router advertisment feature])
 
 if test "${enable_broken_aliases}" = "yes"; then
   if test "${enable_netlink}" = "yes"
@@ -129,9 +128,13 @@
   AC_DEFINE(HAVE_OSPF_TE,,OSPF TE)
 fi
 
-dnl if test "${enable_rtadv}" = "yes"; then
-dnl   AC_DEFINE(HAVE_RTADV)
-dnl fi
+AC_MSG_CHECKING(Should Zebra's RTADV be used)
+if test "${enable_rtadv}" = "no"; then
+  AC_MSG_RESULT(no)
+else
+  AC_DEFINE(HAVE_RTADV)
+  AC_MSG_RESULT(yes)
+fi
 
 changequote(, )dnl
 
@@ -157,7 +160,7 @@
 dnl Check header files.
 dnl -------------------
 AC_STDC_HEADERS
-AC_CHECK_HEADERS(string.h stropts.h sys/conf.h sys/ksym.h sys/time.h sys/times.h sys/select.h sys/sysctl.h sys/sockio.h sys/types.h net/if_dl.h net/if_var.h linux/version.h kvm.h netdb.h netinet/in.h net/netopt.h netinet/in_var.h netinet/in6_var.h netinet/in6.h inet/nd.h asm/types.h netinet/icmp6.h netinet6/nd6.h libutil.h)
+AC_CHECK_HEADERS(string.h stropts.h sys/conf.h sys/ksym.h sys/time.h sys/times.h sys/select.h sys/sysctl.h sys/sockio.h sys/types.h net/if_dl.h net/if_var.h linux/version.h kvm.h netdb.h netinet/in.h net/netopt.h netinet/in_var.h netinet/in6_var.h netinet6/in6_var.h netinet/in6.h netinet6/in6.h inet/nd.h asm/types.h netinet/icmp6.h netinet6/nd6.h libutil.h)
 
 dnl check some types
 AC_C_CONST
@@ -469,6 +472,23 @@
    fi
    AC_MSG_RESULT(KAME)
 fi
+dnl -------------------------
+dnl MUSICA IPv6
+dnl  default host check
+dnl  It is not used by Kheops
+dnl -------------------------
+if grep MUSICA /usr/include6/netinet6/in6.h >/dev/null 2>&1; then
+   zebra_cv_ipv6=yes
+   AC_DEFINE(HAVE_IPV6)
+   AC_DEFINE(MUSICA)
+   AC_DEFINE(KAME)
+   RIPNGD="ripngd"
+   OSPF6D="ospf6d"
+   if test -d /usr/local/v6/lib -a -f /usr/local/v6/lib/libinet6.a; then
+      LIB_IPV6="-L/usr/local/v6/lib -linet6"
+   fi
+   AC_MSG_RESULT(MUSICA)
+fi
 dnl ---------
 dnl NRL check
 dnl ---------
@@ -788,13 +808,24 @@
 dnl ----------------------------
 dnl check structure in6_aliasreq
 dnl ----------------------------
-AC_MSG_CHECKING(whether struct if6_aliasreq exist)
+AC_MSG_CHECKING(whether struct in6_aliasreq exist)
 AC_EGREP_HEADER(in6_aliasreq,
 netinet6/in6_var.h,
 [AC_MSG_RESULT(yes)
  AC_DEFINE(HAVE_IN6_ALIASREQ,,in6_aliasreq)],
  AC_MSG_RESULT(no))
 
+dnl -----------------------------------
+dnl check ifra_lifetime of in6_aliasreq
+dnl -----------------------------------
+AC_MSG_CHECKING(whether in6_aliasreq.ifra_lifetime exist)
+AC_TRY_COMPILE([#include <sys/types.h>
+#include <netinet6/in6_var.h>
+],[static struct if6_aliasreq ac_i;int ac_j = sizeof (ac_i.ifra_lifetime);],
+[AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_IFRA_LIFETIME)],
+ AC_MSG_RESULT(no))
+
 dnl ---------------------------
 dnl check structure rt_addrinfo
 dnl ---------------------------
@@ -926,5 +957,6 @@
 source code location    : ${srcdir}
 compiler                : ${CC}
 compiler flags          : ${CFLAGS}
+linker flags            : ${LDFLAGS} ${LIBS}
 directory for pid files : ${ac_piddir}
 "