The branch, master has been updated
       via  16a24dc s3:registry: implement values_need_update and 
subkeys_need_update in the smbconf backend
       via  cd98954 s3:registry: return error when Key does not exist in 
regdb_fetch_values_internal()
       via  b954d88 s3:smbd: comment the lp_load call in reload_services()
      from  64ed94c s3: Use hex_encode_buf

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


- Log -----------------------------------------------------------------
commit 16a24dc182edc020cb1a209db80649efe9bb5488
Author: Michael Adam <[email protected]>
Date:   Sat May 5 02:12:25 2012 +0200

    s3:registry: implement values_need_update and subkeys_need_update in the 
smbconf backend
    
    It simply calls to the regdb functions.
    This fixes a caching issue uncovered by recent changes.
    
    Autobuild-User: Michael Adam <[email protected]>
    Autobuild-Date: Sat May  5 04:10:43 CEST 2012 on sn-devel-104

commit cd98954c6dc6eba8bd66b408658486e869dca31d
Author: Michael Adam <[email protected]>
Date:   Fri May 4 18:01:00 2012 +0200

    s3:registry: return error when Key does not exist in 
regdb_fetch_values_internal()

commit b954d88dbe6bd8bbc69a88e41a00b59778c289da
Author: Michael Adam <[email protected]>
Date:   Fri May 4 18:00:15 2012 +0200

    s3:smbd: comment the lp_load call in reload_services()

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

Summary of changes:
 source3/registry/reg_backend_db.c      |    3 +++
 source3/registry/reg_backend_smbconf.c |   11 +++++++++++
 source3/smbd/server_reload.c           |    6 +++++-
 3 files changed, 19 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/registry/reg_backend_db.c 
b/source3/registry/reg_backend_db.c
index ed7fe4d..a5bb5d7 100644
--- a/source3/registry/reg_backend_db.c
+++ b/source3/registry/reg_backend_db.c
@@ -1886,6 +1886,9 @@ static int regdb_fetch_values_internal(struct db_context 
*db, const char* key,
        DEBUG(10,("regdb_fetch_values: Looking for values of key [%s]\n", key));
 
        if (!regdb_key_exists(db, key)) {
+               DEBUG(10, ("regb_fetch_values: key [%s] does not exist\n",
+                          key));
+               ret = -1;
                goto done;
        }
 
diff --git a/source3/registry/reg_backend_smbconf.c 
b/source3/registry/reg_backend_smbconf.c
index 11abb9c..a056654 100644
--- a/source3/registry/reg_backend_smbconf.c
+++ b/source3/registry/reg_backend_smbconf.c
@@ -81,6 +81,15 @@ static WERROR smbconf_set_secdesc(const char *key,
        return regdb_ops.set_secdesc(key, secdesc);
 }
 
+static bool smbconf_subkeys_need_update(struct regsubkey_ctr *subkeys)
+{
+       return regdb_ops.subkeys_need_update(subkeys);
+}
+
+static bool smbconf_values_need_update(struct regval_ctr *values)
+{
+       return regdb_ops.values_need_update(values);
+}
 
 /*
  * Table of function pointers for accessing smb.conf data
@@ -96,4 +105,6 @@ struct registry_ops smbconf_reg_ops = {
        .reg_access_check = smbconf_reg_access_check,
        .get_secdesc = smbconf_get_secdesc,
        .set_secdesc = smbconf_set_secdesc,
+       .subkeys_need_update = smbconf_subkeys_need_update,
+       .values_need_update = smbconf_values_need_update,
 };
diff --git a/source3/smbd/server_reload.c b/source3/smbd/server_reload.c
index f9891de..8ca5bee 100644
--- a/source3/smbd/server_reload.c
+++ b/source3/smbd/server_reload.c
@@ -155,7 +155,11 @@ bool reload_services(struct smbd_server_connection *sconn,
 
        lp_killunused(sconn, snumused);
 
-       ret = lp_load(get_dyn_CONFIGFILE(), False, False, True, True);
+       ret = lp_load(get_dyn_CONFIGFILE(),
+                     false, /* global only */
+                     false, /* save defaults */
+                     true,  /* add_ipc */
+                     true); /* initialize globals */
 
        /* perhaps the config filename is now set */
        if (!test) {


-- 
Samba Shared Repository

Reply via email to