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
fe470d4
..
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 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
@@
-14,26
+15,28
@@
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
- Inc., 5
9 Temple Place - Suite 330, Boston, MA 02111-1307
, USA. */
+ Inc., 5
1 Franklin Street, Fifth Floor, Boston, MA 02110-1301
, USA. */
#ifndef SHA1_H
# define SHA1_H 1
# include <stdio.h>
#ifndef SHA1_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
];
+
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);