Michael Adam
b1a94b66cc
s3:registry: hand db context in to v2_to_v3 upgrade code via private_data
...
This also fixes the earlier faulty handing in of a useless stackframe
memory context via private_data.
2011-08-25 23:55:06 +02:00
Michael Adam
48f08011e5
s3:registry: fix broken use of dbwrap store record in v1_to_v2 upgrade code
...
This also fixes broken private_data parameter for the traverse function
(making use of it): Originally a memory context was handed in but was not used.
2011-08-25 23:55:06 +02:00
Michael Adam
32b7411104
s3:registry: fix regdb_key_exists: the record has to contain at least the 4-byte subkey counter
...
More precisley, we return false if the record does not match the required
structure of a leading 4-byte subkey counter followed by the corresponding
number zero-terminated strings.
2011-08-15 17:15:14 +02:00
Gregor Beck
356ed8644c
s3:registry avoid updating keys which are going to be deleted in
...
reg_deletekey_recursive
this changes the complexity from O(n^2) to O(n) and reduces the time of
a 'net conf drop' with 10000 shares from 6min to 1.5s
Signed-off-by: Michael Adam <obnox@samba.org>
2011-08-08 15:27:07 +02:00
Michael Adam
0b5c4a601a
s3:dbwrap: move all .c and .h files of dbwrap to lib/dbwrap/
...
Autobuild-User: Michael Adam <obnox@samba.org>
Autobuild-Date: Fri Jul 29 13:34:22 CEST 2011 on sn-devel-104
2011-07-29 13:34:22 +02:00
Michael Adam
1abdd9b2bb
s3:dbwrap: move db_open() to a file dbwrap_open.c of its own.
...
Also start new folder lib/dbwrap/ where dbwrap_open.c is stored and
make the fallbacke implementation functoins non-static and create a
dbwrap_private.h header file that contains their prototypes.
2011-07-29 12:23:13 +02:00
Gregor Beck
5049e3e142
s3:registry avoid pruning the sequencenumber while flushing the regsubkey_ctr
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Fri Jul 15 08:34:47 CEST 2011 on sn-devel-104
2011-07-15 08:34:47 +02:00
Michael Adam
4af8615da8
s3:registry: update copyright for the registry db implementation
2011-07-06 12:55:25 +02:00
Michael Adam
399c0dba01
s3:registry: remove unused function regdb_key_is_base_key()
...
Autobuild-User: Michael Adam <obnox@samba.org>
Autobuild-Date: Mon Jul 4 21:11:32 CEST 2011 on sn-devel-104
2011-07-04 21:11:32 +02:00
Michael Adam
86f8eb98fe
s3:registry: replace use of deprecated talloc_destroy by talloc_free.
2011-07-04 20:02:10 +02:00
Michael Adam
17b091b7c7
s3:registry: remove superfluous check for success of talloc_stackframe()
2011-07-04 20:02:10 +02:00
Michael Adam
cc384c1596
s3:registry: add debug-level-10 verbosity to regdb_upgrade_v2_v3_fn()
2011-07-04 20:02:10 +02:00
Michael Adam
340be35b9b
s3:registry: adapt a debug message to be more systematic
2011-07-04 20:02:10 +02:00
Michael Adam
c8c5d8c89e
s3:registry: set registry version to 3 and add upgrade code
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:09 +02:00
Michael Adam
f36ee63df2
s3:registry: add db_context argument to regdb_upgrade_v1_to_v2()
2011-07-04 20:02:09 +02:00
Michael Adam
1621aab139
s3:registry: wrap the whole db upgrade in one transaction
...
The purpose of this is to prepare for multiple upgrade steps
to be performed in a single transaction, so that no change
at all is made to that database if one step fails.
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:09 +02:00
Michael Adam
caf9c99969
s3:registry: change regdb_store_regdb_version() to take db_context argument.
2011-07-04 20:02:09 +02:00
Michael Adam
2273650ca8
s3:registry: fix a comment typo
2011-07-04 20:02:09 +02:00
Michael Adam
a8360712e1
s3:registry: remove unused regdb_delete_sorted_subkeys()
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:09 +02:00
Michael Adam
a0f83ecbb9
s3:registry: don't delete the unused subkeys cache record any more
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:09 +02:00
Michael Adam
50add4091a
s3:registry: remove the code to create and search the sorted subkeys cache records
...
This is not needed any more.
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:09 +02:00
Michael Adam
18973fa109
s3:registry: adapt the comment explaining the definition of the existence of a key.
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:09 +02:00
Michael Adam
a255630358
s3:registry: regdb_key_exists now checks only for the list-of-subkeys-record
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:08 +02:00
Michael Adam
9e2b2c1fcc
s3:registry: rewrite init_registry_key_internal
...
This rewrites init_registry_key_internal() to correctly also create
base keys. It makes use of the existing create functions instead of
duplicating the code.
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:08 +02:00
Michael Adam
747c67cf30
s3:registry: add regdb_create_basekey()
...
Function to create a base key in the registry db, i.e. one that
has no parent key.
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:08 +02:00
Michael Adam
144c8d77d8
s3:registry: add regdb_create_subkey_internal() taking additional db context argument
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:08 +02:00
Michael Adam
15a50ef8f8
s3:registry: add new mode to regdb_store_subkey_list() for handing in NULL parent key
...
Standard behaviour is to concatenate parent and key path (parent\key).
This new mode allows for storing subkey lists for base keys using a NULL
parent argument.
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:08 +02:00
Michael Adam
fc4d79d41a
s3:registry: create the empty list of subkeys of the new key in regdb_create_subkey
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:08 +02:00
Michael Adam
322eaf1e9e
s3:registry: refactor creation of subkey list out into regdb_store_subkey_list()
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:08 +02:00
Michael Adam
394ca1446e
s3:registry: remove redundant write of zero-lentgh subkey list record
...
In this case, the zero-lenght list has already been written in step #2 .
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:08 +02:00
Michael Adam
eb797bd206
s3:registry: don't update the sorted subkeys cache any more in regdb_store_keys_internal2()
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:08 +02:00
Michael Adam
5b01a34ad7
s3:registry: don't skip base key in existence check in regdb_store_keys_internal()
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:08 +02:00
Michael Adam
da2e64b63f
s3:registry: don't skip base keys from existence check in regdb_create_subkey()
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:07 +02:00
Michael Adam
6b99aa496f
s3:registry: don't skip base keys from existence check in regdb_delete_subkey()
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
2011-07-04 20:02:07 +02:00
Michael Adam
1f72088633
s3:registry: when deleting the records for a key, also delete the sorted subkeys cache
...
This prevents orphaned empty sorted subkeys cache records from filling the database.
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
Signed-off-by: Michael Adam <obnox@samba.org>
2011-06-30 15:41:23 +02:00
Michael Adam
2b162db6e9
s3:registry: add helper function regdb_delete_sorted_subkeys()
...
Pair-Programmed-With: Gregor Beck <gbeck@sernet.de>
Signed-off-by: Michael Adam <obnox@samba.org>
2011-06-30 15:41:22 +02:00
Rusty Russell
5a7874e119
tdb_traverse/tdb_traverse_read: check returns for negative, not -1.
...
TDB2 returns a negative error number on failure. This is compatible
if we always check for < 0 instead of == -1.
Also, there's no tdb_traverse_read in TDB2: we don't try to make
traverse reliable any more, so there are no write locks anyway.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2011-06-20 11:18:35 +02:00
Andrew Bartlett
3d15137653
s3-talloc Change TALLOC_ARRAY() to talloc_array()
...
Using the standard macro makes it easier to move code into common, as
TALLOC_ARRAY isn't standard talloc.
2011-06-09 12:40:08 +02:00
Andrew Bartlett
381423b1bd
libcli/security: move secdesc.c to the top level libcli/security
...
This code does not rely on lp_ or other source3 only functions, so can
be part of the common library.
Andrew Bartlett
2011-05-31 00:32:07 +02:00
Andrew Bartlett
c615ebed6e
s3-lib Replace StrCaseCmp() with strcasecmp_m()
...
strcasecmp_m() never needs to call to talloc, and via next_codepoint()
still has an ASCII fast-path bypassing iconv() calls.
Andrew Bartlett
2011-05-18 16:12:08 +02:00
Michael Adam
26b6831164
s3:registry: add a warning debug message when the sorted subkeys is created from key_exists()
2011-05-12 11:48:30 +02:00
Michael Adam
daf5f29d49
s3:registry: recreate the sorted subkeys cache when storing keys
...
This is to avoid turning the next read operation into a write op.
2011-05-12 11:48:30 +02:00
Michael Adam
1a6ac6a944
s3:registry: add create_sorted_subkeys() to delete and recreate the sorted subkeys key
...
This is to be used from other places than the key_exists() code path.
2011-05-12 11:48:30 +02:00
Michael Adam
b1eac2daf3
s3:registry: turn create_sorted_subkeys_internal to NTSTATUS return type
...
(from bool)
2011-05-12 11:48:30 +02:00
Michael Adam
f5f9355ebe
s3:registry: rename create_sorted_subkeys() to create_sorted_subkeys_internal()
2011-05-12 11:48:29 +02:00
Michael Adam
04f0a1cb7b
s3:registry: fix a typo in a debug message
2011-05-12 11:48:29 +02:00
Günther Deschner
d8cfca3a9b
s3: only include tdb headers where needed.
...
Guenther
2011-05-06 10:48:10 +02:00
Volker Lendecke
b48e22347d
s3: Fix Coverity ID 2047, UNUSED_VALUE
...
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Fri Apr 22 10:53:24 CEST 2011 on sn-devel-104
2011-04-22 10:53:24 +02:00
Günther Deschner
0e771263ee
s3-includes: only include system/filesys.h when needed.
...
Guenther
2011-03-30 01:13:07 +02:00
Michael Adam
14502c5458
s3:registry: fix comments in regdb_store_regdb_version()
2011-01-27 21:43:48 +01:00