summaryrefslogtreecommitdiffstats
path: root/source3/registry
Commit message (Collapse)AuthorAgeFilesLines
...
* s3:registry: rename regdb_store_keys_internal() to regdb_store_keys_internal2()Michael Adam2009-07-151-9/+9
| | | | Michael
* s3:registry: create regdb_fetch_keys_internal() with db_context argumentMichael Adam2009-07-151-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
* s3:registry: add db_context argument to scan_parent_subkeys()Michael Adam2009-07-151-6/+7
| | | | Michael
* s3:registry: add db_context argument to regdb_fetch_key_internal()Michael Adam2009-07-151-5/+6
| | | | Michael
* s3:registry: add db_context argument to regdb_store_keys_internal()Michael Adam2009-07-151-8/+10
| | | | Michael
* s3:registry: add db_context argument to regdb_delete_key_lists()Michael Adam2009-07-151-6/+6
| | | | Michael
* s3:registry: add db_context argument to regdb_delete_subkeylist()Michael Adam2009-07-151-3/+3
| | | | Michael
* s3:registry: add db_context argument to regdb_delete_secdesc()Michael Adam2009-07-151-3/+3
| | | | Michael
* s3:registry: add db_context argument to regdb_delete_values()Michael Adam2009-07-151-3/+3
| | | | Michael
* s3:registry: add db_context argument to regdb_delete_key_with_prefix()Michael Adam2009-07-151-5/+6
| | | | Michael
* s3:registry: don't store differently cased entries for the same keys.Michael Adam2009-07-151-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
* s3-account_policy: add pdb_policy_type enum.Günther Deschner2009-07-141-1/+1
| | | | Guenther
* Introduce "struct stat_ex" as a replacement for SMB_STRUCT_STATVolker Lendecke2009-05-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces struct stat_ex { dev_t st_ex_dev; ino_t st_ex_ino; mode_t st_ex_mode; nlink_t st_ex_nlink; uid_t st_ex_uid; gid_t st_ex_gid; dev_t st_ex_rdev; off_t st_ex_size; struct timespec st_ex_atime; struct timespec st_ex_mtime; struct timespec st_ex_ctime; struct timespec st_ex_btime; /* birthtime */ blksize_t st_ex_blksize; blkcnt_t st_ex_blocks; }; typedef struct stat_ex SMB_STRUCT_STAT; It is really large because due to the friendly libc headers playing macro tricks with fields like st_ino, so I renamed them to st_ex_xxx. Why this change? To support birthtime, we already have quite a few #ifdef's at places where it does not really belong. With a stat struct that we control, we can consolidate the nanosecond timestamps and the birthtime deep in the VFS stat calls. At this moment it is triggered by a request to support the birthtime field for GPFS. GPFS does not extend the system level struct stat, but instead has a separate call that gets us the additional information beyond posix. Without being able to do that within the VFS stat calls, that support would have to be scattered around the main smbd code. It will very likely break all the onefs modules, but I think the changes will be reasonably easy to do.
* s3-printing: fix debug statement in virtual registry layerGünther Deschner2009-05-061-1/+1
| | | | | | (key_driver_fetch_keys). Guenther
* s3:registry: replace typedef REGISTRY_OPS by struct registry_opsMichael Adam2009-04-2714-36/+36
| | | | Michael
* s3:registry replace typedef REGISTRY_HOOK by struct registry_hook.Michael Adam2009-04-271-3/+3
| | | | Michael
* s3:registry: replace typedef REGISTRY_KEY by struct registry_key_handleMichael Adam2009-04-273-25/+34
| | | | Michael
* s3:registry: replace typedef REGISTRY_VALUE by struct regval_blobMichael Adam2009-04-275-29/+33
| | | | Michael
* s3:registry: replace typedef REGVAL_CTR by struct regval_ctr.Michael Adam2009-04-2715-59/+59
| | | | | | | This paves the way for hiding the typedef and the implementation from the surface. Michael
* s3: Use common security_descriptor_equal().Jelmer Vernooij2009-04-211-1/+1
|
* s3-secdesc: move all winreg access bits to IDL.Günther Deschner2009-04-211-14/+14
| | | | Guenther
* s3:registry: Prevent creation of keys containing the '/' character.Michael Adam2009-04-171-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
* s3-registry: remove last sec_io_desc() caller.Günther Deschner2009-03-251-2/+24
| | | | | | This is a temporary solution while waiting for the regf merge from s4. Guenther
* s3-spoolss: rename construct_dev_mode_new to construct_dev_mode.Günther Deschner2009-03-171-1/+1
| | | | Guenther
* s3-spoolss/registry: use libndr to push a spoolss_DeviceMode in ↵Günther Deschner2009-03-171-22/+15
| | | | | | fill_in_printer_values(). Guenther
* s3-spoolss/registry: use marshall_sec_desc in fill_in_printer_values().Günther Deschner2009-03-171-7/+12
| | | | Guenther
* s3-spoolss: move SYSTEMTIME parsing to a more generic place, as suggested.Günther Deschner2009-03-171-1/+1
| | | | Guenther
* Use talloc_tos() in regkey_access_check()Volker Lendecke2009-02-271-13/+2
|
* s3:registry: tighten the subkey loop in reg_deletekey_recursive()Michael Adam2009-02-261-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
* s3:registry: use delete_reg_subkey() in reg_deletekey()Michael Adam2009-02-261-15/+1
| | | | | | This further speeds up net conf drop. Michael
* s3:registry: implement delete_subkey in the smbconf backendMichael Adam2009-02-261-0/+6
| | | | | | delegating the call to the db backend Michael
* s3:registry: implement delete_subkey in the db backendMichael Adam2009-02-261-0/+68
| | | | Michael
* s3:registry: add a delete_subkey method to the backend ops.Michael Adam2009-02-261-0/+9
| | | | | | This is to provide a more atomic means of deleting a subkey of a key. Michael
* s3:registry: refactor deletion of various subkey lists out of regdb_store_keys()Michael Adam2009-02-261-30/+31
| | | | Micheal
* s3:registry: streamline and cleanup regdb_set_secdesc() somewhat.Michael Adam2009-02-261-15/+5
| | | | Michael
* s3:registry: refactor deletion of value/secdesc/subkey list tdb records outMichael Adam2009-02-261-43/+73
| | | | | | of regdb_store_values(). Michael
* s3:registry: streamline reg_deletekey() somewhat.Michael Adam2009-02-261-25/+19
| | | | | | use W_ERROR_... macros and separate assignments from checks Michael
* s3:registry: use create_reg_subkey() in reg_createkey().Michael Adam2009-02-261-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
* s3:registry: implement create_subkey for the smbconf backendMichael Adam2009-02-261-0/+6
| | | | | | by delegating to the db backend Michael
* s3:registry: implement create_subkey for the db backend.Michael Adam2009-02-261-0/+67
| | | | Michael
* s3:registry: add a create_subkey method to the backend ops.Michael Adam2009-02-261-0/+9
| | | | | | This is to provide a more atomic means of adding a subkey of a key. Michael
* s3:registry: hash the list of subkeys in the regsubkey_ctrMichael Adam2009-02-262-26/+107
| | | | | | | | | | 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
* s3:registry: remove definition of regsubkey_ctr from the surface.Michael Adam2009-02-261-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
* s3:registry: use regsubkey_ctr_init() in reg_eventlog.cMichael Adam2009-02-261-4/+10
| | | | Michael
* s3:registry: use regsubkey_ctr_get_seqnum() in reg_backend_db.cMichael Adam2009-02-261-1/+1
| | | | Michael
* s3:registry: use regsubkey_ctr_set_seqnum() in reg_backend_db.cMichael Adam2009-02-261-1/+4
| | | | Michael
* s3:registry: use regsubkey_ctr_init() in reg_backend_db.cMichael Adam2009-02-261-8/+14
| | | | | | instead of using talloc directly. Michael
* s3:registry: use regsubkey_ctr_init() in reg_api.cMichael Adam2009-02-261-13/+10
| | | | | | instead of using talloc on struct regsubkey_ctr. Michael
* s3:registry: add regsubkey_ctr_get_seqnum() to hide implementationMichael Adam2009-02-261-0/+9
| | | | Michael
* s3:registry: add regsubkey_ctr_set_seqnum to hide implementation from caller.Michael Adam2009-02-261-0/+11
| | | | Michael