mirror of
https://github.com/samba-team/samba.git
synced 2025-02-23 09:57:40 +03:00
This patch changes a lot of the code in ldb_dn.c, and also removes and add a number of manipulation functions around. The aim is to avoid validating a dn if not necessary as the validation code is necessarily slow. This is mainly to speed up internal operations where input is not user generated and so we can assume the DNs need no validation. The code is designed to keep the data as a string if possible. The code is not yet 100% perfect, but pass all the tests so far. A memleak is certainly present, I'll work on that next. Simo.
This is the registry library. The registry is basically a bunch of hives that can be loaded from different places. The various registry backends provide support for loading/saving specific types of hives: - ldb - w95 (USER.DAT-style files) - nt4 (NTUSER.DAT-style files) - gconf (GNOME configuration) - rpc (Remote individual hives) Instead of opening individual hives, one can also open a 'complete' registry by using one of these three functions: - reg_open_local() - load local registry, see below - reg_open_remote() - connect to remote registry over RPC - reg_open_wine() (not working yet) reg_open_local() loads a set of hives based on smb.conf settings. Lines in smb.conf should have the following syntax: registry:<hivename> = <backend>:<location> So an example usage could be: registry:HKEY_CURRENT_USER = nt4:NTUSER.DAT registry:HKEY_LOCAL_MACHINE = ldb:tdb://registry.tdb WERR_NOT_SUPPORTED will be returned for all hives that haven't been set. On Windows the various registry hives are loaded from: HKEY_CURRENT_CONFIG: %SystemRoot%\System32\Config\System HKEY_CURRENT_USER: %Profile%\NTUser.dat HKEY_LOCAL_MACHINE\SAM: %SystemRoot%\System32\Config\Sam HKEY_LOCAL_MACHINE\Security: %SystemRoot%\System32\Config\Security HKEY_LOCAL_MACHINE\Software: %SystemRoot%\System32\Config\Software HKEY_LOCAL_MACHINE\System: %SystemRoot%\System32\Config\System HKEY_USERS\.DEFAULT: %SystemRoot%\System32\Config\Default HKEY_LOCAL_MACHINE\HARDWARE: is autogenerated