--- embedaddon/quagga/zebra/ioctl_solaris.c 2012/02/21 17:26:11 1.1.1.1 +++ embedaddon/quagga/zebra/ioctl_solaris.c 2016/11/02 10:09:10 1.1.1.2 @@ -32,6 +32,7 @@ #include "zebra/rib.h" #include "zebra/rt.h" #include "zebra/interface.h" +#include "zebra/ioctl_solaris.h" extern struct zebra_privs_t zserv_privs; @@ -309,7 +310,7 @@ if_get_flags_direct (const char *ifname, uint64_t *fla void if_get_flags (struct interface *ifp) { - int ret4, ret6; + int ret4 = 0, ret6 = 0; uint64_t newflags = 0; uint64_t tmpflags; @@ -407,11 +408,11 @@ if_unset_flags (struct interface *ifp, uint64_t flags) int if_prefix_add_ipv6 (struct interface *ifp, struct connected *ifc) { - char addrbuf[INET_ADDRSTRLEN]; + char addrbuf[PREFIX_STRLEN]; - inet_ntop (AF_INET6, &(((struct prefix_ipv6 *) (ifc->address))->prefix), - addrbuf, sizeof (addrbuf)); - zlog_warn ("Can't set %s on interface %s", addrbuf, ifp->name); + zlog_warn ("Can't set %s on interface %s", + prefix2str(ifc->address, addrbuf, sizeof(addrbuf)), + ifp->name); return 0; @@ -420,11 +421,11 @@ if_prefix_add_ipv6 (struct interface *ifp, struct conn int if_prefix_delete_ipv6 (struct interface *ifp, struct connected *ifc) { - char addrbuf[INET_ADDRSTRLEN]; + char addrbuf[PREFIX_STRLEN]; - inet_ntop (AF_INET6, &(((struct prefix_ipv6 *) (ifc->address))->prefix), - addrbuf, sizeof (addrbuf)); - zlog_warn ("Can't delete %s on interface %s", addrbuf, ifp->name); + zlog_warn ("Can't delete %s on interface %s", + prefix2str(ifc->address, addrbuf, sizeof(addrbuf)), + ifp->name); return 0;