[SCM] Samba Shared Repository - branch master updated

Michael Adam obnox at samba.org
Thu Nov 20 10:46:02 MST 2014


The branch, master has been updated
       via  5ec63b8 s3:libsmb: fix some function header comments.
       via  5c60dc4 lib/ldb-samba: add ldif handler for msDS-TrustForestTrustInfo
       via  9114396 tdb_wrap: Make mutexes easier to use
       via  c8d05e9 tdb: allow tdb_open_ex() with O_RDONLY of TDB_FEATURE_FLAG_MUTEX tdbs.
      from  553b83c s3:smbprofile: profile async pread/pwrite/fsync syscalls

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


- Log -----------------------------------------------------------------
commit 5ec63b8bc1a16b1bbda7ec8e5442a1b3d6f2d13c
Author: Michael Adam <obnox at samba.org>
Date:   Thu Nov 20 12:59:15 2014 +0100

    s3:libsmb: fix some function header comments.
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Stefan Metzmacher <metze at samba.org>
    
    Autobuild-User(master): Michael Adam <obnox at samba.org>
    Autobuild-Date(master): Thu Nov 20 18:45:28 CET 2014 on sn-devel-104

commit 5c60dc429f9d4c7d2869a5bbd4b582eab67c10db
Author: Stefan Metzmacher <metze at samba.org>
Date:   Wed Nov 19 12:24:47 2014 +0100

    lib/ldb-samba: add ldif handler for msDS-TrustForestTrustInfo
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit 911439639a2caa17a9680cb297e9fe26eba56149
Author: Volker Lendecke <vl at samba.org>
Date:   Tue Sep 30 11:04:21 2014 +0000

    tdb_wrap: Make mutexes easier to use
    
    This patch makes sure we work fine and open without mutexes if they
    are not supported.
    
    Signed-off-by: Volker Lendecke <vl at samba.org>
    Reviewed-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Michael Adam <obnox at samba.org>

commit c8d05e934ea03fffbc34944d2d51a016b89a7eca
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Nov 4 09:51:51 2014 +0100

    tdb: allow tdb_open_ex() with O_RDONLY of TDB_FEATURE_FLAG_MUTEX tdbs.
    
    Bug: https://bugzilla.samba.org/show_bug.cgi?id=10781
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Michael Adam <obnox at samba.org>

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

Summary of changes:
 lib/ldb-samba/ldif_handlers.c  | 20 ++++++++++++++++++++
 lib/ldb-samba/ldif_handlers.h  |  1 +
 lib/tdb/common/open.c          | 18 +++++++++---------
 lib/tdb_wrap/tdb_wrap.c        |  7 +++++++
 source3/libsmb/libsmb_setget.c |  6 +++---
 5 files changed, 40 insertions(+), 12 deletions(-)


Changeset truncated at 500 lines:

diff --git a/lib/ldb-samba/ldif_handlers.c b/lib/ldb-samba/ldif_handlers.c
index d9d799c..cf5e3ca 100644
--- a/lib/ldb-samba/ldif_handlers.c
+++ b/lib/ldb-samba/ldif_handlers.c
@@ -960,6 +960,18 @@ static int ldif_write_trustAuthInOutBlob(struct ldb_context *ldb, void *mem_ctx,
 }
 
 /*
+  convert a NDR formatted blob to a ldif formatted msDS-TrustForestTrustInfo
+*/
+static int ldif_write_ForestTrustInfo(struct ldb_context *ldb, void *mem_ctx,
+				      const struct ldb_val *in, struct ldb_val *out)
+{
+	return ldif_write_NDR(ldb, mem_ctx, in, out,
+			      sizeof(struct ForestTrustInfo),
+			      (ndr_pull_flags_fn_t)ndr_pull_ForestTrustInfo,
+			      (ndr_print_fn_t)ndr_print_ForestTrustInfo,
+			      true);
+}
+/*
   convert a NDR formatted blob of a partialAttributeSet into text
 */
 static int ldif_write_partialAttributeSet(struct ldb_context *ldb, void *mem_ctx,
@@ -1332,6 +1344,13 @@ static const struct ldb_schema_syntax samba_syntaxes[] = {
 		.comparison_fn	  = ldb_comparison_binary,
 		.operator_fn      = samba_syntax_operator_fn
 	},{
+		.name		  = LDB_SYNTAX_SAMBA_FORESTTRUSTINFO,
+		.ldif_read_fn	  = ldb_handler_copy,
+		.ldif_write_fn	  = ldif_write_ForestTrustInfo,
+		.canonicalise_fn  = ldb_handler_copy,
+		.comparison_fn	  = ldb_comparison_binary,
+		.operator_fn      = samba_syntax_operator_fn
+	},{
 		.name		  = DSDB_SYNTAX_BINARY_DN,
 		.ldif_read_fn	  = ldb_handler_copy,
 		.ldif_write_fn	  = ldb_handler_copy,
@@ -1460,6 +1479,7 @@ static const struct {
 	{ "replUpToDateVector",         LDB_SYNTAX_SAMBA_REPLUPTODATEVECTOR },
 	{ "trustAuthIncoming",          LDB_SYNTAX_SAMBA_TRUSTAUTHINOUTBLOB },
 	{ "trustAuthOutgoing",          LDB_SYNTAX_SAMBA_TRUSTAUTHINOUTBLOB },
+	{ "msDS-TrustForestTrustInfo",  LDB_SYNTAX_SAMBA_FORESTTRUSTINFO },
 	{ "rIDAllocationPool",		LDB_SYNTAX_SAMBA_RANGE64 },
 	{ "rIDPreviousAllocationPool",	LDB_SYNTAX_SAMBA_RANGE64 },
 	{ "rIDAvailablePool",		LDB_SYNTAX_SAMBA_RANGE64 },
diff --git a/lib/ldb-samba/ldif_handlers.h b/lib/ldb-samba/ldif_handlers.h
index 41a2208..4e12293 100644
--- a/lib/ldb-samba/ldif_handlers.h
+++ b/lib/ldb-samba/ldif_handlers.h
@@ -17,6 +17,7 @@
 #define LDB_SYNTAX_SAMBA_SUPPLEMENTALCREDENTIALS "LDB_SYNTAX_SAMBA_SUPPLEMENTALCREDENTIALS"
 #define LDB_SYNTAX_SAMBA_SDDL_SECURITY_DESCRIPTOR "LDB_SYNTAX_SAMBA_SDDL"
 #define LDB_SYNTAX_SAMBA_TRUSTAUTHINOUTBLOB     "LDB_SYNTAX_SAMBA_TRUSTAUTHINOUTBLOB"
+#define LDB_SYNTAX_SAMBA_FORESTTRUSTINFO        "LDB_SYNTAX_SAMBA_FORESTTRUSTINFO"
 #define LDB_SYNTAX_SAMBA_PARTIALATTRIBUTESET    "LDB_SYNTAX_SAMBA_PARTIALATTRIBUTESET"
 #include "lib/ldb-samba/ldif_handlers_proto.h"
 
diff --git a/lib/tdb/common/open.c b/lib/tdb/common/open.c
index 16a76a3..3b53fa7 100644
--- a/lib/tdb/common/open.c
+++ b/lib/tdb/common/open.c
@@ -232,6 +232,14 @@ static bool tdb_mutex_open_ok(struct tdb_context *tdb,
 {
 	int locked;
 
+	if (tdb->flags & TDB_NOLOCK) {
+		/*
+		 * We don't look at locks, so it does not matter to have a
+		 * compatible mutex implementation. Allow the open.
+		 */
+		return true;
+	}
+
 	locked = tdb_nest_lock(tdb, ACTIVE_LOCK, F_WRLCK,
 			       TDB_LOCK_NOWAIT|TDB_LOCK_PROBE);
 
@@ -261,14 +269,6 @@ static bool tdb_mutex_open_ok(struct tdb_context *tdb,
 		return false;
 	}
 
-	if (tdb->flags & TDB_NOLOCK) {
-		/*
-		 * We don't look at locks, so it does not matter to have a
-		 * compatible mutex implementation. Allow the open.
-		 */
-		return true;
-	}
-
 check_local_settings:
 
 	if (!(tdb->flags & TDB_MUTEX_LOCKING)) {
@@ -399,7 +399,7 @@ _PUBLIC_ struct tdb_context *tdb_open_ex(const char *name, int hash_size, int td
 		tdb->read_only = 1;
 		/* read only databases don't do locking or clear if first */
 		tdb->flags |= TDB_NOLOCK;
-		tdb->flags &= ~TDB_CLEAR_IF_FIRST;
+		tdb->flags &= ~(TDB_CLEAR_IF_FIRST|TDB_MUTEX_LOCKING);
 	}
 
 	if ((tdb->flags & TDB_ALLOW_NESTING) &&
diff --git a/lib/tdb_wrap/tdb_wrap.c b/lib/tdb_wrap/tdb_wrap.c
index f2f32d1..e762b33 100644
--- a/lib/tdb_wrap/tdb_wrap.c
+++ b/lib/tdb_wrap/tdb_wrap.c
@@ -149,6 +149,13 @@ struct tdb_wrap *tdb_wrap_open(TALLOC_CTX *mem_ctx,
 	}
 
 	if (w == NULL) {
+
+		if (tdb_flags & TDB_MUTEX_LOCKING) {
+			if (!tdb_runtime_check_for_robust_mutexes()) {
+				tdb_flags &= ~TDB_MUTEX_LOCKING;
+			}
+		}
+
 		w = tdb_wrap_private_open(result, name, hash_size, tdb_flags,
 					  open_flags, mode);
 	} else {
diff --git a/source3/libsmb/libsmb_setget.c b/source3/libsmb/libsmb_setget.c
index 3255b52..d203b09 100644
--- a/source3/libsmb/libsmb_setget.c
+++ b/source3/libsmb/libsmb_setget.c
@@ -467,14 +467,14 @@ smbc_setOptionNoAutoAnonymousLogin(SMBCCTX *c, smbc_bool b)
         }
 }
 
-/** Get whether to enable use of kerberos */
+/** Get whether to enable use of the winbind ccache */
 smbc_bool
 smbc_getOptionUseCCache(SMBCCTX *c)
 {
         return c->flags & SMB_CTX_FLAG_USE_CCACHE ? True : False;
 }
 
-/** Set whether to enable use of kerberos */
+/** Set whether to enable use of the winbind ccache */
 void
 smbc_setOptionUseCCache(SMBCCTX *c, smbc_bool b)
 {
@@ -485,7 +485,7 @@ smbc_setOptionUseCCache(SMBCCTX *c, smbc_bool b)
         }
 }
 
-/** Get whether to enable use of the winbind ccache */
+/** Get indication whether the password supplied is the NT hash */
 smbc_bool
 smbc_getOptionUseNTHash(SMBCCTX *c)
 {


-- 
Samba Shared Repository


More information about the samba-cvs mailing list