[SCM] Samba Shared Repository - branch master updated

Matthias Dieter Wallnöfer mdw at samba.org
Fri Oct 15 01:28:01 MDT 2010


The branch, master has been updated
       via  f794563 s4:lib/registry/util.c - cosmetic - fix indentation, trailing whitespaces
       via  7be36a0 s4:lib/registry/util.c - strtoll call - better say explicitly that data is in hex format
       via  8055074 s4:ntptr/ntptr_simple_ldb.c - use LDB result constants
       via  c362ce3 s4:libnet_samsync_ldb.c - use LDB result constants
       via  ace4378 s4:lsa RPC server - use LDB result constant
       via  b647b2d s4:samldb LDB module - cosmetic - use "ldb" variable rather than "ldb_module_get_ctx"
       via  9310da1 s4:samdb_create_foreign_security_principal - proof error code of "samdb_msg_add_string"
       via  9e69b22 s4:dsdb/common/util.c - samdb_msg_add_* calls - proof for more OOM conditions
       via  06ec5d0 s4:dsdb/common/util.c - samdb_msg_add_string - the attribute name doesn't need to be duplicated
       via  d099f86 s4:libds/common/flags.h - fix typo
      from  9bc57e1 s4:dsdb - remove "samdb_msg_add_value"

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


- Log -----------------------------------------------------------------
commit f794563267ca26b62d844d87b5a4fa3668fb803c
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date:   Thu Oct 14 10:54:50 2010 +0200

    s4:lib/registry/util.c - cosmetic - fix indentation, trailing whitespaces
    
    Autobuild-User: Matthias Dieter Wallnöfer <mdw at samba.org>
    Autobuild-Date: Fri Oct 15 07:27:07 UTC 2010 on sn-devel-104

commit 7be36a0bd99ce7f6391ea49b66ca809380189c36
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date:   Thu Oct 14 10:50:19 2010 +0200

    s4:lib/registry/util.c - strtoll call - better say explicitly that data is in hex format
    
    Template is commit deebc934edb9a0a70e7615b1161d7a60fcb1d78f from Wilco.

commit 80550746ffbb09658ce19520e853e218d793635e
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date:   Thu Oct 14 22:38:10 2010 +0200

    s4:ntptr/ntptr_simple_ldb.c - use LDB result constants

commit c362ce36b36937571cf0d4ac8d015f09848a9780
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date:   Thu Oct 14 22:25:40 2010 +0200

    s4:libnet_samsync_ldb.c - use LDB result constants

commit ace4378de19371994e8e4c0d1a2d61bb9c039ea7
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date:   Thu Oct 14 21:54:26 2010 +0200

    s4:lsa RPC server - use LDB result constant

commit b647b2d5b366a6720adc88918c2bd3d6b16bcd13
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date:   Thu Oct 14 17:00:19 2010 +0200

    s4:samldb LDB module - cosmetic - use "ldb" variable rather than "ldb_module_get_ctx"

commit 9310da1e2b483cbf9899ad1ebcdfd07f7c0eeac0
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date:   Thu Oct 14 22:36:07 2010 +0200

    s4:samdb_create_foreign_security_principal - proof error code of "samdb_msg_add_string"

commit 9e69b22e70a6e119255e8e3d37964e6ae16ade09
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date:   Thu Oct 14 22:43:33 2010 +0200

    s4:dsdb/common/util.c - samdb_msg_add_* calls - proof for more OOM conditions

commit 06ec5d0177ac3bcd2b12f6279b23bc0a02f93bf9
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date:   Thu Oct 14 22:41:06 2010 +0200

    s4:dsdb/common/util.c - samdb_msg_add_string - the attribute name doesn't need to be duplicated
    
    This is done internally by the LDB library - look at "ldb_msg_add_empty".

commit d099f86a373e4e8dd11c7736ffbce177a910db9f
Author: Matthias Dieter Wallnöfer <mdw at samba.org>
Date:   Thu Oct 14 11:31:44 2010 +0200

    s4:libds/common/flags.h - fix typo

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

Summary of changes:
 libds/common/flags.h                        |    2 +-
 source4/dsdb/common/util.c                  |   22 +++++++++++++------
 source4/dsdb/samdb/ldb_modules/samldb.c     |    2 +-
 source4/lib/registry/util.c                 |   23 ++++++++++---------
 source4/libnet/libnet_samsync_ldb.c         |   30 +++++++++++++-------------
 source4/ntptr/simple_ldb/ntptr_simple_ldb.c |    4 +-
 source4/rpc_server/lsa/dcesrv_lsa.c         |    2 +-
 7 files changed, 47 insertions(+), 38 deletions(-)


Changeset truncated at 500 lines:

diff --git a/libds/common/flags.h b/libds/common/flags.h
index 44a5014..a10fa48 100644
--- a/libds/common/flags.h
+++ b/libds/common/flags.h
@@ -208,7 +208,7 @@
 /* wellknown GUIDs for optional directory features */
 #define DS_GUID_FEATURE_RECYCLE_BIN		      "766ddcd8-acd0-445e-f3b9-a7f9b6744f2a"
 
-/* dsHeurisrics character indexes see MS-ADTS 7.1.1.2.4.1.2 */
+/* dsHeuristics character indexes see MS-ADTS 7.1.1.2.4.1.2 */
 
 #define DS_HR_SUPFIRSTLASTANR                     0x00000001
 #define DS_HR_SUPLASTFIRSTANR                     0x00000002
diff --git a/source4/dsdb/common/util.c b/source4/dsdb/common/util.c
index 18a8669..d0fc3b1 100644
--- a/source4/dsdb/common/util.c
+++ b/source4/dsdb/common/util.c
@@ -770,12 +770,11 @@ int samdb_find_or_add_attribute(struct ldb_context *ldb, struct ldb_message *msg
 int samdb_msg_add_string(struct ldb_context *sam_ldb, TALLOC_CTX *mem_ctx, struct ldb_message *msg,
 			 const char *attr_name, const char *str)
 {
-	char *s = talloc_strdup(mem_ctx, str);
-	char *a = talloc_strdup(mem_ctx, attr_name);
-	if (s == NULL || a == NULL) {
+	const char *s = talloc_strdup(mem_ctx, str);
+	if (s == NULL) {
 		return ldb_oom(sam_ldb);
 	}
-	return ldb_msg_add_string(msg, a, s);
+	return ldb_msg_add_string(msg, attr_name, s);
 }
 
 /*
@@ -927,6 +926,9 @@ int samdb_msg_add_int(struct ldb_context *sam_ldb, TALLOC_CTX *mem_ctx, struct l
 		       const char *attr_name, int v)
 {
 	const char *s = talloc_asprintf(mem_ctx, "%d", v);
+	if (s == NULL) {
+		return ldb_oom(sam_ldb);
+	}
 	return samdb_msg_add_string(sam_ldb, mem_ctx, msg, attr_name, s);
 }
 
@@ -946,6 +948,9 @@ int samdb_msg_add_int64(struct ldb_context *sam_ldb, TALLOC_CTX *mem_ctx, struct
 			const char *attr_name, int64_t v)
 {
 	const char *s = talloc_asprintf(mem_ctx, "%lld", (long long)v);
+	if (s == NULL) {
+		return ldb_oom(sam_ldb);
+	}
 	return samdb_msg_add_string(sam_ldb, mem_ctx, msg, attr_name, s);
 }
 
@@ -2339,9 +2344,12 @@ NTSTATUS samdb_create_foreign_security_principal(struct ldb_context *sam_ctx, TA
 		return NT_STATUS_NO_MEMORY;
 	}
 
-	samdb_msg_add_string(sam_ctx, msg, msg,
-			     "objectClass",
-			     "foreignSecurityPrincipal");
+	ret = samdb_msg_add_string(sam_ctx, msg, msg,
+				   "objectClass", "foreignSecurityPrincipal");
+	if (ret != LDB_SUCCESS) {
+		talloc_free(sidstr);
+		return NT_STATUS_NO_MEMORY;
+	}
 
 	/* create the alias */
 	ret = ldb_add(sam_ctx, msg);
diff --git a/source4/dsdb/samdb/ldb_modules/samldb.c b/source4/dsdb/samdb/ldb_modules/samldb.c
index 3f1dd49..400ae81 100644
--- a/source4/dsdb/samdb/ldb_modules/samldb.c
+++ b/source4/dsdb/samdb/ldb_modules/samldb.c
@@ -282,7 +282,7 @@ static int samldb_rodc_add(struct samldb_ctx *ac)
 		}
 	}
 
-	ldb_asprintf_errstring(ldb_module_get_ctx(ac->module),
+	ldb_asprintf_errstring(ldb,
 			       "%08X: Unable to find available msDS-SecondaryKrbTgtNumber",
 			       W_ERROR_V(WERR_NO_SYSTEM_RESOURCES));
 	return LDB_ERR_OTHER;
diff --git a/source4/lib/registry/util.c b/source4/lib/registry/util.c
index d1e9539..bbcc869 100644
--- a/source4/lib/registry/util.c
+++ b/source4/lib/registry/util.c
@@ -35,8 +35,9 @@ _PUBLIC_ char *reg_val_data_string(TALLOC_CTX *mem_ctx, uint32_t type,
 		case REG_EXPAND_SZ:
 		case REG_SZ:
 			convert_string_talloc(mem_ctx,
-							  CH_UTF16, CH_UNIX, data.data, data.length,
-							  (void **)&ret, NULL, false);
+					      CH_UTF16, CH_UNIX,
+					      data.data, data.length,
+					      (void **)&ret, NULL, false);
 			break;
 		case REG_DWORD:
 		case REG_DWORD_BIG_ENDIAN:
@@ -68,7 +69,7 @@ _PUBLIC_ char *reg_val_data_string(TALLOC_CTX *mem_ctx, uint32_t type,
 }
 
 /** Generate a string that describes a registry value */
-_PUBLIC_ char *reg_val_description(TALLOC_CTX *mem_ctx, 
+_PUBLIC_ char *reg_val_description(TALLOC_CTX *mem_ctx,
 				   const char *name,
 				   uint32_t data_type,
 				   const DATA_BLOB data)
@@ -80,7 +81,7 @@ _PUBLIC_ char *reg_val_description(TALLOC_CTX *mem_ctx,
 
 /*
  * This implements reading hex bytes that include comma's.
- * It was previously handled by strhex_to_data_blob, but that did not cover 
+ * It was previously handled by strhex_to_data_blob, but that did not cover
  * the format used by windows.
  */
 static DATA_BLOB reg_strhex_to_data_blob(TALLOC_CTX *mem_ctx, const char *str)
@@ -101,7 +102,7 @@ static DATA_BLOB reg_strhex_to_data_blob(TALLOC_CTX *mem_ctx, const char *str)
 		lo = strchr(HEXCHARS, toupper(str[i]));
 		if (lo == NULL)
 			break;
-		
+
 		ret.data[j] = PTR_DIFF(hi, HEXCHARS) << 4;
 		ret.data[j] += PTR_DIFF(lo, HEXCHARS);
 		j++;
@@ -112,7 +113,7 @@ static DATA_BLOB reg_strhex_to_data_blob(TALLOC_CTX *mem_ctx, const char *str)
 		}
 	}
 	return ret;
-} 
+}
 
 
 _PUBLIC_ bool reg_string_to_val(TALLOC_CTX *mem_ctx, const char *type_str,
@@ -158,10 +159,10 @@ _PUBLIC_ bool reg_string_to_val(TALLOC_CTX *mem_ctx, const char *type_str,
 	switch (*type) {
 		case REG_SZ:
 			return convert_string_talloc(mem_ctx,
-								 CH_UNIX, CH_UTF16, data_str,
-								 strlen(data_str)+1,
-								 (void **)&data->data,
-								 &data->length, false);
+						     CH_UNIX, CH_UTF16,
+						     data_str, strlen(data_str)+1,
+						     (void **)&data->data,
+						     &data->length, false);
 			break;
 		case REG_MULTI_SZ:
 		case REG_EXPAND_SZ:
@@ -177,7 +178,7 @@ _PUBLIC_ bool reg_string_to_val(TALLOC_CTX *mem_ctx, const char *type_str,
 			}
 			break;
 		case REG_QWORD: {
-			uint64_t tmp = strtoll(data_str, NULL, 0);
+			uint64_t tmp = strtoll(data_str, NULL, 16);
 			*data = data_blob_talloc(mem_ctx, NULL, sizeof(uint64_t));
 			if (data->data == NULL) return false;
 			SBVAL(data->data, 0, tmp);
diff --git a/source4/libnet/libnet_samsync_ldb.c b/source4/libnet/libnet_samsync_ldb.c
index 0498505..917257d 100644
--- a/source4/libnet/libnet_samsync_ldb.c
+++ b/source4/libnet/libnet_samsync_ldb.c
@@ -101,7 +101,7 @@ static NTSTATUS samsync_ldb_add_foreignSecurityPrincipal(TALLOC_CTX *mem_ctx,
 
 	/* create the alias */
 	ret = ldb_add(state->sam_ldb, msg);
-	if (ret != 0) {
+	if (ret != LDB_SUCCESS) {
 		*error_string = talloc_asprintf(mem_ctx, "Failed to create foreignSecurityPrincipal "
 						"record %s: %s",
 						ldb_dn_get_linearized(msg->dn),
@@ -433,7 +433,7 @@ static NTSTATUS samsync_ldb_handle_user(TALLOC_CTX *mem_ctx,
 		}
 
 		ret = ldb_add(state->sam_ldb, msg);
-		if (ret != 0) {
+		if (ret != LDB_SUCCESS) {
 			struct ldb_dn *first_try_dn = msg->dn;
 			/* Try again with the default DN */
 			if (!remote_msgs) {
@@ -444,7 +444,7 @@ static NTSTATUS samsync_ldb_handle_user(TALLOC_CTX *mem_ctx,
 			} else {
 				msg->dn = talloc_steal(msg, remote_msgs[0]->dn);
 				ret = ldb_add(state->sam_ldb, msg);
-				if (ret != 0) {
+				if (ret != LDB_SUCCESS) {
 					*error_string = talloc_asprintf(mem_ctx, "Failed to create user record.  Tried both %s and %s: %s",
 									ldb_dn_get_linearized(first_try_dn),
 									ldb_dn_get_linearized(msg->dn),
@@ -455,7 +455,7 @@ static NTSTATUS samsync_ldb_handle_user(TALLOC_CTX *mem_ctx,
 		}
 	} else {
 		ret = dsdb_replace(state->sam_ldb, msg, 0);
-		if (ret != 0) {
+		if (ret != LDB_SUCCESS) {
 			*error_string = talloc_asprintf(mem_ctx, "Failed to modify user record %s: %s",
 							ldb_dn_get_linearized(msg->dn),
 							ldb_errstring(state->sam_ldb));
@@ -497,7 +497,7 @@ static NTSTATUS samsync_ldb_delete_user(TALLOC_CTX *mem_ctx,
 	}
 
 	ret = ldb_delete(state->sam_ldb, msgs[0]->dn);
-	if (ret != 0) {
+	if (ret != LDB_SUCCESS) {
 		*error_string = talloc_asprintf(mem_ctx, "Failed to delete user record %s: %s",
 						ldb_dn_get_linearized(msgs[0]->dn),
 						ldb_errstring(state->sam_ldb));
@@ -586,7 +586,7 @@ static NTSTATUS samsync_ldb_handle_group(TALLOC_CTX *mem_ctx,
 		}
 
 		ret = ldb_add(state->sam_ldb, msg);
-		if (ret != 0) {
+		if (ret != LDB_SUCCESS) {
 			*error_string = talloc_asprintf(mem_ctx, "Failed to create group record %s: %s",
 							ldb_dn_get_linearized(msg->dn),
 							ldb_errstring(state->sam_ldb));
@@ -594,7 +594,7 @@ static NTSTATUS samsync_ldb_handle_group(TALLOC_CTX *mem_ctx,
 		}
 	} else {
 		ret = dsdb_replace(state->sam_ldb, msg, 0);
-		if (ret != 0) {
+		if (ret != LDB_SUCCESS) {
 			*error_string = talloc_asprintf(mem_ctx, "Failed to modify group record %s: %s",
 							ldb_dn_get_linearized(msg->dn),
 							ldb_errstring(state->sam_ldb));
@@ -636,7 +636,7 @@ static NTSTATUS samsync_ldb_delete_group(TALLOC_CTX *mem_ctx,
 	}
 	
 	ret = ldb_delete(state->sam_ldb, msgs[0]->dn);
-	if (ret != 0) {
+	if (ret != LDB_SUCCESS) {
 		*error_string = talloc_asprintf(mem_ctx, "Failed to delete group record %s: %s",
 						ldb_dn_get_linearized(msgs[0]->dn),
 						ldb_errstring(state->sam_ldb));
@@ -709,7 +709,7 @@ static NTSTATUS samsync_ldb_handle_group_member(TALLOC_CTX *mem_ctx,
 	}
 	
 	ret = dsdb_replace(state->sam_ldb, msg, 0);
-	if (ret != 0) {
+	if (ret != LDB_SUCCESS) {
 		*error_string = talloc_asprintf(mem_ctx, "Failed to modify group record %s: %s",
 						ldb_dn_get_linearized(msg->dn),
 						ldb_errstring(state->sam_ldb));
@@ -800,7 +800,7 @@ static NTSTATUS samsync_ldb_handle_alias(TALLOC_CTX *mem_ctx,
 		}
 
 		ret = ldb_add(state->sam_ldb, msg);
-		if (ret != 0) {
+		if (ret != LDB_SUCCESS) {
 			*error_string = talloc_asprintf(mem_ctx, "Failed to create alias record %s: %s",
 							ldb_dn_get_linearized(msg->dn),
 							ldb_errstring(state->sam_ldb));
@@ -808,7 +808,7 @@ static NTSTATUS samsync_ldb_handle_alias(TALLOC_CTX *mem_ctx,
 		}
 	} else {
 		ret = dsdb_replace(state->sam_ldb, msg, 0);
-		if (ret != 0) {
+		if (ret != LDB_SUCCESS) {
 			*error_string = talloc_asprintf(mem_ctx, "Failed to modify alias record %s: %s",
 							ldb_dn_get_linearized(msg->dn),
 							ldb_errstring(state->sam_ldb));
@@ -845,7 +845,7 @@ static NTSTATUS samsync_ldb_delete_alias(TALLOC_CTX *mem_ctx,
 	}
 
 	ret = ldb_delete(state->sam_ldb, msgs[0]->dn);
-	if (ret != 0) {
+	if (ret != LDB_SUCCESS) {
 		*error_string = talloc_asprintf(mem_ctx, "Failed to delete alias record %s: %s",
 						ldb_dn_get_linearized(msgs[0]->dn),
 						ldb_errstring(state->sam_ldb));
@@ -927,7 +927,7 @@ static NTSTATUS samsync_ldb_handle_alias_member(TALLOC_CTX *mem_ctx,
 	}
 
 	ret = dsdb_replace(state->sam_ldb, msg, 0);
-	if (ret != 0) {
+	if (ret != LDB_SUCCESS) {
 		*error_string = talloc_asprintf(mem_ctx, "Failed to modify group record %s: %s",
 						ldb_dn_get_linearized(msg->dn),
 						ldb_errstring(state->sam_ldb));
@@ -980,7 +980,7 @@ static NTSTATUS samsync_ldb_handle_account(TALLOC_CTX *mem_ctx,
 		ret = ldb_add(state->pdb, msg);		
 	}
 
-	if (ret != 0) {
+	if (ret != LDB_SUCCESS) {
 		*error_string = talloc_asprintf(mem_ctx, "Failed to modify privilege record %s",
 						ldb_dn_get_linearized(msg->dn));
 		return NT_STATUS_INTERNAL_DB_CORRUPTION;
@@ -1029,7 +1029,7 @@ static NTSTATUS samsync_ldb_delete_account(TALLOC_CTX *mem_ctx,
 			     "privilege");
 
 	ret = dsdb_replace(state->sam_ldb, msg, 0);
-	if (ret != 0) {
+	if (ret != LDB_SUCCESS) {
 		*error_string = talloc_asprintf(mem_ctx, "Failed to modify privilege record %s",
 						ldb_dn_get_linearized(msg->dn));
 		return NT_STATUS_INTERNAL_DB_CORRUPTION;
diff --git a/source4/ntptr/simple_ldb/ntptr_simple_ldb.c b/source4/ntptr/simple_ldb/ntptr_simple_ldb.c
index 755c1ba..2790f83 100644
--- a/source4/ntptr/simple_ldb/ntptr_simple_ldb.c
+++ b/source4/ntptr/simple_ldb/ntptr_simple_ldb.c
@@ -74,13 +74,13 @@ static int sptr_db_search(struct ldb_context *ldb,
 
 #define SET_STRING(ldb, mod, attr, value) do { \
 	if (value == NULL) return WERR_INVALID_PARAM; \
-	if (samdb_msg_add_string(ldb, (TALLOC_CTX *)mod, mod, attr, value) != 0) { \
+	if (samdb_msg_add_string(ldb, (TALLOC_CTX *)mod, mod, attr, value) != LDB_SUCCESS) { \
 		return WERR_NOMEM; \
 	} \
 } while (0)
 
 #define SET_UINT(ldb, mod, attr, value) do { \
-	if (samdb_msg_add_uint(ldb, (TALLOC_CTX *)mod, mod, attr, value) != 0) { \
+	if (samdb_msg_add_uint(ldb, (TALLOC_CTX *)mod, mod, attr, value) != LDB_SUCCESS) { \
 		return WERR_NOMEM; \
 	} \
 } while (0)
diff --git a/source4/rpc_server/lsa/dcesrv_lsa.c b/source4/rpc_server/lsa/dcesrv_lsa.c
index 1adfc08..d2339c0 100644
--- a/source4/rpc_server/lsa/dcesrv_lsa.c
+++ b/source4/rpc_server/lsa/dcesrv_lsa.c
@@ -3185,7 +3185,7 @@ static NTSTATUS dcesrv_lsa_SetSecret(struct dcesrv_call_state *dce_call, TALLOC_
 			}
 		} else {
 			if (samdb_msg_add_delete(secret_state->sam_ldb, 
-						 mem_ctx, msg, "priorValue")) {
+						 mem_ctx, msg, "priorValue") != LDB_SUCCESS) {
 				return NT_STATUS_NO_MEMORY;
 			}
 			


-- 
Samba Shared Repository


More information about the samba-cvs mailing list