Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2009-07-15 | s3:registry: fix a comment in create_sorted_subkeys() | Michael Adam | 1 | -1/+1 | |
Michael | |||||
2009-07-15 | s3:registry: don't loop transaction_commit in create_sorted_subkeys() upon error | Michael Adam | 1 | -1/+1 | |
This would try to commit a higher level transaction upon commit-error. Michael | |||||
2009-07-15 | s3:registry: in regdb_delete_subkey(), don't use the transaction wrappers. | Michael Adam | 1 | -9/+9 | |
This way, the db handle gets used explicitly and the core of the function can be abstracted. Michael | |||||
2009-07-15 | s3:registry: in regdb_delete_subkey(), panic if transaction_cancel fails | Michael Adam | 1 | -2/+1 | |
Michael | |||||
2009-07-15 | s3:registry: panic upon failed transaction_cancel in regdb_create_subkey() | Michael Adam | 1 | -2/+1 | |
Michael | |||||
2009-07-15 | s3:registry: don't use exported transaction wrappers in regdb_create_subkey() | Michael Adam | 1 | -10/+10 | |
So that the regdb handle is again explicit and the core of the function can be abstracted. Michael | |||||
2009-07-15 | s3:registry: create regdb_store_keys_internal() with db_context argument | Michael Adam | 1 | -13/+21 | |
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 | |||||
2009-07-15 | s3:registry: rename regdb_store_keys_internal() to regdb_store_keys_internal2() | Michael Adam | 1 | -9/+9 | |
Michael | |||||
2009-07-15 | s3:registry: create regdb_fetch_keys_internal() with db_context argument | Michael Adam | 1 | -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 | |||||
2009-07-15 | s3:registry: add db_context argument to scan_parent_subkeys() | Michael Adam | 1 | -6/+7 | |
Michael | |||||
2009-07-15 | s3:registry: add db_context argument to regdb_fetch_key_internal() | Michael Adam | 1 | -5/+6 | |
Michael | |||||
2009-07-15 | s3:registry: add db_context argument to regdb_store_keys_internal() | Michael Adam | 1 | -8/+10 | |
Michael | |||||
2009-07-15 | s3:registry: add db_context argument to regdb_delete_key_lists() | Michael Adam | 1 | -6/+6 | |
Michael | |||||
2009-07-15 | s3:registry: add db_context argument to regdb_delete_subkeylist() | Michael Adam | 1 | -3/+3 | |
Michael | |||||
2009-07-15 | s3:registry: add db_context argument to regdb_delete_secdesc() | Michael Adam | 1 | -3/+3 | |
Michael | |||||
2009-07-15 | s3:registry: add db_context argument to regdb_delete_values() | Michael Adam | 1 | -3/+3 | |
Michael | |||||
2009-07-15 | s3:registry: add db_context argument to regdb_delete_key_with_prefix() | Michael Adam | 1 | -5/+6 | |
Michael | |||||
2009-07-15 | s3:registry: don't store differently cased entries for the same keys. | Michael Adam | 1 | -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-07-14 | s3-account_policy: add pdb_policy_type enum. | Günther Deschner | 1 | -1/+1 | |
Guenther | |||||
2009-05-26 | Introduce "struct stat_ex" as a replacement for SMB_STRUCT_STAT | Volker Lendecke | 1 | -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. | |||||
2009-05-06 | s3-printing: fix debug statement in virtual registry layer | Günther Deschner | 1 | -1/+1 | |
(key_driver_fetch_keys). Guenther | |||||
2009-04-27 | s3:registry: replace typedef REGISTRY_OPS by struct registry_ops | Michael Adam | 14 | -36/+36 | |
Michael | |||||
2009-04-27 | s3:registry replace typedef REGISTRY_HOOK by struct registry_hook. | Michael Adam | 1 | -3/+3 | |
Michael | |||||
2009-04-27 | s3:registry: replace typedef REGISTRY_KEY by struct registry_key_handle | Michael Adam | 3 | -25/+34 | |
Michael | |||||
2009-04-27 | s3:registry: replace typedef REGISTRY_VALUE by struct regval_blob | Michael Adam | 5 | -29/+33 | |
Michael | |||||
2009-04-27 | s3:registry: replace typedef REGVAL_CTR by struct regval_ctr. | Michael Adam | 15 | -59/+59 | |
This paves the way for hiding the typedef and the implementation from the surface. Michael | |||||
2009-04-21 | s3: Use common security_descriptor_equal(). | Jelmer Vernooij | 1 | -1/+1 | |
2009-04-21 | s3-secdesc: move all winreg access bits to IDL. | Günther Deschner | 1 | -14/+14 | |
Guenther | |||||
2009-04-17 | s3:registry: Prevent creation of keys containing the '/' character. | Michael Adam | 1 | -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-03-25 | s3-registry: remove last sec_io_desc() caller. | Günther Deschner | 1 | -2/+24 | |
This is a temporary solution while waiting for the regf merge from s4. Guenther | |||||
2009-03-17 | s3-spoolss: rename construct_dev_mode_new to construct_dev_mode. | Günther Deschner | 1 | -1/+1 | |
Guenther | |||||
2009-03-17 | s3-spoolss/registry: use libndr to push a spoolss_DeviceMode in ↵ | Günther Deschner | 1 | -22/+15 | |
fill_in_printer_values(). Guenther | |||||
2009-03-17 | s3-spoolss/registry: use marshall_sec_desc in fill_in_printer_values(). | Günther Deschner | 1 | -7/+12 | |
Guenther | |||||
2009-03-17 | s3-spoolss: move SYSTEMTIME parsing to a more generic place, as suggested. | Günther Deschner | 1 | -1/+1 | |
Guenther | |||||
2009-02-27 | Use talloc_tos() in regkey_access_check() | Volker Lendecke | 1 | -13/+2 | |
2009-02-26 | s3:registry: tighten the subkey loop in reg_deletekey_recursive() | Michael Adam | 1 | -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-26 | s3:registry: use delete_reg_subkey() in reg_deletekey() | Michael Adam | 1 | -15/+1 | |
This further speeds up net conf drop. Michael | |||||
2009-02-26 | s3:registry: implement delete_subkey in the smbconf backend | Michael Adam | 1 | -0/+6 | |
delegating the call to the db backend Michael | |||||
2009-02-26 | s3:registry: implement delete_subkey in the db backend | Michael Adam | 1 | -0/+68 | |
Michael | |||||
2009-02-26 | s3:registry: add a delete_subkey method to the backend ops. | Michael Adam | 1 | -0/+9 | |
This is to provide a more atomic means of deleting a subkey of a key. Michael | |||||
2009-02-26 | s3:registry: refactor deletion of various subkey lists out of regdb_store_keys() | Michael Adam | 1 | -30/+31 | |
Micheal | |||||
2009-02-26 | s3:registry: streamline and cleanup regdb_set_secdesc() somewhat. | Michael Adam | 1 | -15/+5 | |
Michael | |||||
2009-02-26 | s3:registry: refactor deletion of value/secdesc/subkey list tdb records out | Michael Adam | 1 | -43/+73 | |
of regdb_store_values(). Michael | |||||
2009-02-26 | s3:registry: streamline reg_deletekey() somewhat. | Michael Adam | 1 | -25/+19 | |
use W_ERROR_... macros and separate assignments from checks Michael | |||||
2009-02-26 | s3:registry: use create_reg_subkey() in reg_createkey(). | Michael Adam | 1 | -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 | |||||
2009-02-26 | s3:registry: implement create_subkey for the smbconf backend | Michael Adam | 1 | -0/+6 | |
by delegating to the db backend Michael | |||||
2009-02-26 | s3:registry: implement create_subkey for the db backend. | Michael Adam | 1 | -0/+67 | |
Michael | |||||
2009-02-26 | s3:registry: add a create_subkey method to the backend ops. | Michael Adam | 1 | -0/+9 | |
This is to provide a more atomic means of adding a subkey of a key. Michael | |||||
2009-02-26 | s3:registry: hash the list of subkeys in the regsubkey_ctr | Michael Adam | 2 | -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 | |||||
2009-02-26 | s3:registry: remove definition of regsubkey_ctr from the surface. | Michael Adam | 1 | -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 |