if_connected() is again private.
Introduced neigh_connected_to() to serve the same purpose efficiently.
This commit is contained in:
parent
6480dd0880
commit
200accf396
2 changed files with 7 additions and 3 deletions
|
@ -114,6 +114,12 @@ typedef struct neighbor {
|
||||||
*/
|
*/
|
||||||
neighbor *neigh_find(struct proto *, ip_addr *, unsigned flags);
|
neighbor *neigh_find(struct proto *, ip_addr *, unsigned flags);
|
||||||
|
|
||||||
|
static inline int neigh_connected_to(struct proto *p, ip_addr *a, struct iface *i)
|
||||||
|
{
|
||||||
|
neighbor *n = neigh_find(p, a, 0);
|
||||||
|
return n && n->iface == i;
|
||||||
|
}
|
||||||
|
|
||||||
void neigh_dump(neighbor *);
|
void neigh_dump(neighbor *);
|
||||||
void neigh_dump_all(void);
|
void neigh_dump_all(void);
|
||||||
void neigh_prune(void);
|
void neigh_prune(void);
|
||||||
|
@ -121,8 +127,6 @@ void neigh_if_up(struct iface *);
|
||||||
void neigh_if_down(struct iface *);
|
void neigh_if_down(struct iface *);
|
||||||
void neigh_init(struct pool *);
|
void neigh_init(struct pool *);
|
||||||
|
|
||||||
extern int if_connected(ip_addr *a, struct iface *i); /* -1=error, 1=match, 0=no match */
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Interface Pattern Lists
|
* Interface Pattern Lists
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -24,7 +24,7 @@ neigh_hash(struct proto *p, ip_addr *a)
|
||||||
return (p->hash_key ^ ipa_hash(*a)) & (NEIGH_HASH_SIZE-1);
|
return (p->hash_key ^ ipa_hash(*a)) & (NEIGH_HASH_SIZE-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
static int
|
||||||
if_connected(ip_addr *a, struct iface *i) /* -1=error, 1=match, 0=no match */
|
if_connected(ip_addr *a, struct iface *i) /* -1=error, 1=match, 0=no match */
|
||||||
{
|
{
|
||||||
struct ifa *b;
|
struct ifa *b;
|
||||||
|
|
Loading…
Reference in a new issue