summaryrefslogtreecommitdiff
path: root/source3/registry/reg_objects.c
AgeCommit message (Collapse)AuthorFilesLines
2009-07-15s3:registry: add function regsubkey_ctr_reinit()Michael Adam1-0/+23
This reinitializes an already allocated regsubkey_ctr structure, emptying out the subkey array and hash table. 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-04-27s3:registry: replace typedef REGISTRY_VALUE by struct regval_blobMichael Adam1-23/+26
Michael
2009-04-27s3:registry: replace typedef REGVAL_CTR by struct regval_ctr.Michael Adam1-10/+10
This paves the way for hiding the typedef and the implementation from the surface. Michael
2009-02-26s3:registry: hash the list of subkeys in the regsubkey_ctrMichael Adam1-21/+102
This removes many loops over all the arrays (from regsubkey_ctr_key_exists) and thus reduces "net conf drop" from 1m55 to 48seconds and "net conf import" from 1m55 to 58 seconds for 2000 shares on my box. Michael
2009-02-26s3:registry: remove definition of regsubkey_ctr from the surface.Michael Adam1-0/+6
All access is now through accessor functions in reg_objects.c This allows for performance tuning under the hood in the next step. Michael
2009-02-26s3:registry: add regsubkey_ctr_get_seqnum() to hide implementationMichael Adam1-0/+9
Michael
2009-02-26s3:registry: add regsubkey_ctr_set_seqnum to hide implementation from caller.Michael Adam1-0/+11
Michael
2009-02-26s3:registry: add a regsubkey_ctr_init function for allocating a regsubkey_ctrMichael Adam1-1/+15
Michael
2009-02-26s3:registry: fix a commentMichael Adam1-3/+3
Michael
2009-02-26s3:registry: replace typedef "REGSUBKEY_CTR" by "struct regsubkey_ctr"Michael Adam1-5/+5
This paves the way for hiding the typedef and the implementation from the surface. Michael
2007-11-26Remove pstrings from nsswitch/ and registry/Jeremy Allison1-5/+5
Jeremy. (This used to be commit 331c0d6216e1a1607a49ed7eb4078e10138ec16a)
2007-10-18RIP BOOL. Convert BOOL -> bool. I found a few interestingJeremy Allison1-2/+2
bugs in various places whilst doing this (places that assumed BOOL == int). I also need to fix the Samba4 pidl generation (next checkin). Jeremy. (This used to be commit f35a266b3cbb3e5fa6a86be60f34fe340a3ca71f)
2007-10-10r25417: Use DBGC_REGISTRY class.Günther Deschner1-1/+1
Guenther (This used to be commit 43ca04918a5a1b2379083dc624b346ceb8476a38)
2007-10-10r25140: Less red bars to hurt my eyes...Michael Adam1-47/+51
(This used to be commit f935d21200294c8d29ce527300f605e721cb3620)
2007-10-10r25139: Avoid code duplication: let regval_ctr_copyvalue() call ↵Michael Adam1-37/+2
regval_ctr_addvalue(). This also corrects regval_ctr_copyvalue() in that it cannot create (invalid) regval containers with dupliacte entries... Michael (This used to be commit 2daaaaa835078c543fa12cd1819e8a3d86cf6e5e)
2007-10-10r24999: Use the new regval_compose() function in regval_ctr_addvalue().Michael Adam1-18/+3
Michael (This used to be commit dab9ffe602eaca478a73f3b882f543629ce3001e)
2007-10-10r24998: Add a function regval_compose() to compose a REGISTRY_VALUE fromMichael Adam1-0/+30
input data. Use this function in a first step to refactor the canonicalization code of smbconf_store_values(). Michael (This used to be commit f4caa2d7d412e2b9bb2a1ce71514551569ccf373)
2007-10-10r24949: Remove some static buffersVolker Lendecke1-2/+2
(This used to be commit df648d47ff3c4e24f439fda839653bda98323100)
2007-10-10r23801: The FSF has moved around a lot. This fixes their Mass Ave address.Andrew Tridgell1-2/+1
(This used to be commit 87c91e4362c51819032bfbebbb273c52e203b227)
2007-10-10r23779: Change from v2 or later to v3 or later.Jeremy Allison1-1/+1
Jeremy. (This used to be commit 407e6e695b8366369b7c76af1ff76869b45347b3)
2007-10-10r22588: Make all uses of TALLOC_MEMDUP consistent.Jeremy Allison1-4/+20
Jeremy. (This used to be commit 8ad13718af0ba1fcb10a6f1631b1ed3cb8d11175)
2007-10-10r19990: Fix commentVolker Lendecke1-1/+1
(This used to be commit 8b3d860f27d166f1a0b8019f9c9c91355c6becdf)
2007-10-10r19777: Make regsubkey_ctr_addkey return WERROR. Nobody checks this so far, ↵Volker Lendecke1-20/+22
but this will change. Volker (This used to be commit 17c7c337f64b082c1bf1045a4093c279deeec958)
2007-10-10r17878: Fix possible null deref found by Stanford checker.Jeremy Allison1-0/+4
Jeremy. (This used to be commit ae20201494f44cb98e58ba98531a79feeeb82b47)
2007-10-10r17867: Fix null deref in error code path. Found by theJeremy Allison1-0/+1
Stanford checker. Jeremy. (This used to be commit 09652dc71ce13bd305e653557e43731378398dd6)
2007-10-10r17333: Some C++ warningsVolker Lendecke1-3/+6
(This used to be commit be9aaffdaccae06c8c035eaf31862e34b7cfbe38)
2007-10-10r14768: Fix potential null deref coverity bugs #255, #256.Jeremy Allison1-17/+25
Jeremy. (This used to be commit a40c7a0cd888dcee3cac1a41602863f54c51ef17)
2007-10-10r14766: Fix possible NULL deref. Coverity #254.Jeremy Allison1-8/+9
Jeremy. (This used to be commit e2e2d8b939dd425a97b36102c6a541e3cf6236ad)
2007-10-10r10656: BIG merge from trunk. Features not copied overGerald Carter1-1/+27
* \PIPE\unixinfo * winbindd's {group,alias}membership new functions * winbindd's lookupsids() functionality * swat (trunk changes to be reverted as per discussion with Deryck) (This used to be commit 939c3cb5d78e3a2236209b296aa8aba8bdce32d3)
2007-10-10r9739: conver the reg_objects (REGSUBKEY_CTR & REGVAL_CTR) to useGerald Carter1-68/+20
the new talloc() features: Note that the REGSUB_CTR and REGVAL_CTR objects *must* be talloc()'d since the methods use the object pointer as the talloc context for internal private data. There is no longer a regXXX_ctr_intit() and regXXX_ctr_destroy() pair of functions. Simply TALLOC_ZERO_P() and TALLOC_FREE() the object. Also had to convert the printer_info_2->NT_PRINTER_DATA field to be talloc()'d as well. This is just a stop on the road to cleaning up the printer memory management. (This used to be commit ef721333ab9639cb5346067497e99fbd0d4425dd)
2007-10-10r9086: * fix invalid read in parse_spoolss when writing a devmode toGerald Carter1-1/+6
the wire * fix dup_a_regval() when size is 0 * ensure we pass a pstring to unlink_internals (fixes delete_driver code) (This used to be commit 353e63ff421c564a1b7c7cfe95982f31c871a227)
2007-10-10r7997: Pointers don't kill people, people with pointers kill people...Gerald Carter1-5/+1
"Honest office! It was a mistake! I thought the safety lock was on!" * Fix problem setting registry values in in-memory objects I now have printmig.exe successfully creating all of the printer registry keys (in the tdb backend) which means that the top level semantics are correct. (This used to be commit 52899551070ddb8f185d53bd125ae06c192ef7b0)
2007-10-10r7995: * privileges are local except when they're *not*Gerald Carter1-5/+5
printmig.exe assumes that the LUID of the SeBackupPrivlege on the target server matches the LUID of the privilege on the local client. Even though an LUID is never guaranteed to be the same across reboots. How *awful*! My cat could write better code! (more on my cat later....) * Set the privelege LUID in the global PRIVS[] array * Rename RegCreateKey() to RegCreateKeyEx() to better match MSDN * Rename the unknown field in RegCreateKeyEx() to disposition (guess according to MSDN) * Add the capability to define REG_TDB_ONLY for using the reg_db.c functions and stress the RegXXX() rpc functions. (This used to be commit 0d6352da4800aabc04dfd7c65a6afe6af7cd2d4b)
2007-10-10r7908: * change REGISTRY_HOOK api to use const (fix compiler warningGerald Carter1-12/+23
in init_registry_data() * Add means of storing registry values in registry.tdb * add builtin_registry_values[] array for REG_DWORD and REG_SZ values needed during startup * Finish up RegDeleteValue() and RegSetValue() * Finish up regdb_store_reg_values() and regdb_fetch_reg_values() I can now create and retrieve values using regedit.exe on Win2k. bin/net -S rain -U% rpc registry enumerate 'hklm\software\samba' Valuename = Version Type = REG_SZ Data = 3.0.20 Next is to do the virtual writes in reg_printing.c and I'll be done with Print Migrator (yeah! finally) (This used to be commit 3d837e58db9ded64d6b85f047012c7d487be4627)
2007-10-10r7698: * clean upserver frontend for RegDeleteKey()Gerald Carter1-13/+52
* implement RegDeleteKey() for reg_db backend (This used to be commit 91b81a23b8e2a096747e02fd9392ef590e7f0d61)
2007-10-10r7691: * add .gdbinit to the svn:ignore filesGerald Carter1-4/+6
* start adding write support to the Samba registry Flesh out the server implementations of RegCreateKey(), RegSetValue(), RegDeleteKey() and RegDeleteValue() I can create a new key using regedit.exe now but the 'New Key #1' key cannot be deleted yet. (This used to be commit e188fdbef8f0ad202b0ecf3c30be2941ebe6d5b1)
2007-10-10r6942: * merging the registry changes back to the 3.0 treeGerald Carter1-37/+45
* removing the testprns tool (This used to be commit 81ffb0dbbbd244623507880c323a3c37e2b8dc4d)
2007-10-10r5541: Fix crash bug in the client-spoolss enumdataex-call.Günther Deschner1-1/+1
With Windows2003 it's perfectly legal to receive no data when querying a value-less subkey. Found while migrating printer settings. Guenther (This used to be commit 3e04def03377b2eae2987c87b18ccadf5b48a6fe)
2007-10-10r4088: Get medieval on our ass about malloc.... :-). Take control of all our ↵Jeremy Allison1-12/+12
allocation functions so we can funnel through some well known functions. Should help greatly with malloc checking. HEAD patch to follow. Jeremy. (This used to be commit 620f2e608f70ba92f032720c031283d295c5c06a)
2003-01-03Merge from HEAD - make Samba compile with -Wwrite-strings without additionalAndrew Bartlett1-2/+2
warnings. (Adds a lot of const). Andrew Bartlett (This used to be commit 3a7458f9472432ef12c43008414925fd1ce8ea0c)
2002-12-20Forward port the change to talloc_init() to make all talloc contextsJeremy Allison1-2/+2
named. Ensure we can query them. Jeremy. (This used to be commit 09a218a9f6fb0bd922940467bf8500eb4f1bcf84)
2002-12-05Add some constJim McDonough1-3/+3
(This used to be commit 4f8c707aa9d7f629527d509ef574842d52855f15)
2002-12-03Don't segfault when trying to delete a key when none exist.Jim McDonough1-0/+2
(This used to be commit 887ec4e5100dcbe8f1109232e27abc4ed6ad42f2)
2002-08-30break out REGISTRY_VALUE & REGVAL_CR objects into separate file forGerald Carter1-0/+372
cleaning linking.... (This used to be commit fd140aadd7c76facb4efa80655e633600f9760b6)