The branch, master has been updated
       via  f7883ae s4:lib/socket: simplify iface_list_wildcard() and its 
callers
       via  a571fe5 s4:lib/socket: use the same logic in iface_list_wildcard() 
as in smbd
      from  ee8f98f pidl-waf: Only install Yapp::Driver if it is not available.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit f7883ae02a4e8935a44396f776712cebfd411e52
Author: Stefan Metzmacher <me...@samba.org>
Date:   Thu Feb 27 10:28:23 2014 +0100

    s4:lib/socket: simplify iface_list_wildcard() and its callers
    
    Bug: https://bugzilla.samba.org/show_bug.cgi?id=10464
    Signed-off-by: Stefan Metzmacher <me...@samba.org>
    
    Change-Id: Ib317d71dea01fc8ef6b6a26455f15a8a175d59f6
    Reviewed-by: Andrew Bartlett <abart...@samba.org>
    
    Autobuild-User(master): Andrew Bartlett <abart...@samba.org>
    Autobuild-Date(master): Fri Mar  7 02:18:17 CET 2014 on sn-devel-104

commit a571fe520d09a00273a58b1fb0fa9aab8e0aefce
Author: Stefan Metzmacher <me...@samba.org>
Date:   Thu Feb 27 10:18:35 2014 +0100

    s4:lib/socket: use the same logic in iface_list_wildcard() as in smbd
    
    If we have ipv6 support we should listen on "::" too.
    
    Bug: https://bugzilla.samba.org/show_bug.cgi?id=10464
    Signed-off-by: Stefan Metzmacher <me...@samba.org>
    
    Change-Id: I8ce185d5070280149bee9fd33010443be9031089
    Reviewed-by: Andrew Bartlett <abart...@samba.org>

-----------------------------------------------------------------------

Summary of changes:
 source4/cldap_server/cldap_server.c |    2 +-
 source4/dns_server/dns_server.c     |    8 ++++----
 source4/kdc/kdc.c                   |    2 +-
 source4/ldap_server/ldap_server.c   |    4 ++--
 source4/lib/socket/interface.c      |   26 +++++---------------------
 source4/rpc_server/dcerpc_server.c  |    4 ++--
 source4/smb_server/service_smb.c    |    4 ++--
 source4/web_server/web_server.c     |    4 ++--
 8 files changed, 19 insertions(+), 35 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/cldap_server/cldap_server.c 
b/source4/cldap_server/cldap_server.c
index 3d20201..d1efa39 100644
--- a/source4/cldap_server/cldap_server.c
+++ b/source4/cldap_server/cldap_server.c
@@ -153,7 +153,7 @@ static NTSTATUS cldapd_startup_interfaces(struct 
cldapd_server *cldapd, struct l
        /* if we are allowing incoming packets from any address, then
           we need to bind to the wildcard address */
        if (!lpcfg_bind_interfaces_only(lp_ctx)) {
-               const char **wcard = iface_list_wildcard(cldapd, lp_ctx);
+               char **wcard = iface_list_wildcard(cldapd);
                NT_STATUS_HAVE_NO_MEMORY(wcard);
                for (i=0; wcard[i]; i++) {
                        status = cldapd_add_socket(cldapd, lp_ctx, wcard[i]);
diff --git a/source4/dns_server/dns_server.c b/source4/dns_server/dns_server.c
index 7ad4aca..976774d 100644
--- a/source4/dns_server/dns_server.c
+++ b/source4/dns_server/dns_server.c
@@ -657,7 +657,7 @@ static NTSTATUS dns_add_socket(struct dns_server *dns,
 /*
   setup our listening sockets on the configured network interfaces
 */
-static NTSTATUS dns_startup_interfaces(struct dns_server *dns, struct 
loadparm_context *lp_ctx,
+static NTSTATUS dns_startup_interfaces(struct dns_server *dns,
                                       struct interface *ifaces)
 {
        const struct model_ops *model_ops;
@@ -687,8 +687,8 @@ static NTSTATUS dns_startup_interfaces(struct dns_server 
*dns, struct loadparm_c
                        NT_STATUS_NOT_OK_RETURN(status);
                }
        } else {
-               const char **wcard;
-               wcard = iface_list_wildcard(tmp_ctx, lp_ctx);
+               char **wcard;
+               wcard = iface_list_wildcard(tmp_ctx);
                if (wcard == NULL) {
                        DEBUG(0, ("No wildcard address available\n"));
                        return NT_STATUS_INTERNAL_ERROR;
@@ -891,7 +891,7 @@ static void dns_task_init(struct task_server *task)
                DLIST_ADD_END(dns->zones, z, NULL);
        }
 
-       status = dns_startup_interfaces(dns, task->lp_ctx, ifaces);
+       status = dns_startup_interfaces(dns, ifaces);
        if (!NT_STATUS_IS_OK(status)) {
                task_server_terminate(task, "dns failed to setup interfaces", 
true);
                return;
diff --git a/source4/kdc/kdc.c b/source4/kdc/kdc.c
index 498ee4d..346b901 100644
--- a/source4/kdc/kdc.c
+++ b/source4/kdc/kdc.c
@@ -733,7 +733,7 @@ static NTSTATUS kdc_startup_interfaces(struct kdc_server 
*kdc, struct loadparm_c
        /* if we are allowing incoming packets from any address, then
           we need to bind to the wildcard address */
        if (!lpcfg_bind_interfaces_only(lp_ctx)) {
-               const char **wcard = iface_list_wildcard(kdc, lp_ctx);
+               char **wcard = iface_list_wildcard(kdc);
                NT_STATUS_HAVE_NO_MEMORY(wcard);
                for (i=0; wcard[i]; i++) {
                        if (kdc_port) {
diff --git a/source4/ldap_server/ldap_server.c 
b/source4/ldap_server/ldap_server.c
index 0c0beca..99595eb 100644
--- a/source4/ldap_server/ldap_server.c
+++ b/source4/ldap_server/ldap_server.c
@@ -962,9 +962,9 @@ static void ldapsrv_task_init(struct task_server *task)
                        if (!NT_STATUS_IS_OK(status)) goto failed;
                }
        } else {
-               const char **wcard;
+               char **wcard;
                int i;
-               wcard = iface_list_wildcard(task, task->lp_ctx);
+               wcard = iface_list_wildcard(task);
                if (wcard == NULL) {
                        DEBUG(0,("No wildcard addresses available\n"));
                        goto failed;
diff --git a/source4/lib/socket/interface.c b/source4/lib/socket/interface.c
index 7a4733f..504a727 100644
--- a/source4/lib/socket/interface.c
+++ b/source4/lib/socket/interface.c
@@ -503,29 +503,13 @@ bool iface_list_same_net(const char *ip1, const char 
*ip2, const char *netmask)
    return the list of wildcard interfaces
    this will include the IPv4 0.0.0.0, and may include IPv6 ::
 */
-const char **iface_list_wildcard(TALLOC_CTX *mem_ctx, struct loadparm_context 
*lp_ctx)
+char **iface_list_wildcard(TALLOC_CTX *mem_ctx)
 {
-       const char **ret;
-       ret = (const char **)str_list_make(mem_ctx, "0.0.0.0", NULL);
-       if (ret == NULL) return NULL;
-
+       char **ret;
 #ifdef HAVE_IPV6
-       if (lpcfg_parm_bool(lp_ctx, NULL, "ipv6", "enable", true)) {
-               struct interface *local_interfaces = NULL;
-
-               load_interface_list(ret, lp_ctx, &local_interfaces);
-
-               if (iface_list_first_v6(local_interfaces)) {
-                       TALLOC_FREE(local_interfaces);
-                       /*
-                        * only add "::" if we have at least
-                        * one ipv6 interface
-                        */
-                       return str_list_add(ret, "::");
-               }
-               TALLOC_FREE(local_interfaces);
-       }
+       ret = str_list_make(mem_ctx, "::,0.0.0.0", NULL);
+#else
+       ret = str_list_make(mem_ctx, "0.0.0.0", NULL);
 #endif
-
        return ret;
 }
diff --git a/source4/rpc_server/dcerpc_server.c 
b/source4/rpc_server/dcerpc_server.c
index fb652c5..a4afde0 100644
--- a/source4/rpc_server/dcerpc_server.c
+++ b/source4/rpc_server/dcerpc_server.c
@@ -1824,9 +1824,9 @@ static NTSTATUS dcesrv_add_ep_tcp(struct dcesrv_context 
*dce_ctx,
                        NT_STATUS_NOT_OK_RETURN(status);
                }
        } else {
-               const char **wcard;
+               char **wcard;
                int i;
-               wcard = iface_list_wildcard(dce_ctx, lp_ctx);
+               wcard = iface_list_wildcard(dce_ctx);
                NT_STATUS_HAVE_NO_MEMORY(wcard);
                for (i=0; wcard[i]; i++) {
                        status = add_socket_rpc_tcp_iface(dce_ctx, e, 
event_ctx, model_ops, wcard[i]);
diff --git a/source4/smb_server/service_smb.c b/source4/smb_server/service_smb.c
index 958792e..0e4897c 100644
--- a/source4/smb_server/service_smb.c
+++ b/source4/smb_server/service_smb.c
@@ -63,9 +63,9 @@ static void smbsrv_task_init(struct task_server *task)
                        if (!NT_STATUS_IS_OK(status)) goto failed;
                }
        } else {
-               const char **wcard;
+               char **wcard;
                int i;
-               wcard = iface_list_wildcard(task, task->lp_ctx);
+               wcard = iface_list_wildcard(task);
                if (wcard == NULL) {
                        DEBUG(0,("No wildcard addresses available\n"));
                        goto failed;
diff --git a/source4/web_server/web_server.c b/source4/web_server/web_server.c
index 239612a..0339b55 100644
--- a/source4/web_server/web_server.c
+++ b/source4/web_server/web_server.c
@@ -336,9 +336,9 @@ static void websrv_task_init(struct task_server *task)
 
                talloc_free(ifaces);
        } else {
-               const char **wcard;
+               char **wcard;
                int i;
-               wcard = iface_list_wildcard(task, task->lp_ctx);
+               wcard = iface_list_wildcard(task);
                if (wcard == NULL) {
                        DEBUG(0,("No wildcard addresses available\n"));
                        goto failed;


-- 
Samba Shared Repository

Reply via email to