diff options
author | Günther Deschner <gd@samba.org> | 2009-02-03 13:08:44 +0100 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2009-02-04 21:12:05 +0100 |
commit | 63a992168db48568c91fe622e81141ca00c9bc45 (patch) | |
tree | f126d43b5202cdaa0ece1671a22b1bd6697f1258 /source3 | |
parent | 1b71fa5c59f3af4f096a640839c7d48b20b2266a (diff) | |
download | samba-63a992168db48568c91fe622e81141ca00c9bc45.tar.gz samba-63a992168db48568c91fe622e81141ca00c9bc45.tar.bz2 samba-63a992168db48568c91fe622e81141ca00c9bc45.zip |
s3-eventlog: add evlog_push_record function.
Guenther
Diffstat (limited to 'source3')
-rw-r--r-- | source3/include/proto.h | 4 | ||||
-rw-r--r-- | source3/rpc_server/srv_eventlog_lib.c | 28 |
2 files changed, 32 insertions, 0 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h index 0f9779f2f8..68c4c8b8e3 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -6271,6 +6271,10 @@ NTSTATUS evlog_push_record_tdb(TALLOC_CTX *mem_ctx, TDB_CONTEXT *tdb, struct eventlog_Record_tdb *r, uint32_t *record_number); +NTSTATUS evlog_push_record(TALLOC_CTX *mem_ctx, + TDB_CONTEXT *tdb, + struct EVENTLOGRECORD *r, + uint32_t *record_number); struct EVENTLOGRECORD *evlog_pull_record(TALLOC_CTX *mem_ctx, TDB_CONTEXT *tdb, uint32_t record_number); diff --git a/source3/rpc_server/srv_eventlog_lib.c b/source3/rpc_server/srv_eventlog_lib.c index 1cd306c5f2..2c70141360 100644 --- a/source3/rpc_server/srv_eventlog_lib.c +++ b/source3/rpc_server/srv_eventlog_lib.c @@ -941,6 +941,34 @@ NTSTATUS evlog_push_record_tdb(TALLOC_CTX *mem_ctx, /******************************************************************** ********************************************************************/ +NTSTATUS evlog_push_record(TALLOC_CTX *mem_ctx, + TDB_CONTEXT *tdb, + struct EVENTLOGRECORD *r, + uint32_t *record_number) +{ + struct eventlog_Record_tdb *t; + NTSTATUS status; + + t = talloc_zero(mem_ctx, struct eventlog_Record_tdb); + if (!t) { + return NT_STATUS_NO_MEMORY; + } + + status = evlog_evt_entry_to_tdb_entry(t, r, t); + if (!NT_STATUS_IS_OK(status)) { + talloc_free(t); + return status; + } + + status = evlog_push_record_tdb(mem_ctx, tdb, t, record_number); + talloc_free(t); + + return status; +} + +/******************************************************************** + ********************************************************************/ + NTSTATUS evlog_evt_entry_to_tdb_entry(TALLOC_CTX *mem_ctx, const struct EVENTLOGRECORD *e, struct eventlog_Record_tdb *t) |