apt
0.9.11.2
Main Page
Related Pages
Modules
Classes
Files
File List
apt-pkg
contrib
md5.h
1
// -*- mode: cpp; mode: fold -*-
2
// Description /*{{{*/
3
// $Id: md5.h,v 1.6 2001/05/07 05:06:52 jgg Exp $
4
/* ######################################################################
5
6
MD5SumValue - Storage for a MD5Sum
7
MD5Summation - MD5 Message Digest Algorithm.
8
9
This is a C++ interface to a set of MD5Sum functions. The class can
10
store a MD5Sum in 16 bytes of memory.
11
12
A MD5Sum is used to generate a (hopefully) unique 16 byte number for a
13
block of data. This can be used to gaurd against corruption of a file.
14
MD5 should not be used for tamper protection, use SHA or something more
15
secure.
16
17
There are two classes because computing a MD5 is not a continual
18
operation unless 64 byte blocks are used. Also the summation requires an
19
extra 18*4 bytes to operate.
20
21
##################################################################### */
22
/*}}}*/
23
#ifndef APTPKG_MD5_H
24
#define APTPKG_MD5_H
25
26
27
#include <string>
28
#include <cstring>
29
#include <algorithm>
30
#include <stdint.h>
31
32
#include "hashsum_template.h"
33
34
#ifndef APT_8_CLEANER_HEADERS
35
using
std::string;
36
using
std::min;
37
#endif
38
39
typedef
HashSumValue<128>
MD5SumValue
;
40
41
class
MD5Summation
:
public
SummationImplementation
42
{
43
uint32_t Buf[4];
44
unsigned
char
Bytes[2*4];
45
unsigned
char
In[16*4];
46
bool
Done;
47
48
public
:
49
50
bool
Add(
const
unsigned
char
*inbuf,
unsigned
long
long
inlen);
51
using
SummationImplementation::Add;
52
53
MD5SumValue
Result();
54
55
MD5Summation
();
56
};
57
58
#endif
Generated on Sun Sep 8 2013 19:56:00 for apt by
1.8.4