hivex: Add HIVEX_OPEN_WRITE flag to allow hive to be opened for writing.
authorRichard Jones <rjones@redhat.com>
Mon, 18 Jan 2010 11:08:56 +0000 (11:08 +0000)
committerRichard Jones <rjones@redhat.com>
Fri, 19 Feb 2010 15:00:31 +0000 (15:00 +0000)
commitdd1a57f8b76e5acd8f86d7edad07b9ea1d316de2
treef1ce3f8f9079326bc91055b8c0f70f342de0d6e7
parent253def9de52d744e5ecb75fe0e163276d8ab9653
hivex: Add HIVEX_OPEN_WRITE flag to allow hive to be opened for writing.

If this flag is omitted (as in the case for all existing callers)
then the hive is still opened read-only.

We add a 'writable' flag to the hive handle, and we change the way
that the hive file (data) is stored.  The data is still mmapped if
the file is opened read-only, since that is more efficient and allows
us to handle larger hives.  However if we need to write to the file
then we have to read it all into memory, since if we had to extend the
file we need to realloc that data.

Note the manpage section L</WRITING TO HIVE FILES> comes in a later
commit.
bootstrap
hivex/Makefile.am
hivex/README
hivex/hivex.c
hivex/hivex.h
hivex/hivex.pod