summaryrefslogtreecommitdiff
path: root/source3/registry/reg_api.c
AgeCommit message (Collapse)AuthorFilesLines
2012-04-25s3:registry: wrap reg_deletevalue() in a transactionMichael Adam1-4/+30
This is at the wrong layer, but if fixes a race potentially causing data corruption by concurrent access. Signed-off-by: Andreas Schneider <asn@samba.org>
2012-04-25s3:registry: untangle assignment from check in reg_deletevalue()Michael Adam1-1/+2
Signed-off-by: Andreas Schneider <asn@samba.org>
2012-04-25s3:registry: fix race in reg_setvalue that could lead to data corruptionMichael Adam1-6/+33
(there was no lock around fetching the values and storing them) The layering is wrong in that it uses regdb transactions in reg_api Signed-off-by: Andreas Schneider <asn@samba.org>
2012-04-25s3:registry: untangle assignment from check and add a debugmessage in ↵Michael Adam1-1/+3
reg_setvalue() Signed-off-by: Andreas Schneider <asn@samba.org>
2012-04-25s3:registry: don't leak the old contents when updating the value cacheMichael Adam1-0/+1
Signed-off-by: Andreas Schneider <asn@samba.org>
2012-04-25s3:registry:reg_api: fix reg_queryvalue to not fail when values are modified ↵Michael Adam1-1/+45
while it runs Signed-off-by: Andreas Schneider <asn@samba.org>
2011-08-15s3:registry: enhance debugging of deletekey_recursiveMichael Adam1-0/+14
Autobuild-User: Michael Adam <obnox@samba.org> Autobuild-Date: Mon Aug 15 19:34:44 CEST 2011 on sn-devel-104
2011-08-08s3:registry avoid updating keys which are going to be deleted inGregor Beck1-23/+34
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-07-14s3:registry avoid leaking an old regsubkey_ctr on regsubkey_ctr_initGregor Beck1-0/+1
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2011-06-09s3-talloc Change TALLOC_ZERO_P() to talloc_zero()Andrew Bartlett1-2/+2
Using the standard macro makes it easier to move code into common, as TALLOC_ZERO_P isn't standard talloc.
2011-05-18s3-lib Replace StrnCaseCmp() with strncasecmp_m()Andrew Bartlett1-1/+1
strncasecmp_m() never needs to call to talloc, and via next_codepoint() still has an ASCII fast-path bypassing iconv() calls. Andrew Bartlett
2011-03-18s3-registry: remove some unused headers.Günther Deschner1-1/+0
Guenther
2011-02-15s3-amend: Don't overwrite existing valuesVolker Lendecke1-0/+10
This saves a ton of tdb transactions on smbd startup Andreas, Günther, please check! Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Tue Feb 15 19:11:25 CET 2011 on sn-devel-104
2011-01-30s3:registry: in deletekey_recursive, fix return code upon error.Michael Adam1-3/+10
correctly keep the werr from inside the transaction when the opearation inside the transaction fails. What is the correct behaviour if the cancel operation fails?
2010-09-22s3:registry: remove unneeded TALLOC_CTX argument from reg_deletekey_recursiveMichael Adam1-21/+9
2010-09-21s3:registry: move the reg_api prototypes to their own header.Michael Adam1-0/+1
2010-09-21s3:registry:reg_api: update (C)Michael Adam1-1/+1
2010-09-20s3:registry: move (commented out) hilvl util functions to reg_api_util.cMichael Adam1-98/+0
2010-09-20s3:registry: move higher level function reg_open_path to new module reg_api_utilMichael Adam1-56/+0
The reg_api.c code should just export functions that direclty relate to winreg api calls.
2010-09-20s3-registry: move regf based reg_api calls into own file.Günther Deschner1-272/+0
Guenther
2010-09-20s3-registry: add reg_querymultiplevalues to reg_api matching table.Günther Deschner1-2/+2
Guenther
2010-09-11s3-auth Change struct nt_user_token -> struct security_tokenAndrew Bartlett1-5/+5
This common structure is defined in security.idl Andrew Bartlett Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-07-02s3-registry: remove unused reg_util_marshalling code.Günther Deschner1-1/+0
Guenther
2010-07-02s3-registry: avoid using registry_value union.Günther Deschner1-15/+8
Just pull and push data as is. Guenther
2010-07-01s3-registry: fix malloc/talloc mismatch upon free in reg_enumvalue().Günther Deschner1-1/+1
Guenther
2010-06-30s3-registry: add reg_querymultiplevalues() to reg_api.Günther Deschner1-0/+50
Guenther
2010-06-25s3-registry: Convert registry key delimiter from slash to backslash.Andreas Schneider1-10/+0
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-05-31s3-build: only use ndr_security.h where needed.Günther Deschner1-0/+1
Guenther
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: use regval_ctr/blob accessor functions in reg_api.cMichael Adam1-33/+38
2010-05-25s3:registry: extract registry_pull/push_value prototypes into own headerMichael Adam1-0/+1
reg_util_marshalling.h and use them only where needed.
2010-05-25s3:registry: rename reg_util.{c,h} to reg_util_internal.{c,h}Michael Adam1-1/+1
2010-05-25s3:registry: extraxt the reg_dispatcher prototypes into their own header.Michael Adam1-0/+1
And use them only where needed.
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-25s3:registry: extract the reg_cachehook prototypes into their own header.Michael Adam1-0/+1
And use them only where necessary.
2010-05-18s3-secdesc: remove "typedef struct security_descriptor SEC_DESC".Günther Deschner1-1/+1
Guenther
2010-05-18s3: Remove use of iconv_convenience.Jelmer Vernooij1-1/+1
2010-05-18s3-registry: only include registry headers when really needed.Günther Deschner1-0/+1
Guenther
2010-02-07s3: Fix some nonempty blank linesVolker Lendecke1-4/+4
2009-04-27s3:registry: replace typedef REGISTRY_OPS by struct registry_opsMichael Adam1-2/+2
Michael
2009-04-27s3:registry: replace typedef REGISTRY_KEY by struct registry_key_handleMichael Adam1-9/+12
Michael
2009-04-27s3:registry: replace typedef REGVAL_CTR by struct regval_ctr.Michael Adam1-6/+6
This paves the way for hiding the typedef and the implementation from the surface. Michael
2009-04-21s3-secdesc: move all winreg access bits to IDL.Günther Deschner1-14/+14
Guenther
2009-04-17s3:registry: Prevent creation of keys containing the '/' character.Michael Adam1-0/+10
This creates a broken registry that can only be fixed with tdbtool, since the '/' sign is used as a key separator after normalization at a lower level. This makes e.g. "net conf setparm abc/def comment xyz" fail with WERR_INVALID_PARAM, which is much more desirable than a broken registry.tdb. Michael
2009-02-26s3:registry: tighten the subkey loop in reg_deletekey_recursive()Michael Adam1-16/+13
and loop from the end to the beginning so that we don't need to rehash the subkeys... This gets "net conf drop" with 2000 shares down to 14 seconds on my box. Michael
2009-02-26s3:registry: use delete_reg_subkey() in reg_deletekey()Michael Adam1-15/+1
This further speeds up net conf drop. Michael
2009-02-26s3:registry: streamline reg_deletekey() somewhat.Michael Adam1-25/+19
use W_ERROR_... macros and separate assignments from checks Michael
2009-02-26s3:registry: use create_reg_subkey() in reg_createkey().Michael Adam1-8/+2
Instead of calling store_reg_keys() On my box, importing 2000 shares into an empty smbconf key now takes some 32 seconds. Michael