diff options
author | Torne (Richard Coles) <torne@google.com> | 2012-10-08 17:37:18 +0100 |
---|---|---|
committer | Torne (Richard Coles) <torne@google.com> | 2012-10-08 17:37:18 +0100 |
commit | 64341a337360ccaef3d0e35ddad9bc476cb3a41e (patch) | |
tree | 397b357285cc32d233d3537bf222757d937ea816 /src/checksum.h | |
parent | 50f5e1e9e2c967df097414efdcc972a22f0758e8 (diff) | |
parent | 438f2a5be6d809bc21611a94cd37bfc8c28ceb33 (diff) | |
download | open-vcdiff-64341a337360ccaef3d0e35ddad9bc476cb3a41e.tar.gz |
Merge sdch/open-vcdiff from http://git.chromium.org/external/open-vcdiff.git at 438f2a5be6d809bc21611a94cd37bfc8c28ceb33
This commit was generated by merge-from-chromium.py.
Change-Id: I10bf1f306f3f7d57cef2a7a4a67a22a35fa7b188
Diffstat (limited to 'src/checksum.h')
-rw-r--r-- | src/checksum.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/checksum.h b/src/checksum.h new file mode 100644 index 0000000..0d315a1 --- /dev/null +++ b/src/checksum.h @@ -0,0 +1,48 @@ +// Copyright 2008 Google Inc. +// Author: Lincoln Smith +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// A wrapper for the adler32() function from zlib. This can be replaced +// with another checksum implementation if desired. + +#ifndef OPEN_VCDIFF_CHECKSUM_H_ +#define OPEN_VCDIFF_CHECKSUM_H_ + +#include <config.h> +#include "zlib.h" + +namespace open_vcdiff { + +typedef uLong VCDChecksum; + +const VCDChecksum kNoPartialChecksum = 0; + +inline VCDChecksum ComputeAdler32(const char* buffer, + size_t size) { + return adler32(kNoPartialChecksum, + reinterpret_cast<const Bytef*>(buffer), + static_cast<uInt>(size)); +} + +inline VCDChecksum UpdateAdler32(VCDChecksum partial_checksum, + const char* buffer, + size_t size) { + return adler32(partial_checksum, + reinterpret_cast<const Bytef*>(buffer), + static_cast<uInt>(size)); +} + +} // namespace open_vcdiff + +#endif // OPEN_VCDIFF_CHECKSUM_H_ |