/* Lookup index. */
if (ifindex != 0)
{
- ifp = if_lookup_by_index_vrf (ifindex, vrf_id);
+ ifp = if_lookup_by_index (ifindex, vrf_id);
if (ifp == NULL)
{
if (bfd_debug)
/* Interface existance check by index. */
struct interface *
-if_lookup_by_index_vrf (ifindex_t ifindex, vrf_id_t vrf_id)
+if_lookup_by_index (ifindex_t ifindex, vrf_id_t vrf_id)
{
struct listnode *node;
struct interface *ifp;
return NULL;
}
-struct interface *
-if_lookup_by_index (ifindex_t ifindex)
-{
- return if_lookup_by_index_vrf (ifindex, VRF_DEFAULT);
-}
-
const char *
ifindex2ifname_vrf (ifindex_t ifindex, vrf_id_t vrf_id)
{
struct interface *ifp;
- return ((ifp = if_lookup_by_index_vrf (ifindex, vrf_id)) != NULL) ?
+ return ((ifp = if_lookup_by_index (ifindex, vrf_id)) != NULL) ?
ifp->name : "unknown";
}
return ifp;
}
else
- return if_lookup_by_index(ifindex);
+ return if_lookup_by_index(ifindex, VRF_DEFAULT);
}
#endif /* ifaddr_ipv4_table */
/* Prototypes. */
extern int if_cmp_name_func (char *, char *);
extern struct interface *if_create (const char *name, int namelen);
-extern struct interface *if_lookup_by_index (ifindex_t);
extern struct interface *if_lookup_exact_address (void *matchaddr, int family);
extern struct connected *if_lookup_address (void *matchaddr, int family);
extern struct interface *if_lookup_prefix (struct prefix *prefix);
vrf_id_t vrf_id);
extern struct interface *if_create_vrf (const char *name, int namelen,
vrf_id_t vrf_id);
-extern struct interface *if_lookup_by_index_vrf (ifindex_t, vrf_id_t vrf_id);
+extern struct interface *if_lookup_by_index (ifindex_t, vrf_id_t vrf_id);
extern struct interface *if_lookup_exact_address_vrf (void *matchaddr, int family,
vrf_id_t vrf_id);
extern struct connected *if_lookup_address_vrf (void *matchaddr, int family,
ifindex = stream_getl (s);
- struct interface *ifp = if_lookup_by_index (ifindex);
+ struct interface *ifp = if_lookup_by_index (ifindex, VRF_DEFAULT);
if (ifp == NULL)
{
ifindex = stream_getl (s);
/* Lookup index. */
- ifp = if_lookup_by_index_vrf (ifindex, vrf_id);
+ ifp = if_lookup_by_index (ifindex, vrf_id);
if (ifp == NULL)
{
zlog_warn ("INTERFACE_ADDRESS_%s: Cannot find IF %u in VRF %d",
ifindex = stream_getl (s);
/* Lookup index. */
- ifp = if_lookup_by_index_vrf (ifindex, vrf_id);
+ ifp = if_lookup_by_index (ifindex, vrf_id);
if (ifp == NULL)
{
zlog_warn ("INTERFACE_NBR_%s: Cannot find IF %u in VRF %d",
ifindex = stream_getl (s);
/* Lookup interface. */
- ifp = if_lookup_by_index_vrf (ifindex, vrf_id);
+ ifp = if_lookup_by_index (ifindex, vrf_id);
if (ifp == NULL)
{
zlog_warn ("INTERFACE_VRF_UPDATE: Cannot find IF %u in VRF %d",
}
}
- ifp = if_lookup_by_index(ndm->ndm_ifindex);
+ ifp = if_lookup_by_index(ndm->ndm_ifindex, VRF_DEFAULT);
if (!ifp || sockunion_family(&addr) == AF_UNSPEC)
return;
if (!pkthdr || !in_ndx || !zbuf_used(&pktpl))
return;
- ifp = if_lookup_by_index(htonl(*in_ndx));
+ ifp = if_lookup_by_index(htonl(*in_ndx), VRF_DEFAULT);
if (!ifp)
return;
if (saddr.s_addr)
sockunion_set(&nbma, AF_INET, (u_char *) &saddr.s_addr, sizeof(saddr.s_addr));
else if (!nbmaifp && nifp->linkidx != IFINDEX_INTERNAL)
- nbmaifp = if_lookup_by_index(nifp->linkidx);
+ nbmaifp = if_lookup_by_index(nifp->linkidx, VRF_DEFAULT);
}
break;
default:
goto err;
}
- ifp = if_lookup_by_index(ifindex);
+ ifp = if_lookup_by_index(ifindex, VRF_DEFAULT);
if (!ifp) goto err;
p = nhrp_peer_get(ifp, &remote_nbma);
for (i = 0; i < ifindex_num; i++) {
ifindex = stream_getl(s);
if (i == 0 && ifindex != IFINDEX_INTERNAL)
- ifp = if_lookup_by_index(ifindex);
+ ifp = if_lookup_by_index(ifindex, VRF_DEFAULT);
}
}
if (CHECK_FLAG(message, ZAPI_MESSAGE_DISTANCE))
struct ospf6_interface *oi;
struct interface *ifp;
- ifp = if_lookup_by_index (ifindex);
+ ifp = if_lookup_by_index (ifindex, VRF_DEFAULT);
if (ifp == NULL)
return (struct ospf6_interface *) NULL;
#include "sockopt.h"
#include "checksum.h"
#include "md5.h"
+#include "vrf.h"
#include "ospfd/ospfd.h"
#include "ospfd/ospf_network.h"
ifindex = getsockopt_ifindex (AF_INET, &msgh);
- *ifp = if_lookup_by_index (ifindex);
+ *ifp = if_lookup_by_index (ifindex, VRF_DEFAULT);
if (ret != ip_len)
{
if (or->type == OSPF_DESTINATION_NETWORK)
for (ALL_LIST_ELEMENTS (or->paths, pnode, pnnode, path))
{
- if (if_lookup_by_index(path->ifindex))
+ if (if_lookup_by_index(path->ifindex, VRF_DEFAULT))
{
if (path->nexthop.s_addr == 0)
vty_out (vty, "%24s directly attached to %s%s",
for (ALL_LIST_ELEMENTS_RO (or->paths, pnode, path))
{
- if (if_lookup_by_index(path->ifindex))
+ if (if_lookup_by_index(path->ifindex, VRF_DEFAULT))
{
if (path->nexthop.s_addr == 0)
vty_out (vty, "%24s directly attached to %s%s",
for (ALL_LIST_ELEMENTS (er->paths, pnode, pnnode, path))
{
- if (if_lookup_by_index(path->ifindex))
+ if (if_lookup_by_index(path->ifindex, VRF_DEFAULT))
{
if (path->nexthop.s_addr == 0)
vty_out (vty, "%24s directly attached to %s%s",
struct pim_interface *pim_ifp;
struct interface *ifp;
- ifp = if_lookup_by_index_vrf (ifindex, VRF_DEFAULT);
+ ifp = if_lookup_by_index (ifindex, VRF_DEFAULT);
if (!ifp || !ifp->info)
return -1;
pim_ifp = ifp->info;
if (!inet_ntop(AF_INET, &to.sin_addr, to_str , sizeof(to_str)))
sprintf(to_str, "<to?>");
- recv_ifp = if_lookup_by_index(ifindex);
+ recv_ifp = if_lookup_by_index(ifindex, VRF_DEFAULT);
if (recv_ifp) {
zassert(ifindex == (int) recv_ifp->ifindex);
}
{
first_ifindex = nexthop_tab[i].ifindex;
- ifp = if_lookup_by_index(first_ifindex);
+ ifp = if_lookup_by_index(first_ifindex, VRF_DEFAULT);
if (!ifp)
{
if (PIM_DEBUG_ZEBRA)
#include "log.h"
#include "memory.h"
#include "sockopt.h"
+#include "vrf.h"
#include "pimd.h"
#include "pim_ssmpingd.h"
return -1;
}
- ifp = if_lookup_by_index(ifindex);
+ ifp = if_lookup_by_index(ifindex, VRF_DEFAULT);
if (buf[0] != PIM_SSMPINGD_REQUEST) {
char source_str[INET_ADDRSTRLEN];
nexthop_tab[num_ifindex].nexthop_addr.family = AF_INET6;
stream_get (&nexthop_tab[num_ifindex].nexthop_addr.u.prefix6, s, 16);
nexthop_tab[num_ifindex].ifindex = stream_getl (s);
- nbr = pim_neighbor_find_if (if_lookup_by_index_vrf (nexthop_tab[num_ifindex].ifindex, VRF_DEFAULT));
+ nbr = pim_neighbor_find_if (if_lookup_by_index (nexthop_tab[num_ifindex].ifindex, VRF_DEFAULT));
if (nbr)
{
nexthop_tab[num_ifindex].nexthop_addr.family = AF_INET;
}
packet = (struct ripng_packet *) STREAM_DATA (ripng->ibuf);
- ifp = if_lookup_by_index (ifindex);
+ ifp = if_lookup_by_index (ifindex, VRF_DEFAULT);
/* RIPng packet received. */
if (IS_RIPNG_DEBUG_EVENT)
ifm = (struct if_msghdr *) buf;
if (ifm->ifm_type == RTM_IFINFO)
{
- ifp = if_lookup_by_index (ifm->ifm_index);
+ ifp = if_lookup_by_index (ifm->ifm_index, VRF_DEFAULT);
if (ifp)
ifp->stats = ifm->ifm_data;
}
if (ret < 0) zlog_warn ("IRDP: RX Error length = %d", ret);
- ifp = if_lookup_by_index(ifindex);
+ ifp = if_lookup_by_index(ifindex, VRF_DEFAULT);
if(! ifp ) return ret;
zi= ifp->info;
{
struct interface *ifp;
- ifp = if_lookup_by_index (ifan->ifan_index);
+ ifp = if_lookup_by_index (ifan->ifan_index, VRF_DEFAULT);
if (ifp)
assert ( (ifp->ifindex == ifan->ifan_index)
* messages, such as up/down status changes on NetBSD, do not include a
* sockaddr_dl).
*/
- if ( (ifp = if_lookup_by_index (ifm->ifm_index)) != NULL )
+ if ( (ifp = if_lookup_by_index (ifm->ifm_index, VRF_DEFAULT)) != NULL )
{
/* we have an ifp, verify that the name matches as some systems,
* eg Solaris, have a 1:many association of ifindex:ifname
/* Allocate and read address information. */
ifam_read_mesg (ifam, &addr, &mask, &brd, ifname, &ifnlen);
- if ((ifp = if_lookup_by_index(ifam->ifam_index)) == NULL)
+ if ((ifp = if_lookup_by_index(ifam->ifam_index, VRF_DEFAULT)) == NULL)
{
zlog_warn ("%s: no interface for ifname %s, index %d",
__func__, ifname, ifam->ifam_index);
msg.rtm.rtm_inits |= RTV_HOPCOUNT;
}
- ifp = if_lookup_by_index (index);
+ ifp = if_lookup_by_index (index, VRF_DEFAULT);
if (gate && (message == RTM_ADD || message == RTM_CHANGE))
msg.rtm.rtm_flags |= RTF_GATEWAY;
strcpy (gbuf, inet_ntoa (m->sg.grp));
for (count = 0; count < oif_count; count++)
{
- ifp = if_lookup_by_index_vrf (oif[count], vrf);
+ ifp = if_lookup_by_index (oif[count], vrf);
char temp[256];
sprintf (temp, "%s ", ifp->name);
strcat (oif_list, temp);
}
- ifp = if_lookup_by_index_vrf (iif, vrf);
+ ifp = if_lookup_by_index (iif, vrf);
zlog_debug ("MCAST %s (%s,%s) IIF: %s OIF: %s jiffies: %lld",
nl_msg_type_to_str(h->nlmsg_type), sbuf, gbuf, ifp->name, oif_list, m->lastused);
}
case NEXTHOP_TYPE_IPV6_IFINDEX:
if (IN6_IS_ADDR_LINKLOCAL (&nexthop->gate.ipv6))
{
- ifp = if_lookup_by_index (nexthop->ifindex);
+ ifp = if_lookup_by_index (nexthop->ifindex, VRF_DEFAULT);
if (ifp && if_is_operative(ifp))
SET_FLAG (nexthop->flags, NEXTHOP_FLAG_ACTIVE);
else
if (src)
nexthop->src.ipv4 = *src;
nexthop->ifindex = ifindex;
- ifp = if_lookup_by_index (nexthop->ifindex);
+ ifp = if_lookup_by_index (nexthop->ifindex, VRF_DEFAULT);
/*Pending: need to think if null ifp here is ok during bootup?
There was a crash because ifp here was coming to be NULL */
if (ifp)
*/
if (CHECK_FLAG(nexthop->flags, NEXTHOP_FLAG_ONLINK))
{
- ifp = if_lookup_by_index (nexthop->ifindex);
+ ifp = if_lookup_by_index (nexthop->ifindex, VRF_DEFAULT);
if (ifp && connected_is_unnumbered(ifp))
{
if (if_is_operative(ifp))
switch (nexthop->type)
{
case NEXTHOP_TYPE_IFINDEX:
- ifp = if_lookup_by_index_vrf (nexthop->ifindex, rib->vrf_id);
+ ifp = if_lookup_by_index (nexthop->ifindex, rib->vrf_id);
if (ifp && if_is_operative(ifp))
SET_FLAG (nexthop->flags, NEXTHOP_FLAG_ACTIVE);
else
family = AFI_IP6;
if (IN6_IS_ADDR_LINKLOCAL (&nexthop->gate.ipv6))
{
- ifp = if_lookup_by_index_vrf (nexthop->ifindex, rib->vrf_id);
+ ifp = if_lookup_by_index (nexthop->ifindex, rib->vrf_id);
if (ifp && if_is_operative(ifp))
SET_FLAG (nexthop->flags, NEXTHOP_FLAG_ACTIVE);
else