reactos/sdk/lib/cmlib
George Bișoc f3141fb29e
[NTOS:CM] Implement support for alternate registry hives
Sometimes repairing a broken hive with a hive log does not always guarantee the hive
in question has fully recovered. In worst cases it could happen the LOG itself is even
corrupt too and that would certainly lead to a total unbootable system. This is most likely
if the victim hive is the SYSTEM hive.

This can be anyhow solved by the help of a mirror hive, or also called an "alternate hive".
Alternate hives serve the purpose as backup hives for primary hives of which there is still
a risk that is not worth taking. For now only the SYSTEM hive is granted the right to have
a backup alternate hive.

=== NOTE ===

Currently the SYSTEM hive can only base upon the alternate SYSTEM.ALT hive, which means the
corresponding LOG file never gets updated. When time comes the existing code must be adapted
to allow the possibility to use .ALT and .LOG hives simultaneously.
2023-11-19 20:44:29 +01:00
..
CMakeLists.txt [SDK][CMLIB] Implement CmCheckRegistry and validation private helpers 2023-11-19 20:44:27 +01:00
cmcheck.c [SDK][CMLIB] Implement CmCheckRegistry and validation private helpers 2023-11-19 20:44:27 +01:00
cmdata.h
cmheal.c [SDK][CMLIB] Implement self-heal registry helpers 2023-11-19 20:44:27 +01:00
cmindex.c [SDK:CMLIB] Use Hive->Allocate / Hive->Free where possible. 2022-04-16 18:33:24 +02:00
cminit.c [SDK][CMLIB] Purge volatile data of registry in a proper way with CmCheckRegistry 2023-11-19 20:44:28 +01:00
cmkeydel.c [SDK:CMLIB][MKHIVE][BOOT:ENVIRON][NTOS:CONFIG] Add missing HvGetCell casts. Replace some ASSERT(FALSE). 2022-03-27 18:37:16 +02:00
cmlib.h [NTOS:CM] Implement support for alternate registry hives 2023-11-19 20:44:29 +01:00
cmname.c [SDK:CMLIB] Const-ify the unicode strings that are only used as input and not modified. 2022-03-27 19:38:54 +02:00
cmse.c [SDK:CMLIB][MKHIVE][BOOT:ENVIRON][NTOS:CONFIG] Add missing HvGetCell casts. Replace some ASSERT(FALSE). 2022-03-27 18:37:16 +02:00
cmvalue.c [SDK:CMLIB] Use Hive->Allocate / Hive->Free where possible. 2022-04-16 18:33:24 +02:00
hivebin.c [TOOLS] Fix/suppress all MSVC/x64 warnings (#1525) 2019-04-28 23:21:48 +02:00
hivecell.c [NTOS:CM] Don't lazy flush the registry during unlocking operation 2022-12-23 19:45:13 +01:00
hivedata.h [NTOS:CM] Implement support for alternate registry hives 2023-11-19 20:44:29 +01:00
hiveinit.c [NTOS:CM] Implement support for alternate registry hives 2023-11-19 20:44:29 +01:00
hivesum.c
hivewrt.c [NTOS:CM] Implement support for alternate registry hives 2023-11-19 20:44:29 +01:00