summaryrefslogtreecommitdiff
path: root/source3/registry/reg_backend_db.c
AgeCommit message (Collapse)AuthorFilesLines
2010-07-02s3-registry: allow to read NULL entries (that we allow to store) back from ↵Günther Deschner1-6/+2
the tdb. Guenther
2010-06-25s3:registry: use regdb_store_regdb_version() in regdb_init().Michael Adam1-13/+2
2010-06-25s3:registry: use regdb_store_regdb_version() in regdb_upgrade_v1_to_v2()Michael Adam1-13/+8
2010-06-25s3:registry: add a function regdb_store_regdb_version()Michael Adam1-0/+21
2010-06-25s3:registry: rename regdb_upgrade_to_version_2() -> regdb_upgrade_v1_to_v2()Michael Adam1-2/+2
2010-06-25s3:registry: improve logic of upgrade code in regdb_init()Michael Adam1-30/+45
Don't overwrite unknown versions (0 or > 2) of the registry.
2010-06-25s3:registry: fix some debug messages in regdb_ini()Michael Adam1-4/+4
2010-06-25s3-registry: Convert registry key delimiter from slash to backslash.Andreas Schneider1-15/+15
This is needed to support keynames containing a '/' like TCP/IP. Which is used in serveral standard paths. Signed-off-by: Michael Adam <obnox@samba.org>
2010-06-25s3-registry: Added a db upgrade function to normalize the key delimiter.Andreas Schneider1-6/+106
This converts the key delimiter from a slash to a blackslash. We need to support keynames with a backslash. Signed-off-by: Michael Adam <obnox@samba.org>
2010-06-24s3:registry: use normalize_reg_path() in regdb_set_secdesc()Michael Adam1-1/+6
instead of normalize_dbkey
2010-06-24s3:registry: use normalize_reg_path() in regdb_get_secdesc()Michael Adam1-1/+6
instead of normalize_dbkey.
2010-05-25s3:registry: move reg_objects.h to registry/ and use it only where neededMichael Adam1-0/+1
Every place outside of registry/ where this is used, should probably be changed to use pure reg_api.c code.
2010-05-25s3:registry: user regval_ctr/blob accessor functions in reg_backend_db.cMichael Adam1-10/+10
2010-05-25s3:registry: rename reg_util.{c,h} to reg_util_internal.{c,h}Michael Adam1-1/+1
2010-05-25s3:registry: extract the reg_backend_db prototypes into their own header.Michael Adam1-0/+1
And use them only where needed.
2010-05-25s3:registry: adapt callers of regval_ctr_addvalue to uint8 * instead of char *Michael Adam1-2/+2
2010-05-25s3:registry: extract the reg_util prototypes into their own header.Michael Adam1-0/+1
And use them only where needed.
2010-05-21s3: registry: fix query empty valuenamesGregor Beck1-1/+1
Remove a check introduced with commit 80c2446321c519797a57b8006942a983f8481d79 wich causes queries for values with empty name to fail. Empty valuenames are used for the so called default value of a key. Signed-off-by: Michael Adam <obnox@samba.org>
2010-05-18s3-registry: only include registry headers when really needed.Günther Deschner1-0/+2
Guenther
2010-05-17s3-libgpo: move group policy protos to where they belong.Günther Deschner1-1/+1
Guenther
2010-02-14s3: convert registry and printing code to TYPESAFE_QSORT()Andrew Tridgell1-3/+3
2010-02-12s3:registry: eliminate race condition in creating/scanning sorted subkeysMichael Adam1-0/+17
Called, from key_exists, scan_sorted_subkeys re-creates the sorted subkeys record of the given key and then searches through it. The race is that between creation and parsing of the sorted subkey record, another process that stores some other subkey of the same parent key will delete the sorted subkey record, resulting in an WERR_BADFILE of an operation that should actually succeed. This patch fixes the issue by wrapping the creation and parsing into a transaction. Michael
2009-11-03s3:registry: add an extra check for dsize==0 to regdb_fetch_keys_internal()Michael Adam1-1/+1
Don't only rely on dptr == NULL. I stumbled over this one when rewriting some of the dbwrap_ctdb code. Michael
2009-11-03s3:registry: add safety check for return value of tdb_unpack to ↵Michael Adam1-0/+4
regdb_fetch_keys_internal() Prevents segfaults in some situations. (For a non existent or empty record, we sometimes rely on the fetch operation to return dsize==0 and sometimes we rely on dptr==NULL.) Michael
2009-09-30s3-registry: use regval_ctr_addvalue_sz().Günther Deschner1-6/+2
Greatly simplifies and cleanes up the code. Guenther
2009-09-30s3-registry: use push_reg_sz().Günther Deschner1-4/+4
Guenther
2009-07-15s3:registry: db backend: add my CMichael Adam1-0/+1
Michael
2009-07-15s3:registry: flush the provided subkey_ctr in regdb_fetch_keys_internal()Michael Adam1-0/+3
This way, we always return what has really been read from the db, and not more. The callers assume exactly this, but one could hand in an already pre-filled subkey container... Michael
2009-07-15s3:registry: turn regdb_fetch_keys_internal() from int to WERROR return typeMichael Adam1-32/+53
This way, more error information is propagated to the callers. Michael
2009-07-15s3:registry: use transaction wrapper in create_sorted_subkeys()Michael Adam1-48/+51
Michael
2009-07-15s3:registry: restructure logic of create_sorted_subkes() slightlyMichael Adam1-14/+19
This makes it clearer to me, and it also makes it easier to use the transaction retry wrapper in the next step. Michael
2009-07-15s3:registry: use transaction wrapper in regdb_delete_subkey().Michael Adam1-37/+49
Michael
2009-07-15s3:registry: add a comment header for the delete_subkey set of commands.Michael Adam1-0/+4
Michael
2009-07-15s3:registry: add a comment header for the create_subkey set of functionsMichael Adam1-0/+4
Michael
2009-07-15s3:registry: use transaction wrapper in regdb_create_subkey()Michael Adam1-31/+42
Michael
2009-07-15s3:registry: use transaction wrapper in regdb_store_keys_internal().Michael Adam1-96/+102
Michael
2009-07-15s3:registry: don't leak to talloc_stack in regdb_store_keys_internal2()Michael Adam1-2/+9
and catch one potential talloc failure. Michael
2009-07-15s3:registry: unify exit logic and remove leaking to talloc_stack in ↵Michael Adam1-10/+13
regdb_store_keys_internal() Michael
2009-07-15s3:registry: change regdb_store_keys_internal2() to return WERRORMichael Adam1-30/+41
instead of bool for better error propagation. Michael
2009-07-15s3:registry: refactor adding of builtin reg values outMichael Adam1-27/+27
into regdb_ctr_add_value(). For readability. Michael
2009-07-15s3:registry: use transaction wrapper in init_registry_data()Michael Adam1-72/+69
Michael
2009-07-15s3:registry: add regdb_store_values_internal() that takes a db_context argumentMichael Adam1-6/+15
Michael
2009-07-15s3:registry: add a regdb_fetch_values_internal() that takes a db_context ↵Michael Adam1-6/+18
argument Michael
2009-07-15s3:registry: use transaction wrapper in init_registry_key().Michael Adam1-23/+19
Michael
2009-07-15s3:registry: add db_context argument to init_registry_key_internal()Michael Adam1-5/+7
Michael
2009-07-15s3:registry: panic upon error at transaction_cancel in create_sorted_subkeysMichael Adam1-2/+2
Michael
2009-07-15s3:registry: fix a comment in create_sorted_subkeys()Michael Adam1-1/+1
Michael
2009-07-15s3:registry: don't loop transaction_commit in create_sorted_subkeys() upon errorMichael Adam1-1/+1
This would try to commit a higher level transaction upon commit-error. Michael
2009-07-15s3:registry: in regdb_delete_subkey(), don't use the transaction wrappers.Michael Adam1-9/+9
This way, the db handle gets used explicitly and the core of the function can be abstracted. Michael
2009-07-15s3:registry: in regdb_delete_subkey(), panic if transaction_cancel failsMichael Adam1-2/+1
Michael