~drizzle-trunk/drizzle/development

1337.4.3 by Eric Day
Fixed sha1 cpplint issues.
1
/*
2
 * Copyright (C) 2010 nobody (this is public domain)
3
 */
4
1337.4.2 by Eric Day
Added MYSQL_PASSWORD() UDF.
5
/**
6
 * @file
7
 * @brief SHA1 Declarations
8
 */
9
1337.5.4 by Eric Day
FIxed header guards.
10
#ifndef DRIZZLED_ALGORITHM_SHA1_H
11
#define DRIZZLED_ALGORITHM_SHA1_H
1337.4.2 by Eric Day
Added MYSQL_PASSWORD() UDF.
12
13
#include <stdint.h>
14
#include <sys/types.h>
15
16
namespace drizzled
17
{
18
19
/**
20
 * @addtogroup sha1 SHA-1 in C
21
 * By Steve Reid <steve@edmweb.com>
22
 * 100% Public Domain
23
 * @{
24
 */
25
26
#define	SHA1_BLOCK_LENGTH		64
27
#define	SHA1_DIGEST_LENGTH		20
28
#define	SHA1_DIGEST_STRING_LENGTH	(SHA1_DIGEST_LENGTH * 2 + 1)
29
30
typedef struct {
31
    uint32_t state[5];
32
    uint64_t count;
33
    uint8_t buffer[SHA1_BLOCK_LENGTH];
34
} SHA1_CTX;
35
36
void SHA1Init(SHA1_CTX *);
37
void SHA1Pad(SHA1_CTX *);
38
void SHA1Transform(uint32_t [5], const uint8_t [SHA1_BLOCK_LENGTH]);
39
void SHA1Update(SHA1_CTX *, const uint8_t *, size_t);
40
void SHA1Final(uint8_t [SHA1_DIGEST_LENGTH], SHA1_CTX *);
41
42
/** @} */
43
44
} /* namespace drizzled */
45
1337.5.4 by Eric Day
FIxed header guards.
46
#endif /* DRIZZLED_ALGORITHM_SHA1_H */