summaryrefslogtreecommitdiff
path: root/source3
AgeCommit message (Collapse)AuthorFilesLines
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
2009-07-15s3:registry: panic upon failed transaction_cancel in regdb_create_subkey()Michael Adam1-2/+1
Michael
2009-07-15s3:registry: don't use exported transaction wrappers in regdb_create_subkey()Michael Adam1-10/+10
So that the regdb handle is again explicit and the core of the function can be abstracted. Michael
2009-07-15s3:registry: create regdb_store_keys_internal() with db_context argumentMichael Adam1-13/+21
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-15s3:registry: rename regdb_store_keys_internal() to regdb_store_keys_internal2()Michael Adam1-9/+9
Michael
2009-07-15s3:registry: create regdb_fetch_keys_internal() with db_context argumentMichael Adam1-27/+35
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-15s3:registry: add db_context argument to scan_parent_subkeys()Michael Adam1-6/+7
Michael
2009-07-15s3:registry: add db_context argument to regdb_fetch_key_internal()Michael Adam1-5/+6
Michael
2009-07-15s3:registry: add db_context argument to regdb_store_keys_internal()Michael Adam1-8/+10
Michael
2009-07-15s3:registry: add db_context argument to regdb_delete_key_lists()Michael Adam1-6/+6
Michael
2009-07-15s3:registry: add db_context argument to regdb_delete_subkeylist()Michael Adam1-3/+3
Michael
2009-07-15s3:registry: add db_context argument to regdb_delete_secdesc()Michael Adam1-3/+3
Michael
2009-07-15s3:registry: add db_context argument to regdb_delete_values()Michael Adam1-3/+3
Michael
2009-07-15s3:registry: add db_context argument to regdb_delete_key_with_prefix()Michael Adam1-5/+6
Michael
2009-07-15s3:registry: don't store differently cased entries for the same keys.Michael Adam1-3/+3
This happened for instance during registry initialization, when entries for HKLM\Software and HKLM\SOFTWARE were created. Searching these entries was case insensitive though. But the entries ended up in the subkey-lists anyways. This is solved by making the subkeys_hash in the regsubkey_container structs case insensitive (using the new _bystring_upper() wrappers). Michael
2009-07-15s3:dbwrap_util: add my CMichael Adam1-0/+1
Michael
2009-07-15s3:dbwrap: add dbwrap_fetch_bystring_upper().Michael Adam2-0/+19
To fetch a key whose name is stored but not given in upper case. Michael
2009-07-15s3:dbwrap: add dbwrap_store_bystring_upper().Michael Adam2-0/+19
This stores a key under the uppercase version of the given keyname. Michael
2009-07-15s3:dbwrap: add dbwrap_delete_bystring_upper()Michael Adam2-0/+17
To delete a key whose name is not given in but stored in uppercase. Michael
2009-07-15s3:dbwrap: add a wrapper dbwrap_trans_do()Michael Adam2-0/+36
This function wraps the action() callback into a db transaction and the transaction is either committed or cancelled, depending on the return value of the action function. Michael
2009-07-15s3:smbd: add support for SMB2 SetInfo File*InformationStefan Metzmacher1-1/+128
metze
2009-07-15s3:smbd: implement SMB2 GetInfo with Fs*InformationStefan Metzmacher1-0/+47
metze
2009-07-15s3:smbd: return NT_STATUS_INVALID_INFO_CLASS in SMB2 GetInfoStefan Metzmacher1-3/+7
metze
2009-07-15s3:smbd: check quota access against sec_initial_uid() instead of 0Stefan Metzmacher1-6/+6
And return an NTSTATUS mapped from errno. Instead of hardcoded values. metze
2009-07-15s3:lib: map ENOSYS to NT_STATUS_NOT_SUPPORTED instead of NT_STATUS_ACCESS_DENIEDStefan Metzmacher1-0/+1
Jeremy: please check and decide if we want to backport this. metze
2009-07-15s3:make test: smbtorture from s3 needs to take the config file path via the ↵Stefan Metzmacher1-0/+3
SMB_CONF_PATH envvar metze
2009-07-15Consolidate gencache also every 100 writes in a single processVolker Lendecke1-0/+14
2009-07-15Consolidate string and data_blob routines in gencacheVolker Lendecke3-147/+65
2009-07-15Make gencache more stableVolker Lendecke7-15/+299
This provides a compromise between stability and performance: gencache is a persistent database these days that for performance reasons can not use tdb transactions for all writes. This patch splits up gencache into gencache.tdb and gencache_notrans.tdb. gencache_notrans is used with CLEAR_IF_FIRST, writes to it don't use transactions. By default every 5 minutes and when a program exits, all entries from _notrans.tdb are transferred to gencache.tdb in one transaction.