projects
/
gnulib.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
autoupdate
[gnulib.git]
/
lib
/
sha1.h
diff --git
a/lib/sha1.h
b/lib/sha1.h
index
bb48855
..
4ffda7a
100644
(file)
--- a/
lib/sha1.h
+++ b/
lib/sha1.h
@@
-1,6
+1,7
@@
/* Declarations of functions and data types used for SHA1 sum
library functions.
/* Declarations of functions and data types used for SHA1 sum
library functions.
- Copyright (C) 2000, 2001, 2003, 2005 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2003, 2005, 2006, 2008
+ Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
@@
-20,20
+21,22
@@
# define SHA1_H 1
# include <stdio.h>
# define SHA1_H 1
# include <stdio.h>
-# include "md5.h"
+# include <stdint.h>
+
+#define SHA1_DIGEST_SIZE 20
/* Structure to save state of computation between the single steps. */
struct sha1_ctx
{
/* Structure to save state of computation between the single steps. */
struct sha1_ctx
{
-
md5_uint32
A;
-
md5_uint32
B;
-
md5_uint32
C;
-
md5_uint32
D;
-
md5_uint32
E;
-
-
md5_uint32
total[2];
-
md5_uint32
buflen;
-
char buffer[128] __attribute__ ((__aligned__ (__alignof__ (md5_uint32))))
;
+
uint32_t
A;
+
uint32_t
B;
+
uint32_t
C;
+
uint32_t
D;
+
uint32_t
E;
+
+
uint32_t
total[2];
+
uint32_t
buflen;
+
uint32_t buffer[32]
;
};
};
@@
-57,19
+60,13
@@
extern void sha1_process_bytes (const void *buffer, size_t len,
/* Process the remaining bytes in the buffer and put result from CTX
in first 20 bytes following RESBUF. The result is always in little
endian byte order, so that a byte-wise output yields to the wanted
/* Process the remaining bytes in the buffer and put result from CTX
in first 20 bytes following RESBUF. The result is always in little
endian byte order, so that a byte-wise output yields to the wanted
- ASCII representation of the message digest.
-
- IMPORTANT: On some systems it is required that RESBUF be correctly
- aligned for a 32 bits value. */
+ ASCII representation of the message digest. */
extern void *sha1_finish_ctx (struct sha1_ctx *ctx, void *resbuf);
/* Put result from CTX in first 20 bytes following RESBUF. The result is
always in little endian byte order, so that a byte-wise output yields
extern void *sha1_finish_ctx (struct sha1_ctx *ctx, void *resbuf);
/* Put result from CTX in first 20 bytes following RESBUF. The result is
always in little endian byte order, so that a byte-wise output yields
- to the wanted ASCII representation of the message digest.
-
- IMPORTANT: On some systems it is required that RESBUF is correctly
- aligned for a 32 bits value. */
+ to the wanted ASCII representation of the message digest. */
extern void *sha1_read_ctx (const struct sha1_ctx *ctx, void *resbuf);
extern void *sha1_read_ctx (const struct sha1_ctx *ctx, void *resbuf);