if_connected() is again private.

Introduced neigh_connected_to() to serve the same purpose efficiently.
This commit is contained in:
Martin Mares 2000-03-27 12:16:37 +00:00
parent 6480dd0880
commit 200accf396
2 changed files with 7 additions and 3 deletions

View file

@ -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
*/ */

View file

@ -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;