[SCM] Samba Shared Repository - branch master updated
Jeremy Allison
jra at samba.org
Wed Aug 16 02:12:03 UTC 2017
The branch, master has been updated
via 652bf0c libhttp: Remove an unneeded include
via ff0eed6 dbwrap: Simplify dbwrap_unmarshall_fn
via ef2de24 dbwrap: Simplify dbwrap_trans_delete
via 2ddf8e0 dbwrap: Simplify dbwrap_trans_store
via b01b7c9 dbwrap: Simplify dbwrap_store_uint32_bystring
via ae28e4d dbwrap: Simplify dbwrap_store_int32_bystring
via a11450d dbwrap: Convert dbwrap_delete to dbwrap_do_locked
via 5095733 dbwrap: Convert dbwrap_store to dbwrap_do_locked
from 0dbcd6a py-librpc: Strictly check the type of the incoming sid pointer
https://git.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 652bf0ca7efcb13d7dab4a9f251a38af80c160a5
Author: Volker Lendecke <vl at samba.org>
Date: Wed Jul 26 15:18:16 2017 +0200
libhttp: Remove an unneeded include
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
Autobuild-User(master): Jeremy Allison <jra at samba.org>
Autobuild-Date(master): Wed Aug 16 04:11:47 CEST 2017 on sn-devel-144
commit ff0eed62d3334cd720122d97e38df9cf8651acc7
Author: Volker Lendecke <vl at samba.org>
Date: Wed Jul 26 15:14:51 2017 +0200
dbwrap: Simplify dbwrap_unmarshall_fn
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
commit ef2de247c1d0887283cb8dfc25d9e48252a2c9e2
Author: Volker Lendecke <vl at samba.org>
Date: Wed Jul 26 15:12:21 2017 +0200
dbwrap: Simplify dbwrap_trans_delete
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
commit 2ddf8e0abc235f396d4b70f9cb22f55d21dffdc5
Author: Volker Lendecke <vl at samba.org>
Date: Wed Jul 26 15:10:55 2017 +0200
dbwrap: Simplify dbwrap_trans_store
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
commit b01b7c9ef9ef45205c6eb49a5959d8718559fd79
Author: Volker Lendecke <vl at samba.org>
Date: Wed Jul 26 14:56:53 2017 +0200
dbwrap: Simplify dbwrap_store_uint32_bystring
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
commit ae28e4db441baff83e374086aa9c5a0c06435f92
Author: Volker Lendecke <vl at samba.org>
Date: Wed Jul 26 14:56:53 2017 +0200
dbwrap: Simplify dbwrap_store_int32_bystring
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
commit a11450d825b756ca8880c6307e38a6ce072fff54
Author: Volker Lendecke <vl at samba.org>
Date: Wed Nov 9 16:37:49 2016 +0100
dbwrap: Convert dbwrap_delete to dbwrap_do_locked
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
commit 5095733f923158701fb5a566cd16c2112d51e1c4
Author: Volker Lendecke <vl at samba.org>
Date: Wed Nov 9 16:34:28 2016 +0100
dbwrap: Convert dbwrap_store to dbwrap_do_locked
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
-----------------------------------------------------------------------
Summary of changes:
lib/dbwrap/dbwrap.c | 51 ++++++++++++++++++++------------
lib/dbwrap/dbwrap_util.c | 76 ++++++++++--------------------------------------
source4/lib/http/http.c | 1 -
3 files changed, 49 insertions(+), 79 deletions(-)
Changeset truncated at 500 lines:
diff --git a/lib/dbwrap/dbwrap.c b/lib/dbwrap/dbwrap.c
index 22437f6..e1d792f 100644
--- a/lib/dbwrap/dbwrap.c
+++ b/lib/dbwrap/dbwrap.c
@@ -301,38 +301,53 @@ bool dbwrap_exists(struct db_context *db, TDB_DATA key)
return (result == 1);
}
+struct dbwrap_store_state {
+ TDB_DATA data;
+ int flags;
+ NTSTATUS status;
+};
+
+static void dbwrap_store_fn(struct db_record *rec, void *private_data)
+{
+ struct dbwrap_store_state *state = private_data;
+ state->status = dbwrap_record_store(rec, state->data, state->flags);
+}
+
NTSTATUS dbwrap_store(struct db_context *db, TDB_DATA key,
TDB_DATA data, int flags)
{
- struct db_record *rec;
+ struct dbwrap_store_state state = { .data = data, .flags = flags };
NTSTATUS status;
- TALLOC_CTX *frame = talloc_stackframe();
- rec = dbwrap_fetch_locked(db, frame, key);
- if (rec == NULL) {
- TALLOC_FREE(frame);
- return NT_STATUS_NO_MEMORY;
+ status = dbwrap_do_locked(db, key, dbwrap_store_fn, &state);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
}
- status = dbwrap_record_store(rec, data, flags);
- TALLOC_FREE(frame);
- return status;
+ return state.status;
+}
+
+struct dbwrap_delete_state {
+ NTSTATUS status;
+};
+
+static void dbwrap_delete_fn(struct db_record *rec, void *private_data)
+{
+ struct dbwrap_delete_state *state = private_data;
+ state->status = dbwrap_record_delete(rec);
}
NTSTATUS dbwrap_delete(struct db_context *db, TDB_DATA key)
{
- struct db_record *rec;
+ struct dbwrap_delete_state state;
NTSTATUS status;
- TALLOC_CTX *frame = talloc_stackframe();
- rec = dbwrap_fetch_locked(db, frame, key);
- if (rec == NULL) {
- TALLOC_FREE(frame);
- return NT_STATUS_NO_MEMORY;
+ status = dbwrap_do_locked(db, key, dbwrap_delete_fn, &state);
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
}
- status = dbwrap_record_delete(rec);
- TALLOC_FREE(frame);
- return status;
+
+ return state.status;
}
NTSTATUS dbwrap_traverse(struct db_context *db,
diff --git a/lib/dbwrap/dbwrap_util.c b/lib/dbwrap/dbwrap_util.c
index 22f910d..df6dea4 100644
--- a/lib/dbwrap/dbwrap_util.c
+++ b/lib/dbwrap/dbwrap_util.c
@@ -77,23 +77,14 @@ NTSTATUS dbwrap_fetch_int32_bystring(struct db_context *db, const char *keystr,
NTSTATUS dbwrap_store_int32_bystring(struct db_context *db, const char *keystr,
int32_t v)
{
- struct db_record *rec;
- int32_t v_store;
+ uint8_t v_store[sizeof(int32_t)];
+ TDB_DATA data = { .dptr = v_store, .dsize = sizeof(v_store) };
NTSTATUS status;
- rec = dbwrap_fetch_locked(db, talloc_tos(),
- string_term_tdb_data(keystr));
- if (rec == NULL) {
- return NT_STATUS_UNSUCCESSFUL;
- }
-
- SIVAL(&v_store, 0, v);
+ SIVAL(v_store, 0, v);
- status = dbwrap_record_store(rec,
- make_tdb_data((const uint8_t *)&v_store,
- sizeof(v_store)),
- TDB_REPLACE);
- TALLOC_FREE(rec);
+ status = dbwrap_store(db, string_term_tdb_data(keystr), data,
+ TDB_REPLACE);
return status;
}
@@ -142,23 +133,14 @@ NTSTATUS dbwrap_fetch_uint32_bystring(struct db_context *db,
NTSTATUS dbwrap_store_uint32_bystring(struct db_context *db,
const char *keystr, uint32_t v)
{
- struct db_record *rec;
- uint32_t v_store;
+ uint8_t v_store[sizeof(uint32_t)];
+ TDB_DATA data = { .dptr = v_store, .dsize = sizeof(v_store) };
NTSTATUS status;
- rec = dbwrap_fetch_locked(db, talloc_tos(),
- string_term_tdb_data(keystr));
- if (rec == NULL) {
- return NT_STATUS_INVALID_PARAMETER;
- }
-
- SIVAL(&v_store, 0, v);
+ SIVAL(v_store, 0, v);
- status = dbwrap_record_store(rec,
- make_tdb_data((const uint8_t *)&v_store,
- sizeof(v_store)),
- TDB_REPLACE);
- TALLOC_FREE(rec);
+ status = dbwrap_store(db, string_term_tdb_data(keystr), data,
+ TDB_REPLACE);
return status;
}
@@ -362,24 +344,17 @@ struct dbwrap_store_context {
static NTSTATUS dbwrap_store_action(struct db_context *db, void *private_data)
{
- struct db_record *rec = NULL;
NTSTATUS status;
struct dbwrap_store_context *store_ctx;
store_ctx = (struct dbwrap_store_context *)private_data;
- rec = dbwrap_fetch_locked(db, talloc_tos(), *(store_ctx->key));
- if (rec == NULL) {
- DEBUG(5, ("fetch_locked failed\n"));
- return NT_STATUS_NO_MEMORY;
- }
-
- status = dbwrap_record_store(rec, *(store_ctx->dbuf), store_ctx->flag);
+ status = dbwrap_store(db, *(store_ctx->key), *(store_ctx->dbuf),
+ store_ctx->flag);
if (!NT_STATUS_IS_OK(status)) {
DEBUG(5, ("store returned %s\n", nt_errstr(status)));
}
- TALLOC_FREE(rec);
return status;
}
@@ -401,22 +376,13 @@ NTSTATUS dbwrap_trans_store(struct db_context *db, TDB_DATA key, TDB_DATA dbuf,
static NTSTATUS dbwrap_delete_action(struct db_context * db, void *private_data)
{
NTSTATUS status;
- struct db_record *rec;
TDB_DATA *key = (TDB_DATA *)private_data;
- rec = dbwrap_fetch_locked(db, talloc_tos(), *key);
- if (rec == NULL) {
- DEBUG(5, ("fetch_locked failed\n"));
- return NT_STATUS_NO_MEMORY;
- }
-
- status = dbwrap_record_delete(rec);
+ status = dbwrap_delete(db, *key);
if (!NT_STATUS_IS_OK(status)) {
DBG_INFO("dbwrap_record_delete returned %s\n",
nt_errstr(status));
}
-
- talloc_free(rec);
return status;
}
@@ -743,22 +709,12 @@ static bool dbwrap_unmarshall_fn(TDB_DATA key, TDB_DATA value,
void *private_data)
{
struct dbwrap_unmarshall_state *state = private_data;
- struct db_record *rec;
NTSTATUS status;
- rec = dbwrap_fetch_locked(state->db, state->db, key);
- if (rec == NULL) {
- DEBUG(10, ("%s: dbwrap_fetch_locked failed\n",
- __func__));
- state->ret = NT_STATUS_NO_MEMORY;
- return false;
- }
-
- status = dbwrap_record_store(rec, value, 0);
- TALLOC_FREE(rec);
+ status = dbwrap_store(state->db, key, value, 0);
if (!NT_STATUS_IS_OK(status)) {
- DEBUG(10, ("%s: dbwrap_record_store failed: %s\n",
- __func__, nt_errstr(status)));
+ DBG_DEBUG("dbwrap_record_store failed: %s\n",
+ nt_errstr(status));
state->ret = status;
return false;
}
diff --git a/source4/lib/http/http.c b/source4/lib/http/http.c
index 8fac33f..659cba0 100644
--- a/source4/lib/http/http.c
+++ b/source4/lib/http/http.c
@@ -20,7 +20,6 @@
*/
#include "includes.h"
-#include <talloc_dict.h>
#include "lib/util/tevent_ntstatus.h"
#include "http.h"
#include "http_internal.h"
--
Samba Shared Repository
More information about the samba-cvs
mailing list