*: use an ifindex_t type, defined in lib/if.h, for ifindex values
diff --git a/isisd/isis_route.c b/isisd/isis_route.c
index 0348a79..9cca809 100644
--- a/isisd/isis_route.c
+++ b/isisd/isis_route.c
@@ -50,7 +50,7 @@
 #include "isis_zebra.h"
 
 static struct isis_nexthop *
-isis_nexthop_create (struct in_addr *ip, unsigned int ifindex)
+isis_nexthop_create (struct in_addr *ip, ifindex_t ifindex)
 {
   struct listnode *node;
   struct isis_nexthop *nexthop;
@@ -91,7 +91,7 @@
 
 static int
 nexthoplookup (struct list *nexthops, struct in_addr *ip,
-	       unsigned int ifindex)
+	       ifindex_t ifindex)
 {
   struct listnode *node;
   struct isis_nexthop *nh;
@@ -130,7 +130,7 @@
 
 #ifdef HAVE_IPV6
 static struct isis_nexthop6 *
-isis_nexthop6_new (struct in6_addr *ip6, unsigned int ifindex)
+isis_nexthop6_new (struct in6_addr *ip6, ifindex_t ifindex)
 {
   struct isis_nexthop6 *nexthop6;
 
@@ -144,7 +144,7 @@
 }
 
 static struct isis_nexthop6 *
-isis_nexthop6_create (struct in6_addr *ip6, unsigned int ifindex)
+isis_nexthop6_create (struct in6_addr *ip6, ifindex_t ifindex)
 {
   struct listnode *node;
   struct isis_nexthop6 *nexthop6;
@@ -181,7 +181,7 @@
 
 static int
 nexthop6lookup (struct list *nexthops6, struct in6_addr *ip6,
-		unsigned int ifindex)
+		ifindex_t ifindex)
 {
   struct listnode *node;
   struct isis_nexthop6 *nh6;
diff --git a/isisd/isis_route.h b/isisd/isis_route.h
index 5adea22..0d2379c 100644
--- a/isisd/isis_route.h
+++ b/isisd/isis_route.h
@@ -28,7 +28,7 @@
 #ifdef HAVE_IPV6
 struct isis_nexthop6
 {
-  unsigned int ifindex;
+  ifindex_t ifindex;
   struct in6_addr ip6;
   struct in6_addr router_address6;
   unsigned int lock;
@@ -37,7 +37,7 @@
 
 struct isis_nexthop
 {
-  unsigned int ifindex;
+  ifindex_t ifindex;
   struct in_addr ip;
   struct in_addr router_address;
   unsigned int lock;
diff --git a/isisd/isis_zebra.c b/isisd/isis_zebra.c
index 8c4eef0..6c398cf 100644
--- a/isisd/isis_zebra.c
+++ b/isisd/isis_zebra.c
@@ -329,7 +329,7 @@
 {
   struct zapi_ipv6 api;
   struct in6_addr **nexthop_list;
-  unsigned int *ifindex_list;
+  ifindex_t *ifindex_list;
   struct isis_nexthop6 *nexthop6;
   int i, size;
   struct listnode *node;
@@ -365,7 +365,7 @@
 
   /* allocate memory for ifindex_list */
   size = sizeof (unsigned int) * listcount (route_info->nexthops6);
-  ifindex_list = (unsigned int *) XMALLOC (MTYPE_ISIS_TMP, size);
+  ifindex_list = (ifindex_t *) XMALLOC (MTYPE_ISIS_TMP, size);
   if (!ifindex_list)
     {
       zlog_err ("isis_zebra_add_route_ipv6: out of memory!");
@@ -415,7 +415,7 @@
 {
   struct zapi_ipv6 api;
   struct in6_addr **nexthop_list;
-  unsigned int *ifindex_list;
+  ifindex_t *ifindex_list;
   struct isis_nexthop6 *nexthop6;
   int i, size;
   struct listnode *node;
@@ -445,7 +445,7 @@
 
   /* allocate memory for ifindex_list */
   size = sizeof (unsigned int) * listcount (route_info->nexthops6);
-  ifindex_list = (unsigned int *) XMALLOC (MTYPE_ISIS_TMP, size);
+  ifindex_list = (ifindex_t *) XMALLOC (MTYPE_ISIS_TMP, size);
   if (!ifindex_list)
     {
       zlog_err ("isis_zebra_route_del_ipv6: out of memory!");