~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to libdrizzle/sha1.h

Merge Stewart's dead code removal

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/**
2
 
 * @file
3
 
 * @brief SHA1 Declarations
4
 
 */
5
 
 
6
 
#ifndef _SHA1_H
7
 
#define _SHA1_H
8
 
 
9
 
#ifdef  __cplusplus
10
 
extern "C" {
11
 
#endif
12
 
 
13
 
/**
14
 
 * @addtogroup sha1 SHA-1 in C
15
 
 *
16
 
 * Copyright (C) 2010 nobody (this is public domain)
17
 
 *
18
 
 * This file is based on public domain code.
19
 
 * Initial source code is in the public domain, 
20
 
 * so clarified by Steve Reid <steve@edmweb.com>
21
 
 *
22
 
 * @{
23
 
 */
24
 
 
25
 
#define SHA1_BLOCK_LENGTH               64
26
 
#define SHA1_DIGEST_LENGTH              20
27
 
#define SHA1_DIGEST_STRING_LENGTH       (SHA1_DIGEST_LENGTH * 2 + 1)
28
 
 
29
 
typedef struct {
30
 
    uint32_t state[5];
31
 
    uint64_t count;
32
 
    uint8_t buffer[SHA1_BLOCK_LENGTH];
33
 
} SHA1_CTX;
34
 
 
35
 
void SHA1Init(SHA1_CTX *);
36
 
void SHA1Pad(SHA1_CTX *);
37
 
void SHA1Transform(uint32_t [5], const uint8_t [SHA1_BLOCK_LENGTH]);
38
 
void SHA1Update(SHA1_CTX *, const uint8_t *, size_t);
39
 
void SHA1Final(uint8_t [SHA1_DIGEST_LENGTH], SHA1_CTX *);
40
 
 
41
 
/** @} */
42
 
 
43
 
#ifdef  __cplusplus
44
 
}
45
 
#endif
46
 
 
47
 
#endif /* _SHA1_H */