summaryrefslogtreecommitdiff
path: root/source3/lib/interface.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/lib/interface.c')
-rw-r--r--source3/lib/interface.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/source3/lib/interface.c b/source3/lib/interface.c
index 1dc605ff2f..c920cc0cfc 100644
--- a/source3/lib/interface.c
+++ b/source3/lib/interface.c
@@ -400,6 +400,18 @@ BOOL ismybcast(struct in_addr bcast)
}
/****************************************************************************
+ check if a packet is from a local (known) net
+ **************************************************************************/
+BOOL is_local_net(struct in_addr from)
+{
+ struct interface *i;
+ for (i=local_interfaces;i;i=i->next)
+ if((from.s_addr & i->nmask.s_addr) == (i->ip.s_addr & i->nmask.s_addr))
+ return True;
+ return False;
+}
+
+/****************************************************************************
how many interfaces do we have
**************************************************************************/
int iface_count(void)