summaryrefslogtreecommitdiff
path: root/source3/rpc_server
diff options
context:
space:
mode:
authorGerald Carter <jerry@samba.org>2005-10-07 12:14:25 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 11:04:54 -0500
commit01a1e5cdb0339a7cb3a85280b118985562bb2d7f (patch)
tree34067426544a5cdfe872943db9a80d1da36f82c1 /source3/rpc_server
parent5b32737374419525dd57216f595440847bb3c619 (diff)
downloadsamba-01a1e5cdb0339a7cb3a85280b118985562bb2d7f.tar.gz
samba-01a1e5cdb0339a7cb3a85280b118985562bb2d7f.tar.bz2
samba-01a1e5cdb0339a7cb3a85280b118985562bb2d7f.zip
r10819: merging a couple of fixes from trunk
* only keep the registry,tdb file open when we have an open key handle * tpot's setup.py fix * removing files that no longer exist in trunk and copying some that were missing in 3.0 (This used to be commit 6c6bf6ca5fd430a7a20bf20ed08050328660e570)
Diffstat (limited to 'source3/rpc_server')
-rw-r--r--source3/rpc_server/srv_eventlog_lib.c3
-rw-r--r--source3/rpc_server/srv_eventlog_nt.c2
-rw-r--r--source3/rpc_server/srv_reg_nt.c5
3 files changed, 4 insertions, 6 deletions
diff --git a/source3/rpc_server/srv_eventlog_lib.c b/source3/rpc_server/srv_eventlog_lib.c
index 8c7ce4a648..3b7a32dac2 100644
--- a/source3/rpc_server/srv_eventlog_lib.c
+++ b/source3/rpc_server/srv_eventlog_lib.c
@@ -304,8 +304,7 @@ TDB_CONTEXT *open_eventlog_tdb( char *tdbfilename )
TDB_CONTEXT *the_tdb;
the_tdb =
- tdb_open_log( tdbfilename, 0, TDB_DEFAULT, O_RDWR | O_CREAT,
- 0664 );
+ tdb_open_log( tdbfilename, 0, TDB_DEFAULT, O_RDONLY,0664 );
if ( the_tdb == NULL ) {
return init_eventlog_tdb( tdbfilename );
}
diff --git a/source3/rpc_server/srv_eventlog_nt.c b/source3/rpc_server/srv_eventlog_nt.c
index 6067c94fe8..d3b350f233 100644
--- a/source3/rpc_server/srv_eventlog_nt.c
+++ b/source3/rpc_server/srv_eventlog_nt.c
@@ -400,7 +400,7 @@ static BOOL sync_eventlog_params( const char *elogname )
if ( ( val = regval_ctr_getvalue( values, "MaxSize" ) ) != NULL )
uiMaxSize = IVAL( regval_data_p( val ), 0 );
- TALLOC_FREE( keyinfo );
+ regkey_close_internal( keyinfo );
tdb_store_int32( the_tdb, VN_maxsize, uiMaxSize );
tdb_store_int32( the_tdb, VN_retention, uiRetention );
diff --git a/source3/rpc_server/srv_reg_nt.c b/source3/rpc_server/srv_reg_nt.c
index 0ba3e04b99..47c8746b12 100644
--- a/source3/rpc_server/srv_reg_nt.c
+++ b/source3/rpc_server/srv_reg_nt.c
@@ -43,7 +43,7 @@ static struct generic_mapping reg_generic_map =
static void free_regkey_info(void *ptr)
{
- TALLOC_FREE( ptr );
+ regkey_close_internal( (REGISTRY_KEY*)ptr );
}
/******************************************************************
@@ -99,10 +99,9 @@ static WERROR open_registry_key( pipes_struct *p, POLICY_HND *hnd,
if ( !create_policy_hnd( p, hnd, free_regkey_info, *keyinfo ) ) {
result = WERR_BADFILE;
- TALLOC_FREE( *keyinfo );
+ regkey_close_internal( *keyinfo );
}
-
return result;
}