These two functions take a rtableid not a rdomain as an argument, simple
renaming to avoid confusion.
ok?
Index: net/if.c
===================================================================
RCS file: /home/ncvs/src/sys/net/if.c,v
retrieving revision 1.277
diff -u -p -r1.277 if.c
--- net/if.c 19 Nov 2013 09:00:43 -0000 1.277
+++ net/if.c 26 Nov 2013 11:34:35 -0000
@@ -853,18 +853,18 @@ if_congestion_clear(void *arg)
*/
/*ARGSUSED*/
struct ifaddr *
-ifa_ifwithaddr(struct sockaddr *addr, u_int rdomain)
+ifa_ifwithaddr(struct sockaddr *addr, u_int rtableid)
{
struct ifaddr_item *ifai, key;
bzero(&key, sizeof(key));
key.ifai_addr = addr;
- key.ifai_rdomain = rtable_l2(rdomain);
+ key.ifai_rdomain = rtable_l2(rtableid);
ifai = RB_FIND(ifaddr_items, &ifaddr_items, &key);
if (ifai)
return (ifai->ifai_ifa);
- return (NULL);
+ return (NULL);
}
#define equal(a1, a2) \
Index: netinet/ip_input.c
===================================================================
RCS file: /home/ncvs/src/sys/netinet/ip_input.c,v
retrieving revision 1.221
diff -u -p -r1.221 ip_input.c
--- netinet/ip_input.c 17 Nov 2013 10:07:32 -0000 1.221
+++ netinet/ip_input.c 26 Nov 2013 11:34:35 -0000
@@ -725,7 +725,7 @@ in_ouraddr(struct in_addr ina, struct mb
}
struct in_ifaddr *
-in_iawithaddr(struct in_addr ina, u_int rdomain)
+in_iawithaddr(struct in_addr ina, u_int rtableid)
{
struct in_ifaddr *ia;
struct sockaddr_in sin;
@@ -734,7 +734,7 @@ in_iawithaddr(struct in_addr ina, u_int
sin.sin_len = sizeof(sin);
sin.sin_family = AF_INET;
sin.sin_addr = ina;
- ia = ifatoia(ifa_ifwithaddr(sintosa(&sin), rdomain));
+ ia = ifatoia(ifa_ifwithaddr(sintosa(&sin), rtableid));
if (ia == NULL || ina.s_addr == ia->ia_addr.sin_addr.s_addr)
return (ia);