The branch, v4-0-test has been updated
       via  8749a30 s3:lib/gencache: place gencache.tdb into /var/cache/samba
       via  825d273 python/provision: remove unused linklocal=False argument 
from interface_ips_v6()
       via  1cfb0ae s4:samba_upgradedns: don't pass linklocal=False to 
interface_ips_v6()
       via  ad2dc0f python/pyglue: filter out loopback and linklocal addresses 
unless all_interfaces is given
      from  25ded36 Fix the UNIX extensions CHOWN calls to use FCHOWN if 
available, else LCHOWN.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v4-0-test


- Log -----------------------------------------------------------------
commit 8749a307c5d24bf9d613f7edf3354b689eaaf83e
Author: Stefan Metzmacher <me...@samba.org>
Date:   Thu Mar 28 11:00:27 2013 +0100

    s3:lib/gencache: place gencache.tdb into /var/cache/samba
    
    /var/lock/samba is located on tmpfs on newer systems,
    but we want to keep things like the server affinity cache
    across reboots.
    
    Signed-off-by: Stefan Metzmacher <me...@samba.org>
    Reviewed-by: Volker Lendecke <v...@samba.org>
    (cherry picked from commit 54529fd354275cfb4ece407f95ef34675b202ea3)
    
    Fix bug #9802 - gencache.tdb should be moved to /var/cache/samba.
    
    Autobuild-User(v4-0-test): Karolin Seeger <ksee...@samba.org>
    Autobuild-Date(v4-0-test): Mon Sep  2 11:57:51 CEST 2013 on sn-devel-104

commit 825d2731a7276848d8a673c05c4a503a37c2904c
Author: Stefan Metzmacher <me...@samba.org>
Date:   Fri Aug 30 15:18:44 2013 +0200

    python/provision: remove unused linklocal=False argument from 
interface_ips_v6()
    
    Signed-off-by: Stefan Metzmacher <me...@samba.org>
    Reviewed-by: Bjoern Jacke <b...@sernet.de>
    
    Autobuild-User(master): Björn Jacke <b...@sernet.de>
    Autobuild-Date(master): Fri Aug 30 17:33:58 CEST 2013 on sn-devel-104
    
    (cherry picked from commit 3430448fc01ce3fbe0606a2c239d3c98a5b78361)
    
    The last 3 patches address bug #10030 - ::1 added to nameserver on join.

commit 1cfb0ae84885215c186650f941fd867868df7c11
Author: Stefan Metzmacher <me...@samba.org>
Date:   Fri Aug 30 15:17:59 2013 +0200

    s4:samba_upgradedns: don't pass linklocal=False to interface_ips_v6()
    
    This is the default...
    
    Signed-off-by: Stefan Metzmacher <me...@samba.org>
    Reviewed-by: Bjoern Jacke <b...@sernet.de>
    (cherry picked from commit 9edc0276c742194ec381c266acedf3216ccf1c69)

commit ad2dc0facbc02e82cae1882a3e15aae81f1cfb53
Author: Stefan Metzmacher <me...@samba.org>
Date:   Fri Aug 30 14:59:01 2013 +0200

    python/pyglue: filter out loopback and linklocal addresses unless 
all_interfaces is given
    
    Bug: https://bugzilla.samba.org/show_bug.cgi?id=10030
    
    Signed-off-by: Stefan Metzmacher <me...@samba.org>
    Reviewed-by: Bjoern Jacke <b...@sernet.de>
    (cherry picked from commit 0e6aca40413fb3cfd4300f282204a69743be4a65)

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

Summary of changes:
 python/pyglue.c                        |   45 ++++++++++++++++++++++++++++++-
 python/samba/provision/__init__.py     |    6 ++--
 source3/lib/gencache.c                 |    2 +-
 source4/scripting/bin/samba_upgradedns |    2 +-
 4 files changed, 48 insertions(+), 7 deletions(-)


Changeset truncated at 500 lines:

diff --git a/python/pyglue.c b/python/pyglue.c
index c21de46..802153a 100644
--- a/python/pyglue.c
+++ b/python/pyglue.c
@@ -164,18 +164,59 @@ static PyObject *py_interface_ips(PyObject *self, 
PyObject *args)
        /* first count how many are not loopback addresses */
        for (ifcount = i = 0; i<count; i++) {
                const char *ip = iface_list_n_ip(ifaces, i);
-               if (!(!all_interfaces && iface_list_same_net(ip, "127.0.0.1", 
"255.0.0.0"))) {
+
+               if (all_interfaces) {
                        ifcount++;
+                       continue;
+               }
+
+               if (iface_list_same_net(ip, "127.0.0.1", "255.0.0.0")) {
+                       continue;
+               }
+
+               if (iface_list_same_net(ip, "169.254.0.0", "255.255.0.0")) {
+                       continue;
                }
+
+               if (iface_list_same_net(ip, "::1", 
"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff")) {
+                       continue;
+               }
+
+               if (iface_list_same_net(ip, "fe80::", "ffff:ffff:ffff:ffff::")) 
{
+                       continue;
+               }
+
+               ifcount++;
        }
 
        pylist = PyList_New(ifcount);
        for (ifcount = i = 0; i<count; i++) {
                const char *ip = iface_list_n_ip(ifaces, i);
-               if (!(!all_interfaces && iface_list_same_net(ip, "127.0.0.1", 
"255.0.0.0"))) {
+
+               if (all_interfaces) {
                        PyList_SetItem(pylist, ifcount, 
PyString_FromString(ip));
                        ifcount++;
+                       continue;
+               }
+
+               if (iface_list_same_net(ip, "127.0.0.1", "255.0.0.0")) {
+                       continue;
+               }
+
+               if (iface_list_same_net(ip, "169.254.0.0", "255.255.0.0")) {
+                       continue;
                }
+
+               if (iface_list_same_net(ip, "::1", 
"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff")) {
+                       continue;
+               }
+
+               if (iface_list_same_net(ip, "fe80::", "ffff:ffff:ffff:ffff::")) 
{
+                       continue;
+               }
+
+               PyList_SetItem(pylist, ifcount, PyString_FromString(ip));
+               ifcount++;
        }
        talloc_free(tmp_ctx);
        return pylist;
diff --git a/python/samba/provision/__init__.py 
b/python/samba/provision/__init__.py
index f13b7d1..e0b3d22 100644
--- a/python/samba/provision/__init__.py
+++ b/python/samba/provision/__init__.py
@@ -1695,12 +1695,12 @@ def interface_ips_v4(lp):
     return ret
 
 
-def interface_ips_v6(lp, linklocal=False):
+def interface_ips_v6(lp):
     """return only IPv6 IPs"""
     ips = samba.interface_ips(lp, False)
     ret = []
     for i in ips:
-        if i.find(':') != -1 and (linklocal or i.find('%') == -1):
+        if i.find(':') != -1:
             ret.append(i)
     return ret
 
@@ -1997,7 +1997,7 @@ def provision(logger, session_info, credentials, 
smbconf=None,
 
     if hostip6 is None:
         logger.info("Looking up IPv6 addresses")
-        hostips = interface_ips_v6(lp, linklocal=False)
+        hostips = interface_ips_v6(lp)
         if hostips:
             hostip6 = hostips[0]
         if len(hostips) > 1:
diff --git a/source3/lib/gencache.c b/source3/lib/gencache.c
index 95b4811..da779c9 100644
--- a/source3/lib/gencache.c
+++ b/source3/lib/gencache.c
@@ -63,7 +63,7 @@ static bool gencache_init(void)
        /* skip file open if it's already opened */
        if (cache) return True;
 
-       cache_fname = lock_path("gencache.tdb");
+       cache_fname = cache_path("gencache.tdb");
 
        DEBUG(5, ("Opening cache file at %s\n", cache_fname));
 
diff --git a/source4/scripting/bin/samba_upgradedns 
b/source4/scripting/bin/samba_upgradedns
index 3c30090..b7af98c 100755
--- a/source4/scripting/bin/samba_upgradedns
+++ b/source4/scripting/bin/samba_upgradedns
@@ -331,7 +331,7 @@ if __name__ == '__main__':
             logger.debug("IPv4 addresses: %s" % hostip)
 
         logger.info("Looking up IPv6 addresses")
-        hostip6 = interface_ips_v6(lp, linklocal=False)
+        hostip6 = interface_ips_v6(lp)
         if not hostip6:
             hostip6 = None
         else:


-- 
Samba Shared Repository

Reply via email to