diff options
-rw-r--r-- | source3/nmbd/nmbd_subnetdb.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/source3/nmbd/nmbd_subnetdb.c b/source3/nmbd/nmbd_subnetdb.c index 37b50f8525..330be4057f 100644 --- a/source3/nmbd/nmbd_subnetdb.c +++ b/source3/nmbd/nmbd_subnetdb.c @@ -235,6 +235,7 @@ BOOL create_subnets(void) int num_interfaces = iface_count(); int i; struct in_addr unicast_ip; + extern struct in_addr loopback_ip; if(num_interfaces == 0) { @@ -251,6 +252,17 @@ BOOL create_subnets(void) { struct interface *iface = get_interface(i); + /* + * We don't want to add a loopback interface, in case + * someone has added 127.0.0.1 for smbd, nmbd needs to + * ignore it here. JRA. + */ + + if (ip_equal(iface->ip, loopback_ip)) { + DEBUG(2,("create_subnets: Ignoring loopback interface.\n" )); + continue; + } + if (!make_normal_subnet(iface)) return False; } |