mirror of
https://github.com/samba-team/samba.git
synced 2025-01-11 05:18:09 +03:00
a599edf04c
most of the changes are fixes to make all the ldb code compile without
warnings on gcc4. Unfortunately That required a lot of casts :-(
I have also added the start of an 'operational' module, which will
replace the timestamp module, plus add support for some other
operational attributes
In ldb_msg_*() I added some new utility functions to make the
operational module sane, and remove the 'ldb' argument from the
ldb_msg_add_*() functions. That argument was only needed back in the
early days of ldb when we didn't use the hierarchical talloc and thus
needed a place to get the allocation function from. Now its just a
pain to pass around everywhere.
Also added a ldb_debug_set() function that calls ldb_debug() plus sets
the result using ldb_set_errstring(). That saves on some awkward
coding in a few places.
(This used to be commit
|
||
---|---|---|
.. | ||
common | ||
man | ||
tools | ||
config.m4 | ||
config.mk | ||
patchfile.c | ||
README | ||
reg_backend_dir.c | ||
reg_backend_gconf.c | ||
reg_backend_ldb.c | ||
reg_backend_nt4.c | ||
reg_backend_rpc.c | ||
reg_backend_w95.c | ||
reg_backend_wine.c | ||
reg_samba.c | ||
regf.idl | ||
registry.h | ||
SConscript | ||
TODO | ||
winregistry.pc.in |
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