[PATCH] s4: remove ipv6:enabled parameteric option
Björn Jacke
bjacke at samba.org
Mon Dec 11 12:03:20 UTC 2017
this was never disabling ipv6, only v6-only interfaces. This can be achieved
with the interfaced parameter also if wanted.
Signed-off-by: Bjoern Jacke <bjacke at samba.org>
---
source4/lib/socket/interface.c | 24 ++++++++----------------
1 file changed, 8 insertions(+), 16 deletions(-)
diff --git a/source4/lib/socket/interface.c b/source4/lib/socket/interface.c
index 963c0aa..594df1a052 100644
--- a/source4/lib/socket/interface.c
+++ b/source4/lib/socket/interface.c
@@ -75,8 +75,7 @@ static struct interface *iface_list_find(struct interface *interfaces,
/****************************************************************************
add an interface to the linked list of interfaces
****************************************************************************/
-static void add_interface(TALLOC_CTX *mem_ctx, const struct iface_struct *ifs, struct interface **interfaces,
- bool enable_ipv6)
+static void add_interface(TALLOC_CTX *mem_ctx, const struct iface_struct *ifs, struct interface **interfaces)
{
char addr[INET6_ADDRSTRLEN];
struct interface *iface;
@@ -94,10 +93,6 @@ static void add_interface(TALLOC_CTX *mem_ctx, const struct iface_struct *ifs, s
return;
}
- if (!enable_ipv6 && ifs->ip.ss_family != AF_INET) {
- return;
- }
-
iface = talloc(*interfaces == NULL ? mem_ctx : *interfaces, struct interface);
if (iface == NULL)
return;
@@ -153,8 +148,7 @@ static void interpret_interface(TALLOC_CTX *mem_ctx,
const char *token,
struct iface_struct *probed_ifaces,
int total_probed,
- struct interface **local_interfaces,
- bool enable_ipv6)
+ struct interface **local_interfaces)
{
struct sockaddr_storage ss;
struct sockaddr_storage ss_mask;
@@ -170,7 +164,7 @@ static void interpret_interface(TALLOC_CTX *mem_ctx,
for (i=0;i<total_probed;i++) {
if (gen_fnmatch(token, probed_ifaces[i].name) == 0) {
add_interface(mem_ctx, &probed_ifaces[i],
- local_interfaces, enable_ipv6);
+ local_interfaces);
added = true;
}
}
@@ -199,7 +193,7 @@ static void interpret_interface(TALLOC_CTX *mem_ctx,
for (i=0;i<total_probed;i++) {
if (sockaddr_equal((struct sockaddr *)&ss, (struct sockaddr *)&probed_ifaces[i].ip)) {
add_interface(mem_ctx, &probed_ifaces[i],
- local_interfaces, enable_ipv6);
+ local_interfaces);
return;
}
}
@@ -269,7 +263,7 @@ static void interpret_interface(TALLOC_CTX *mem_ctx,
p,
probed_ifaces[i].name));
add_interface(mem_ctx, &probed_ifaces[i],
- local_interfaces, enable_ipv6);
+ local_interfaces);
probed_ifaces[i].netmask = saved_mask;
return;
}
@@ -291,8 +285,7 @@ static void interpret_interface(TALLOC_CTX *mem_ctx,
ifs.ip = ss;
ifs.netmask = ss_mask;
ifs.bcast = ss_bcast;
- add_interface(mem_ctx, &ifs,
- local_interfaces, enable_ipv6);
+ add_interface(mem_ctx, &ifs, local_interfaces);
}
@@ -305,7 +298,6 @@ void load_interface_list(TALLOC_CTX *mem_ctx, struct loadparm_context *lp_ctx, s
int i;
struct iface_struct *ifaces = NULL;
int total_probed;
- bool enable_ipv6 = lpcfg_parm_bool(lp_ctx, NULL, "ipv6", "enable", true);
*local_interfaces = NULL;
@@ -320,13 +312,13 @@ void load_interface_list(TALLOC_CTX *mem_ctx, struct loadparm_context *lp_ctx, s
}
for (i=0;i<total_probed;i++) {
if (!is_loopback_addr((struct sockaddr *)&ifaces[i].ip)) {
- add_interface(mem_ctx, &ifaces[i], local_interfaces, enable_ipv6);
+ add_interface(mem_ctx, &ifaces[i], local_interfaces);
}
}
}
while (ptr && *ptr) {
- interpret_interface(mem_ctx, *ptr, ifaces, total_probed, local_interfaces, enable_ipv6);
+ interpret_interface(mem_ctx, *ptr, ifaces, total_probed, local_interfaces);
ptr++;
}
--
2.7.4
More information about the samba-technical
mailing list