obnox/samba/samba-obnox.git
14 years agos3:gencache: Make gencache_del() return success for expired entries v3-4-ctdb-rebase-3.4.1
Volker Lendecke [Wed, 23 Sep 2009 13:47:05 +0000 (15:47 +0200)]
s3:gencache: Make gencache_del() return success for expired entries

This fixes nasty error messages from "net cache flush"

14 years agos3:gencache: Remove some over-paranoid locking
Volker Lendecke [Wed, 23 Sep 2009 13:41:06 +0000 (15:41 +0200)]
s3:gencache: Remove some over-paranoid locking

14 years agos3:gencache: Add a "was_expired" argument to gencache_get_data_blob
Volker Lendecke [Wed, 23 Sep 2009 13:21:40 +0000 (15:21 +0200)]
s3:gencache: Add a "was_expired" argument to gencache_get_data_blob

This is set to true if the routine returns failure due to an existing but
expired entry.

14 years agos3: Fix vfs_shadow_copy2 to allow in-path @GMT-xxx
Andrew Tridgell [Wed, 16 Sep 2009 01:22:56 +0000 (03:22 +0200)]
s3: Fix vfs_shadow_copy2 to allow in-path @GMT-xxx

14 years agoAdd a "connectpath" operation to the shadow_copy2 module
Volker Lendecke [Mon, 2 Feb 2009 10:52:08 +0000 (11:52 +0100)]
Add a "connectpath" operation to the shadow_copy2 module

14 years agoAdd SMB_VFS_CONNECTPATH operation
Volker Lendecke [Thu, 28 May 2009 17:20:14 +0000 (19:20 +0200)]
Add SMB_VFS_CONNECTPATH operation

This is required for the shadow_copy2 module and "wide links = no". The file
system snapshots by nature are typically outside of share directory. So the
REALPATH result fails the wide links = no test.

14 years agoRemove a variable used just once
Volker Lendecke [Fri, 30 Jan 2009 14:04:44 +0000 (15:04 +0100)]
Remove a variable used just once

14 years agos3:dbwrap_ctdb: set dmaster in ctdb_transaction_store() also when updating an existin...
Michael Adam [Fri, 11 Sep 2009 11:23:34 +0000 (13:23 +0200)]
s3:dbwrap_ctdb: set dmaster in ctdb_transaction_store() also when updating an existing record

not only when creating a record.

This matches commit e9194a130327d6b05a8ab90bd976475b0e93b06d from ctdb-master.

Michael

Signed-off-by: Michael Adam <obnox@samba.org>
14 years agoAdd a parameter to disable the automatic creation of krb5.conf files
Volker Lendecke [Wed, 26 Aug 2009 12:56:41 +0000 (14:56 +0200)]
Add a parameter to disable the automatic creation of krb5.conf files

This is necessary because MIT 1.5 can't deal with certain types (Tree Root) of
transitive AD trusts. The workaround is to add a [capaths] directive to
/etc/krb5.conf, which we don't automatically put into the krb5.conf winbind
creates.

The alternative would have been something like a "krb5 conf include", but I
think if someone has to mess with /etc/krb5.conf at this level, it should be
easy to add the site-local KDCs as well.

Next alternative is to correctly figure out the [capaths] parameter for all
trusted domains, but for that I don't have the time right now. Sorry :-)

14 years agov3-4-ctdb: Bump the ctdb verdor patch level to 5.
Michael Adam [Thu, 20 Aug 2009 12:23:22 +0000 (14:23 +0200)]
v3-4-ctdb: Bump the ctdb verdor patch level to 5.

Michael

14 years agopackaging(RHEL-CTDB): enable parallel build
Michael Adam [Thu, 20 Aug 2009 11:37:11 +0000 (13:37 +0200)]
packaging(RHEL-CTDB): enable parallel build

Michael

14 years agopackaging(RHEL-CTDB): fix packaging of pam_winbind.mo file
Michael Adam [Thu, 20 Aug 2009 11:33:42 +0000 (13:33 +0200)]
packaging(RHEL-CTDB): fix packaging of pam_winbind.mo file

Michael

14 years agos3:dsgetdcname: Fix a crash in dsgetdcname
Volker Lendecke [Wed, 19 Aug 2009 12:22:09 +0000 (14:22 +0200)]
s3:dsgetdcname: Fix a crash in dsgetdcname

When returning NT_STATUS_OK we can't leave *info == NULL, this crashes
in is_closest_site called from dsgetdcname().

14 years agos3:dsgetdcname: Inline dsgetdcname_cache_refresh
Volker Lendecke [Wed, 19 Aug 2009 12:19:22 +0000 (14:19 +0200)]
s3:dsgetdcname: Inline dsgetdcname_cache_refresh

14 years agov3-4-ctdb: Bump the ctdb verdor patch level to 4.
Michael Adam [Thu, 20 Aug 2009 10:55:24 +0000 (12:55 +0200)]
v3-4-ctdb: Bump the ctdb verdor patch level to 4.

Michael

14 years agoRevert "VERSION: Raise version number up to 3.4.1."
Michael Adam [Thu, 20 Aug 2009 09:19:13 +0000 (11:19 +0200)]
Revert "VERSION: Raise version number up to 3.4.1."

This reverts commit b1dd075c6819a3fb0f00bdb93104c307505ec8ba.

We are still based upon 3.4.0 + patches since 3.4.1 is not yet released.

Michael

14 years agoMake refusal of SEC_DESC_DACL_PROTECTED configurable
Volker Lendecke [Thu, 13 Aug 2009 04:33:16 +0000 (06:33 +0200)]
Make refusal of SEC_DESC_DACL_PROTECTED configurable

This adds a parameter "gpfs:refuse_dacl_protected" that defaults to false.

GPFS has no place to store the SEC_DESC_DACL_PROTECTED ACL bit. With this
parameter we give customers an option to either ignore this bit or refuse
setting an ACL with it.

14 years agoUse defined names rather than numeric constants to make code
Jeremy Allison [Fri, 14 Aug 2009 22:06:11 +0000 (15:06 -0700)]
Use defined names rather than numeric constants to make code
clearer.
Jeremy.

14 years agogpfs.so: map the file_inherit and dir_inherit flags away for files
Michael Adam [Mon, 10 Aug 2009 16:18:19 +0000 (18:18 +0200)]
gpfs.so: map the file_inherit and dir_inherit flags away for files

GPFS sets inherits dir_inhert and file_inherit flags
to files, too, which confuses windows, and seems to
be wrong anyways.

So when mapping a nfs4 acl to a windows acl, we map these
flags away for files.

Michael

14 years agoAdd a \n to a debug message in smbacl4_nfs42win
Volker Lendecke [Thu, 25 Jun 2009 12:46:17 +0000 (14:46 +0200)]
Add a \n to a debug message in smbacl4_nfs42win

14 years agoFix a size_t/int warning
Volker Lendecke [Sun, 24 May 2009 20:16:34 +0000 (22:16 +0200)]
Fix a size_t/int warning

14 years agov3-4-ctdb: Bump the ctdb verdor patch level to 3.
Michael Adam [Wed, 5 Aug 2009 12:09:00 +0000 (14:09 +0200)]
v3-4-ctdb: Bump the ctdb verdor patch level to 3.

For the next release.

Michael

14 years agopackaging(RHEL-CTDB): move the idmap and nss_info modules to the common package
Michael Adam [Mon, 3 Aug 2009 13:30:42 +0000 (15:30 +0200)]
packaging(RHEL-CTDB): move the idmap and nss_info modules to the common package

In this layout, this is the package that contains winbindd related stuff.

Michael

14 years agopackaging(RHEL-CTDB): package the winbind_krb5_locator.so plugin
Michael Adam [Mon, 3 Aug 2009 12:32:52 +0000 (14:32 +0200)]
packaging(RHEL-CTDB): package the winbind_krb5_locator.so plugin

Michael

14 years agopackaging(RHEL-CTDB): package the manpage of the winbind_krb5_locator plugin
Michael Adam [Mon, 3 Aug 2009 12:05:42 +0000 (14:05 +0200)]
packaging(RHEL-CTDB): package the manpage of the winbind_krb5_locator plugin

Michael

14 years agopackaging(RHEL-CTDB): package the manpage of "ldbrename"
Michael Adam [Mon, 3 Aug 2009 12:04:33 +0000 (14:04 +0200)]
packaging(RHEL-CTDB): package the manpage of "ldbrename"

Michael

14 years agopackaging(RHEL-CTDB): package the manpage of "sharesec"
Michael Adam [Mon, 3 Aug 2009 12:04:09 +0000 (14:04 +0200)]
packaging(RHEL-CTDB): package the manpage of "sharesec"

Michael

14 years agopackaging(RHEL-CTDB): pam_winbindd man page has moved from section 7 to 8
Michael Adam [Mon, 3 Aug 2009 11:45:40 +0000 (13:45 +0200)]
packaging(RHEL-CTDB): pam_winbindd man page has moved from section 7 to 8

This due to updating the docs tarball to the 3.4 docs.

Michael

14 years agos3:passdb: use transaction_wrapped write in tdbsam_new_rid()
Michael Adam [Wed, 29 Jul 2009 13:21:49 +0000 (15:21 +0200)]
s3:passdb: use transaction_wrapped write in tdbsam_new_rid()

Now all tdb writes in passdb use transactions.

Michael

14 years agos3:secrets: use transaction wrapped store in get rand seed.
Michael Adam [Wed, 29 Jul 2009 13:15:54 +0000 (15:15 +0200)]
s3:secrets: use transaction wrapped store in get rand seed.

Now secrets.tdb is only writen with transactions.

Michael

14 years agos3:dbwrap: add dbwrap_trans_change_int32_atomic()
Michael Adam [Wed, 29 Jul 2009 13:14:57 +0000 (15:14 +0200)]
s3:dbwrap: add dbwrap_trans_change_int32_atomic()

A transaction wrapper for dbwrap_change_int32_atomic().

Michael

14 years agos3:dbwrap: export logic of dbwrap_change_int32_atomic into an action function
Michael Adam [Wed, 29 Jul 2009 13:12:39 +0000 (15:12 +0200)]
s3:dbwrap: export logic of dbwrap_change_int32_atomic into an action function

to prepare for adding a transaction wrapper to dbwrap_change_int32_atomic()

Michael

14 years agos3:dbwrap: change dbwrap_change_int32_atomic() to take int32_t, not int32
Michael Adam [Wed, 29 Jul 2009 13:08:06 +0000 (15:08 +0200)]
s3:dbwrap: change dbwrap_change_int32_atomic() to take int32_t, not int32

Michael

14 years agos3:winbind: use transaction store in idmap_tdb_set_hwm() to store new hwm.
Michael Adam [Wed, 29 Jul 2009 12:56:32 +0000 (14:56 +0200)]
s3:winbind: use transaction store in idmap_tdb_set_hwm() to store new hwm.

Btw, the previous code must have failed to warn when exceeding the high_hwm,
because it overwrote hwm with the return value of the dbwrap_store_uint32(),
which does not return the hwm but 0 or -1, depending on success.

Michael

14 years agos3:winbind: fix typo in debug message in idmap_tdb.
Michael Adam [Wed, 29 Jul 2009 12:45:31 +0000 (14:45 +0200)]
s3:winbind: fix typo in debug message in idmap_tdb.

Michael

14 years agos3:winbind: fix typo in debugmessage of idmap_tdb
Michael Adam [Wed, 29 Jul 2009 12:43:14 +0000 (14:43 +0200)]
s3:winbind: fix typo in debugmessage of idmap_tdb

Michael

14 years agos3:winbind: use transaction in idmap_tdb2_allocate_id_action().
Michael Adam [Wed, 29 Jul 2009 12:39:30 +0000 (14:39 +0200)]
s3:winbind: use transaction in idmap_tdb2_allocate_id_action().

This uses the new dbwrap_trans_change_uint32_atomic()
instead of dbwrap_change_uint32_atomic().

Now all db write operations in idmap_tdb2.c are using
transactions.

Michael

14 years agos3:dbwrap: add dbwrap_trans_change_uint32_atomic()
Michael Adam [Wed, 29 Jul 2009 12:37:39 +0000 (14:37 +0200)]
s3:dbwrap: add dbwrap_trans_change_uint32_atomic()

A transaction wrapper for dbwrap_change_uint32_atomic().

Michael

14 years agos3:dbwrap: export logic of dbwrap_change_uint32_atomic into an action function
Michael Adam [Wed, 29 Jul 2009 12:32:31 +0000 (14:32 +0200)]
s3:dbwrap: export logic of dbwrap_change_uint32_atomic into an action function

to prepare for adding a transaction wrapper to dbwrap_change_uint32_atomic()

Michael

14 years agos3:dbwrap: untangle assignment and check in dbwrap_change_int32_atomic()
Michael Adam [Wed, 29 Jul 2009 12:26:26 +0000 (14:26 +0200)]
s3:dbwrap: untangle assignment and check in dbwrap_change_int32_atomic()

Michael

14 years agos3:dbwrap: untangle assignemend and check in dbwrap_change_uint32_atomic()
Michael Adam [Wed, 29 Jul 2009 12:25:29 +0000 (14:25 +0200)]
s3:dbwrap: untangle assignemend and check in dbwrap_change_uint32_atomic()

Michael

14 years agos3:dbwrap: don't leak in dbwrap_change_int32_atomic().
Michael Adam [Wed, 29 Jul 2009 12:23:26 +0000 (14:23 +0200)]
s3:dbwrap: don't leak in dbwrap_change_int32_atomic().

Michael

14 years agos3:dbwrap: don't leak in dbwrap_change_uint32_atomic()
Michael Adam [Wed, 29 Jul 2009 12:22:37 +0000 (14:22 +0200)]
s3:dbwrap: don't leak in dbwrap_change_uint32_atomic()

Michael

14 years agos3:dbwrap: change dbwrap_change_int32_atomic() to return NTSTATUS not int32.
Michael Adam [Wed, 29 Jul 2009 12:21:03 +0000 (14:21 +0200)]
s3:dbwrap: change dbwrap_change_int32_atomic() to return NTSTATUS not int32.

Michael

14 years agos3:dbwrap: change dbwrap_change_uint32_atomic() to return NTSTATUS not uint32_t.
Michael Adam [Wed, 29 Jul 2009 12:16:11 +0000 (14:16 +0200)]
s3:dbwrap: change dbwrap_change_uint32_atomic() to return NTSTATUS not uint32_t.

Michael

14 years agos3:winbind: in idmap_tdb2_sid_to_id(), use transaction wrapped stores.
Michael Adam [Wed, 29 Jul 2009 11:43:29 +0000 (13:43 +0200)]
s3:winbind: in idmap_tdb2_sid_to_id(), use transaction wrapped stores.

When a mapping is not found, then the idmap script is called (if defined).
When this gives a reply for the desired sid, this reply is stored in the db.

This patch wraps theses two store operations into a transaction by re-using
the idmap_tdb2_set_mapping_action() function previously defined
for idmap_tdb2_set_mapping().

Michael

14 years agos3:winbind: in idmap_tdb2_id_to_sid(), use transaction wrapped stores.
Michael Adam [Wed, 29 Jul 2009 11:36:18 +0000 (13:36 +0200)]
s3:winbind: in idmap_tdb2_id_to_sid(), use transaction wrapped stores.

When a mapping is not found, then the idmap script is called (if defined).
When this gives a reply for the desired id, this reply is stored in the db.

This patch wraps theses two store operations into a transaction by re-using
the idmap_tdb2_set_mapping_action() function previously defined
for idmap_tdb2_set_mapping().

Michael

14 years agos3:winbind: use transaction wrapper in idmap_tdb2_allocate_id()
Michael Adam [Tue, 28 Jul 2009 14:53:37 +0000 (16:53 +0200)]
s3:winbind: use transaction wrapper in idmap_tdb2_allocate_id()

Michael

14 years agos3:winbind: use transaction wrapper in idmap_tdb2_set_mapping()
Michael Adam [Tue, 28 Jul 2009 11:31:09 +0000 (13:31 +0200)]
s3:winbind: use transaction wrapper in idmap_tdb2_set_mapping()

Michael

14 years agos3:dbwrap: use the transaction wrapper in dbwrap_trans_store().
Michael Adam [Tue, 21 Jul 2009 10:35:48 +0000 (12:35 +0200)]
s3:dbwrap: use the transaction wrapper in dbwrap_trans_store().

Now dbwrap_util.c contains only one call to each of
transaction_start, transaction_commit and transaction_cancel.

Michael

14 years agos3:dbwrap: use the transaction wrapper in dbwrap_trans_delete().
Michael Adam [Tue, 21 Jul 2009 10:26:14 +0000 (12:26 +0200)]
s3:dbwrap: use the transaction wrapper in dbwrap_trans_delete().

Michael

14 years agos3:dbwrap: fix embarrassing typo :-)
Michael Adam [Wed, 15 Jul 2009 14:59:07 +0000 (16:59 +0200)]
s3:dbwrap: fix embarrassing typo :-)

Michael

14 years agos3:registry: db backend: add my C
Michael Adam [Tue, 7 Jul 2009 15:16:21 +0000 (17:16 +0200)]
s3:registry: db backend: add my C

Michael

14 years agos3:registry: flush the provided subkey_ctr in regdb_fetch_keys_internal()
Michael Adam [Wed, 15 Jul 2009 10:50:55 +0000 (12:50 +0200)]
s3:registry: flush the provided subkey_ctr in regdb_fetch_keys_internal()

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

14 years agos3:registry: add function regsubkey_ctr_reinit()
Michael Adam [Wed, 15 Jul 2009 10:47:12 +0000 (12:47 +0200)]
s3:registry: add function regsubkey_ctr_reinit()

This reinitializes an already allocated regsubkey_ctr structure,
emptying out the subkey array and hash table.

Michael

14 years agos3:registry: turn regdb_fetch_keys_internal() from int to WERROR return type
Michael Adam [Wed, 15 Jul 2009 10:45:43 +0000 (12:45 +0200)]
s3:registry: turn regdb_fetch_keys_internal() from int to WERROR return type

This way, more error information is propagated to the callers.

Michael

14 years agos3:registry: use transaction wrapper in create_sorted_subkeys()
Michael Adam [Mon, 13 Jul 2009 15:15:14 +0000 (17:15 +0200)]
s3:registry: use transaction wrapper in create_sorted_subkeys()

Michael

14 years agos3:registry: restructure logic of create_sorted_subkes() slightly
Michael Adam [Thu, 9 Jul 2009 10:54:16 +0000 (12:54 +0200)]
s3:registry: restructure logic of create_sorted_subkes() slightly

This makes it clearer to me, and it also makes it easier to
use the transaction retry wrapper in the next step.

Michael

14 years agos3:registry: use transaction wrapper in regdb_delete_subkey().
Michael Adam [Thu, 9 Jul 2009 09:04:20 +0000 (11:04 +0200)]
s3:registry: use transaction wrapper in regdb_delete_subkey().

Michael

14 years agos3:registry: add a comment header for the delete_subkey set of commands.
Michael Adam [Thu, 9 Jul 2009 08:54:18 +0000 (10:54 +0200)]
s3:registry: add a comment header for the delete_subkey set of commands.

Michael

14 years agos3:registry: add a comment header for the create_subkey set of functions
Michael Adam [Thu, 9 Jul 2009 08:52:40 +0000 (10:52 +0200)]
s3:registry: add a comment header for the create_subkey set of functions

Michael

14 years agos3:registry: use transaction wrapper in regdb_create_subkey()
Michael Adam [Thu, 9 Jul 2009 08:41:59 +0000 (10:41 +0200)]
s3:registry: use transaction wrapper in regdb_create_subkey()

Michael

14 years agos3:registry: use transaction wrapper in regdb_store_keys_internal().
Michael Adam [Thu, 9 Jul 2009 08:28:29 +0000 (10:28 +0200)]
s3:registry: use transaction wrapper in regdb_store_keys_internal().

Michael

14 years agos3:registry: don't leak to talloc_stack in regdb_store_keys_internal2()
Michael Adam [Wed, 8 Jul 2009 22:21:46 +0000 (00:21 +0200)]
s3:registry: don't leak to talloc_stack in regdb_store_keys_internal2()

and catch one potential talloc failure.

Michael

14 years agos3:registry: unify exit logic and remove leaking to talloc_stack in regdb_store_keys_...
Michael Adam [Wed, 8 Jul 2009 22:10:08 +0000 (00:10 +0200)]
s3:registry: unify exit logic and remove leaking to talloc_stack in regdb_store_keys_internal()

Michael

14 years agos3:registry: change regdb_store_keys_internal2() to return WERROR
Michael Adam [Wed, 8 Jul 2009 15:26:06 +0000 (17:26 +0200)]
s3:registry: change regdb_store_keys_internal2() to return WERROR

instead of bool for better error propagation.

Michael

14 years agos3:registry: refactor adding of builtin reg values out
Michael Adam [Wed, 8 Jul 2009 11:58:52 +0000 (13:58 +0200)]
s3:registry: refactor adding of builtin reg values out

into regdb_ctr_add_value(). For readability.

Michael

14 years agos3:registry: use transaction wrapper in init_registry_data()
Michael Adam [Wed, 8 Jul 2009 11:10:37 +0000 (13:10 +0200)]
s3:registry: use transaction wrapper in init_registry_data()

Michael

14 years agos3:registry: add regdb_store_values_internal() that takes a db_context argument
Michael Adam [Wed, 8 Jul 2009 10:38:41 +0000 (12:38 +0200)]
s3:registry: add regdb_store_values_internal() that takes a db_context argument

Michael

14 years agos3:registry: add a regdb_fetch_values_internal() that takes a db_context argument
Michael Adam [Wed, 8 Jul 2009 10:32:48 +0000 (12:32 +0200)]
s3:registry: add a regdb_fetch_values_internal() that takes a db_context argument

Michael

14 years agos3:registry: replace typedef REGISTRY_OPS by struct registry_ops
Michael Adam [Mon, 23 Mar 2009 22:14:45 +0000 (23:14 +0100)]
s3:registry: replace typedef REGISTRY_OPS by struct registry_ops

Michael

14 years agos3:registry replace typedef REGISTRY_HOOK by struct registry_hook.
Michael Adam [Mon, 23 Mar 2009 22:05:30 +0000 (23:05 +0100)]
s3:registry replace typedef REGISTRY_HOOK by struct registry_hook.

Michael

14 years agos3:registry: replace typedef REGISTRY_KEY by struct registry_key_handle
Michael Adam [Mon, 23 Mar 2009 22:02:57 +0000 (23:02 +0100)]
s3:registry: replace typedef REGISTRY_KEY by struct registry_key_handle

Michael

14 years agos3:registry: replace typedef REGISTRY_VALUE by struct regval_blob
Michael Adam [Mon, 23 Mar 2009 21:27:59 +0000 (22:27 +0100)]
s3:registry: replace typedef REGISTRY_VALUE by struct regval_blob

Michael

14 years agos3:registry: replace typedef REGVAL_CTR by struct regval_ctr.
Michael Adam [Mon, 23 Mar 2009 17:14:17 +0000 (18:14 +0100)]
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

14 years agos3:registry: use transaction wrapper in init_registry_key().
Michael Adam [Tue, 7 Jul 2009 21:58:03 +0000 (23:58 +0200)]
s3:registry: use transaction wrapper in init_registry_key().

Michael

14 years agos3:registry: add db_context argument to init_registry_key_internal()
Michael Adam [Tue, 7 Jul 2009 21:03:46 +0000 (23:03 +0200)]
s3:registry: add db_context argument to init_registry_key_internal()

Michael

14 years agos3:registry: panic upon error at transaction_cancel in create_sorted_subkeys
Michael Adam [Tue, 7 Jul 2009 10:42:09 +0000 (12:42 +0200)]
s3:registry: panic upon error at transaction_cancel in create_sorted_subkeys

Michael

14 years agos3:registry: fix a comment in create_sorted_subkeys()
Michael Adam [Tue, 7 Jul 2009 10:41:09 +0000 (12:41 +0200)]
s3:registry: fix a comment in create_sorted_subkeys()

Michael

14 years agos3:registry: don't loop transaction_commit in create_sorted_subkeys() upon error
Michael Adam [Tue, 7 Jul 2009 10:39:32 +0000 (12:39 +0200)]
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

14 years agos3:registry: in regdb_delete_subkey(), don't use the transaction wrappers.
Michael Adam [Tue, 7 Jul 2009 10:27:26 +0000 (12:27 +0200)]
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

14 years agos3:registry: in regdb_delete_subkey(), panic if transaction_cancel fails
Michael Adam [Tue, 7 Jul 2009 10:24:25 +0000 (12:24 +0200)]
s3:registry: in regdb_delete_subkey(), panic if transaction_cancel fails

Michael

14 years agos3:registry: panic upon failed transaction_cancel in regdb_create_subkey()
Michael Adam [Tue, 7 Jul 2009 10:20:23 +0000 (12:20 +0200)]
s3:registry: panic upon failed transaction_cancel in regdb_create_subkey()

Michael

14 years agos3:registry: don't use exported transaction wrappers in regdb_create_subkey()
Michael Adam [Tue, 7 Jul 2009 09:41:08 +0000 (11:41 +0200)]
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

14 years agos3:registry: create regdb_store_keys_internal() with db_context argument
Michael Adam [Tue, 7 Jul 2009 09:31:28 +0000 (11:31 +0200)]
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

14 years agos3:registry: rename regdb_store_keys_internal() to regdb_store_keys_internal2()
Michael Adam [Tue, 7 Jul 2009 09:11:10 +0000 (11:11 +0200)]
s3:registry: rename regdb_store_keys_internal() to regdb_store_keys_internal2()

Michael

14 years agos3:registry: create regdb_fetch_keys_internal() with db_context argument
Michael Adam [Fri, 3 Jul 2009 15:39:17 +0000 (17:39 +0200)]
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

14 years agos3:registry: add db_context argument to scan_parent_subkeys()
Michael Adam [Fri, 3 Jul 2009 15:18:19 +0000 (17:18 +0200)]
s3:registry: add db_context argument to scan_parent_subkeys()

Michael

14 years agos3:registry: add db_context argument to regdb_fetch_key_internal()
Michael Adam [Fri, 3 Jul 2009 15:10:09 +0000 (17:10 +0200)]
s3:registry: add db_context argument to regdb_fetch_key_internal()

Michael

14 years agos3:registry: add db_context argument to regdb_store_keys_internal()
Michael Adam [Fri, 3 Jul 2009 15:00:44 +0000 (17:00 +0200)]
s3:registry: add db_context argument to regdb_store_keys_internal()

Michael

14 years agos3:registry: add db_context argument to regdb_delete_key_lists()
Michael Adam [Fri, 3 Jul 2009 14:51:26 +0000 (16:51 +0200)]
s3:registry: add db_context argument to regdb_delete_key_lists()

Michael

14 years agos3:registry: add db_context argument to regdb_delete_subkeylist()
Michael Adam [Fri, 3 Jul 2009 14:48:36 +0000 (16:48 +0200)]
s3:registry: add db_context argument to regdb_delete_subkeylist()

Michael

14 years agos3:registry: add db_context argument to regdb_delete_secdesc()
Michael Adam [Fri, 3 Jul 2009 14:44:20 +0000 (16:44 +0200)]
s3:registry: add db_context argument to regdb_delete_secdesc()

Michael

14 years agos3:registry: add db_context argument to regdb_delete_values()
Michael Adam [Fri, 3 Jul 2009 14:42:20 +0000 (16:42 +0200)]
s3:registry: add db_context argument to regdb_delete_values()

Michael

14 years agos3:registry: add db_context argument to regdb_delete_key_with_prefix()
Michael Adam [Fri, 3 Jul 2009 14:40:43 +0000 (16:40 +0200)]
s3:registry: add db_context argument to regdb_delete_key_with_prefix()

Michael

14 years agos3:registry: don't store differently cased entries for the same keys.
Michael Adam [Wed, 8 Jul 2009 14:16:18 +0000 (16:16 +0200)]
s3:registry: don't store differently cased entries for the same keys.

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

14 years agos3:dbwrap_util: add my C
Michael Adam [Wed, 15 Jul 2009 07:58:02 +0000 (09:58 +0200)]
s3:dbwrap_util: add my C

Michael

14 years agos3:dbwrap: add dbwrap_fetch_bystring_upper().
Michael Adam [Wed, 8 Jul 2009 14:13:07 +0000 (16:13 +0200)]
s3:dbwrap: add dbwrap_fetch_bystring_upper().

To fetch a key whose name is stored but not given in upper case.

Michael

14 years agos3:dbwrap: add dbwrap_store_bystring_upper().
Michael Adam [Wed, 8 Jul 2009 14:08:41 +0000 (16:08 +0200)]
s3:dbwrap: add dbwrap_store_bystring_upper().

This stores a key under the uppercase version of the given keyname.

Michael

14 years agos3:dbwrap: add dbwrap_delete_bystring_upper()
Michael Adam [Wed, 8 Jul 2009 14:02:19 +0000 (16:02 +0200)]
s3:dbwrap: add dbwrap_delete_bystring_upper()

To delete a key whose name is not given in but stored in uppercase.

Michael