diff options
author | Günther Deschner <gd@samba.org> | 2010-05-06 11:42:52 +0200 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2010-05-06 13:41:51 +0200 |
commit | d2d7174394c1283a3ae8e313f9a6d97df8708334 (patch) | |
tree | 430ed97dd05c1244aab7dcf6346a5f14d6ef18c0 /source3/lib | |
parent | 0dfe1b9b13d9caec4ebda37a792e7eaa0b9c7200 (diff) | |
download | samba-d2d7174394c1283a3ae8e313f9a6d97df8708334.tar.gz samba-d2d7174394c1283a3ae8e313f9a6d97df8708334.tar.xz samba-d2d7174394c1283a3ae8e313f9a6d97df8708334.zip |
s3-eventlog: move all eventlog headers to lib/eventlog and only include where required.
Guenther
Diffstat (limited to 'source3/lib')
-rw-r--r-- | source3/lib/eventlog/eventlog.c | 1 | ||||
-rw-r--r-- | source3/lib/eventlog/eventlog.h | 43 | ||||
-rw-r--r-- | source3/lib/eventlog/proto.h | 35 |
3 files changed, 79 insertions, 0 deletions
diff --git a/source3/lib/eventlog/eventlog.c b/source3/lib/eventlog/eventlog.c index dc14214e36..c218467c47 100644 --- a/source3/lib/eventlog/eventlog.c +++ b/source3/lib/eventlog/eventlog.c @@ -21,6 +21,7 @@ */ #include "includes.h" +#include "lib/eventlog/eventlog.h" /* maintain a list of open eventlog tdbs with reference counts */ diff --git a/source3/lib/eventlog/eventlog.h b/source3/lib/eventlog/eventlog.h new file mode 100644 index 0000000000..29c25c3122 --- /dev/null +++ b/source3/lib/eventlog/eventlog.h @@ -0,0 +1,43 @@ +/* + * Unix SMB/CIFS implementation. + * RPC Pipe client / server routines + * Copyright (C) Marcin Krzysztof Porwit 2005. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see <http://www.gnu.org/licenses/>. + */ + +/* Defines for TDB keys */ +#define EVT_OLDEST_ENTRY "INFO/oldest_entry" +#define EVT_NEXT_RECORD "INFO/next_record" +#define EVT_VERSION "INFO/version" +#define EVT_MAXSIZE "INFO/maxsize" +#define EVT_RETENTION "INFO/retention" + +#define ELOG_APPL "Application" +#define ELOG_SYS "System" +#define ELOG_SEC "Security" + +typedef struct elog_tdb { + struct elog_tdb *prev, *next; + char *name; + TDB_CONTEXT *tdb; + int ref_count; +} ELOG_TDB; + +#define ELOG_TDB_CTX(x) ((x)->tdb) + +#define EVENTLOG_DATABASE_VERSION_V1 1 + +#include "../librpc/gen_ndr/ndr_eventlog.h" +#include "lib/eventlog/proto.h" diff --git a/source3/lib/eventlog/proto.h b/source3/lib/eventlog/proto.h new file mode 100644 index 0000000000..21790d0795 --- /dev/null +++ b/source3/lib/eventlog/proto.h @@ -0,0 +1,35 @@ + +/* The following definitions come from lib/eventlog/eventlog.c */ + +TDB_CONTEXT *elog_init_tdb( char *tdbfilename ); +char *elog_tdbname(TALLOC_CTX *ctx, const char *name ); +int elog_tdb_size( TDB_CONTEXT * tdb, int *MaxSize, int *Retention ); +bool prune_eventlog( TDB_CONTEXT * tdb ); +ELOG_TDB *elog_open_tdb( const char *logname, bool force_clear, bool read_only ); +int elog_close_tdb( ELOG_TDB *etdb, bool force_close ); +bool parse_logentry( TALLOC_CTX *mem_ctx, char *line, struct eventlog_Record_tdb *entry, bool * eor ); +size_t fixup_eventlog_record_tdb(struct eventlog_Record_tdb *r); +struct eventlog_Record_tdb *evlog_pull_record_tdb(TALLOC_CTX *mem_ctx, + TDB_CONTEXT *tdb, + uint32_t record_number); +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); +NTSTATUS evlog_evt_entry_to_tdb_entry(TALLOC_CTX *mem_ctx, + const struct EVENTLOGRECORD *e, + struct eventlog_Record_tdb *t); +NTSTATUS evlog_tdb_entry_to_evt_entry(TALLOC_CTX *mem_ctx, + const struct eventlog_Record_tdb *t, + struct EVENTLOGRECORD *e); +NTSTATUS evlog_convert_tdb_to_evt(TALLOC_CTX *mem_ctx, + ELOG_TDB *etdb, + DATA_BLOB *blob_p, + uint32_t *num_records_p); |