Michael Adam
2d6dbcd0b1
s3:registry: use transaction wrapper in regdb_delete_subkey().
...
Michael
2009-07-15 14:01:55 +02:00
Michael Adam
a48d8353c7
s3:registry: add a comment header for the delete_subkey set of commands.
...
Michael
2009-07-15 14:01:55 +02:00
Michael Adam
5640598cbb
s3:registry: add a comment header for the create_subkey set of functions
...
Michael
2009-07-15 14:01:54 +02:00
Michael Adam
8c7b960493
s3:registry: use transaction wrapper in regdb_create_subkey()
...
Michael
2009-07-15 14:01:54 +02:00
Michael Adam
86d747e19f
s3:registry: use transaction wrapper in regdb_store_keys_internal().
...
Michael
2009-07-15 14:01:53 +02:00
Michael Adam
f93c9e0d41
s3:registry: don't leak to talloc_stack in regdb_store_keys_internal2()
...
and catch one potential talloc failure.
Michael
2009-07-15 14:01:53 +02:00
Michael Adam
3eec829e2f
s3:registry: unify exit logic and remove leaking to talloc_stack in regdb_store_keys_internal()
...
Michael
2009-07-15 14:01:53 +02:00
Michael Adam
14f593aa0f
s3:registry: change regdb_store_keys_internal2() to return WERROR
...
instead of bool for better error propagation.
Michael
2009-07-15 14:01:52 +02:00
Michael Adam
1c65c98f33
s3:registry: refactor adding of builtin reg values out
...
into regdb_ctr_add_value(). For readability.
Michael
2009-07-15 14:01:52 +02:00
Michael Adam
cf4f808b8b
s3:registry: use transaction wrapper in init_registry_data()
...
Michael
2009-07-15 14:01:51 +02:00
Michael Adam
e6340963cf
s3:registry: add regdb_store_values_internal() that takes a db_context argument
...
Michael
2009-07-15 14:01:51 +02:00
Michael Adam
302265aae1
s3:registry: add a regdb_fetch_values_internal() that takes a db_context argument
...
Michael
2009-07-15 14:01:50 +02:00
Michael Adam
8a5b164b20
s3:registry: use transaction wrapper in init_registry_key().
...
Michael
2009-07-15 14:01:50 +02:00
Michael Adam
95ebf534d2
s3:registry: add db_context argument to init_registry_key_internal()
...
Michael
2009-07-15 14:01:49 +02:00
Michael Adam
a00109e1e6
s3:registry: panic upon error at transaction_cancel in create_sorted_subkeys
...
Michael
2009-07-15 14:01:49 +02:00
Michael Adam
3189828087
s3:registry: fix a comment in create_sorted_subkeys()
...
Michael
2009-07-15 14:01:48 +02:00
Michael Adam
4c366a0946
s3:registry: don't loop transaction_commit in create_sorted_subkeys() upon error
...
This would try to commit a higher level transaction upon commit-error.
Michael
2009-07-15 14:01:48 +02:00
Michael Adam
6cb14409af
s3:registry: in regdb_delete_subkey(), don't use the transaction wrappers.
...
This way, the db handle gets used explicitly and the core of the
function can be abstracted.
Michael
2009-07-15 14:01:47 +02:00
Michael Adam
4eeacd6ef0
s3:registry: in regdb_delete_subkey(), panic if transaction_cancel fails
...
Michael
2009-07-15 14:01:47 +02:00
Michael Adam
355892c296
s3:registry: panic upon failed transaction_cancel in regdb_create_subkey()
...
Michael
2009-07-15 14:01:47 +02:00
Michael Adam
3409a44da2
s3:registry: don't use exported transaction wrappers in regdb_create_subkey()
...
So that the regdb handle is again explicit and the core of the
function can be abstracted.
Michael
2009-07-15 14:01:46 +02:00
Michael Adam
1dfaa371fa
s3:registry: create regdb_store_keys_internal() with db_context argument
...
and let exported regdb_store_keys() just call regdb_store_keys_internal()
with regdb as an argument. Internally, in reg_backend_db.c, always use the
_internal version.
Michael
2009-07-15 14:01:46 +02:00
Michael Adam
eb1958ca3d
s3:registry: rename regdb_store_keys_internal() to regdb_store_keys_internal2()
...
Michael
2009-07-15 14:01:45 +02:00
Michael Adam
589bacfbdb
s3:registry: create regdb_fetch_keys_internal() with db_context argument
...
and let exported regdb_fetch_keys() just call regdb_fetch_keys_internal()
with regdb as an argument. Internally, in reg_backend_db.c, always use the
_internal version.
Michael
2009-07-15 14:01:45 +02:00
Michael Adam
db4f797e35
s3:registry: add db_context argument to scan_parent_subkeys()
...
Michael
2009-07-15 14:01:44 +02:00
Michael Adam
c01d955ac0
s3:registry: add db_context argument to regdb_fetch_key_internal()
...
Michael
2009-07-15 14:01:44 +02:00
Michael Adam
a18a10c07a
s3:registry: add db_context argument to regdb_store_keys_internal()
...
Michael
2009-07-15 14:01:43 +02:00
Michael Adam
528bf38875
s3:registry: add db_context argument to regdb_delete_key_lists()
...
Michael
2009-07-15 14:01:43 +02:00
Michael Adam
86e927cb05
s3:registry: add db_context argument to regdb_delete_subkeylist()
...
Michael
2009-07-15 14:01:42 +02:00
Michael Adam
bd983dba6b
s3:registry: add db_context argument to regdb_delete_secdesc()
...
Michael
2009-07-15 14:01:42 +02:00
Michael Adam
ec6b6727d8
s3:registry: add db_context argument to regdb_delete_values()
...
Michael
2009-07-15 14:01:41 +02:00
Michael Adam
2b380c73a4
s3:registry: add db_context argument to regdb_delete_key_with_prefix()
...
Michael
2009-07-15 14:01:41 +02:00
Michael Adam
e935d8616b
s3:registry: replace typedef REGISTRY_OPS by struct registry_ops
...
Michael
2009-04-27 11:21:04 +02:00
Michael Adam
8185d31fb0
s3:registry: replace typedef REGISTRY_VALUE by struct regval_blob
...
Michael
2009-04-27 11:21:03 +02:00
Michael Adam
221151a2a2
s3:registry: replace typedef REGVAL_CTR by struct regval_ctr.
...
This paves the way for hiding the typedef and the implementation
from the surface.
Michael
2009-04-27 11:21:02 +02:00
Michael Adam
b5fbe06d74
s3:registry: implement delete_subkey in the db backend
...
Michael
2009-02-26 13:22:55 +01:00
Michael Adam
61bdfd09ed
s3:registry: refactor deletion of various subkey lists out of regdb_store_keys()
...
Micheal
2009-02-26 13:22:55 +01:00
Michael Adam
13ceeeedbc
s3:registry: streamline and cleanup regdb_set_secdesc() somewhat.
...
Michael
2009-02-26 13:22:55 +01:00
Michael Adam
2fb944bde1
s3:registry: refactor deletion of value/secdesc/subkey list tdb records out
...
of regdb_store_values().
Michael
2009-02-26 13:22:55 +01:00
Michael Adam
20e40d3b7d
s3:registry: implement create_subkey for the db backend.
...
Michael
2009-02-26 13:22:54 +01:00
Michael Adam
69be6f5c1d
s3:registry: use regsubkey_ctr_get_seqnum() in reg_backend_db.c
...
Michael
2009-02-26 13:22:53 +01:00
Michael Adam
8a74b535c8
s3:registry: use regsubkey_ctr_set_seqnum() in reg_backend_db.c
...
Michael
2009-02-26 13:22:53 +01:00
Michael Adam
3c15d053f5
s3:registry: use regsubkey_ctr_init() in reg_backend_db.c
...
instead of using talloc directly.
Michael
2009-02-26 13:22:53 +01:00
Michael Adam
63b576424d
s3:registry: don't directly access key->subkeys->subkeys[] in reg_backend_db.c
...
Use the reg_objects accessor regsubkey_ctr_specific_key() instead.
Michael
2009-02-26 13:22:51 +01:00
Michael Adam
62b53507d2
s3:registry: don't directly access key->subkeys->num_subkeys in reg_backend_db.
...
Use the reg_objects api instead.
Michael
2009-02-26 13:22:51 +01:00
Michael Adam
58fc61217d
s3:registry: replace typedef "REGSUBKEY_CTR" by "struct regsubkey_ctr"
...
This paves the way for hiding the typedef and the implementation from the
surface.
Michael
2009-02-26 13:22:51 +01:00
Michael Adam
b56f449d6b
Revert "Fix a O(n^2) algorithm in regdb_fetch_keys()"
...
This reverts commit a13f065bad
.
This fix is reverted, because the speedup is going to move
further down into reg_objects.c. The unsorted list of subkey names
is going to be indexed: This O(n^2) search bites us in more places.
This re-establishes the abstraction of reg_objects.c.
Michael
2009-02-26 13:22:51 +01:00
Michael Adam
ba0e944c46
s3:registry: provide transaction_start|commit|cancel fns for the registry tdb
...
Michael
2009-02-26 11:05:22 +01:00
Volker Lendecke
170830c008
Wrap creating the sorted subkey cache in a transaction
...
Signed-off-by: Michael Adam <obnox@samba.org>
2009-02-26 11:05:22 +01:00
Volker Lendecke
5c91cdcc47
Add a comment describing the sorted subkeys
...
Signed-off-by: Michael Adam <obnox@samba.org>
2009-02-26 11:05:22 +01:00