~ubuntu-branches/ubuntu/saucy/clamav/saucy-backports

« back to all changes in this revision

Viewing changes to libclamav/sha1.h

  • Committer: Package Import Robot
  • Author(s): Scott Kitterman
  • Date: 2014-07-15 01:08:10 UTC
  • mfrom: (0.35.47 sid)
  • Revision ID: package-import@ubuntu.com-20140715010810-ru66ek4fun2iseba
Tags: 0.98.4+dfsg-2~ubuntu13.10.1
No-change backport to saucy (LP: #1341962)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*-
2
 
 * Copyright (c) 2001-2003 Allan Saddi <allan@saddi.com>
3
 
 * All rights reserved.
4
 
 *
5
 
 * Redistribution and use in source and binary forms, with or without
6
 
 * modification, are permitted provided that the following conditions
7
 
 * are met:
8
 
 * 1. Redistributions of source code must retain the above copyright
9
 
 *    notice, this list of conditions and the following disclaimer.
10
 
 * 2. Redistributions in binary form must reproduce the above copyright
11
 
 *    notice, this list of conditions and the following disclaimer in the
12
 
 *    documentation and/or other materials provided with the distribution.
13
 
 *
14
 
 * THIS SOFTWARE IS PROVIDED BY ALLAN SADDI AND HIS CONTRIBUTORS ``AS IS''
15
 
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16
 
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17
 
 * ARE DISCLAIMED.  IN NO EVENT SHALL ALLAN SADDI OR HIS CONTRIBUTORS BE
18
 
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
19
 
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
20
 
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
21
 
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
22
 
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
23
 
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
24
 
 * POSSIBILITY OF SUCH DAMAGE.
25
 
 *
26
 
 * $Id: sha1.h 347 2003-02-23 22:11:49Z asaddi $
27
 
 */
28
 
 
29
 
#ifndef _SHA1_H
30
 
#define _SHA1_H
31
 
 
32
 
#include "cltypes.h"
33
 
 
34
 
#define SHA1_HASH_SIZE 20
35
 
 
36
 
/* Hash size in 32-bit words */
37
 
#define SHA1_HASH_WORDS 5
38
 
 
39
 
struct _SHA1Context {
40
 
  uint64_t totalLength;
41
 
  uint32_t hash[SHA1_HASH_WORDS];
42
 
  uint32_t bufferLength;
43
 
  union {
44
 
    uint32_t words[16];
45
 
    uint8_t bytes[64];
46
 
  } buffer;
47
 
#ifdef RUNTIME_ENDIAN
48
 
  int littleEndian;
49
 
#endif /* RUNTIME_ENDIAN */
50
 
};
51
 
 
52
 
typedef struct _SHA1Context SHA1Context;
53
 
 
54
 
#ifdef __cplusplus
55
 
extern "C" {
56
 
#endif
57
 
 
58
 
void SHA1Init (SHA1Context *sc);
59
 
void SHA1Update (SHA1Context *sc, const void *data, uint32_t len);
60
 
void SHA1Final (SHA1Context *sc, uint8_t hash[SHA1_HASH_SIZE]);
61
 
 
62
 
#ifdef __cplusplus
63
 
}
64
 
#endif
65
 
 
66
 
#endif /* _SHA1_H */