mirror of
https://github.com/reactos/reactos.git
synced 2024-11-06 06:33:08 +00:00
527f2f9057
* Create a branch for some evul shell experiments. svn path=/branches/shell-experiments/; revision=61927
32 lines
620 B
C
32 lines
620 B
C
/*
|
|
* PROJECT: registry manipulation library
|
|
* LICENSE: GPL - See COPYING in the top level directory
|
|
* COPYRIGHT: Copyright 2005 Filip Navara <navaraf@reactos.org>
|
|
* Copyright 2001 - 2005 Eric Kohl
|
|
*/
|
|
|
|
#include "cmlib.h"
|
|
|
|
/**
|
|
* @name HvpHiveHeaderChecksum
|
|
*
|
|
* Compute checksum of hive header and return it.
|
|
*/
|
|
|
|
ULONG CMAPI
|
|
HvpHiveHeaderChecksum(
|
|
PHBASE_BLOCK HiveHeader)
|
|
{
|
|
PULONG Buffer = (PULONG)HiveHeader;
|
|
ULONG Sum = 0;
|
|
ULONG i;
|
|
|
|
for (i = 0; i < 127; i++)
|
|
Sum ^= Buffer[i];
|
|
if (Sum == (ULONG)-1)
|
|
Sum = (ULONG)-2;
|
|
if (Sum == 0)
|
|
Sum = 1;
|
|
|
|
return Sum;
|
|
}
|