1999-08-31 09:17:01 +08:00
|
|
|
/* $OpenLDAP$ */
|
1998-12-29 03:51:35 +08:00
|
|
|
/*
|
2000-05-13 10:25:54 +08:00
|
|
|
* Copyright 1998-2000 The OpenLDAP Foundation, Redwood City, California, USA
|
1998-12-29 03:51:35 +08:00
|
|
|
* All rights reserved.
|
|
|
|
*
|
|
|
|
* Redistribution and use in source and binary forms are permitted only
|
|
|
|
* as authorized by the OpenLDAP Public License. A copy of this
|
|
|
|
* license is available at http://www.OpenLDAP.org/license.html or
|
|
|
|
* in file LICENSE in the top-level directory of the distribution.
|
|
|
|
*/
|
|
|
|
|
1998-09-03 14:25:38 +08:00
|
|
|
/* This version is based on:
|
|
|
|
* $OpenBSD: sha1.h,v 1.8 1997/07/15 01:54:23 millert Exp $ */
|
|
|
|
|
1998-12-01 11:36:37 +08:00
|
|
|
#ifndef _LUTIL_SHA1_H_
|
|
|
|
#define _LUTIL_SHA1_H_
|
1998-10-25 09:41:42 +08:00
|
|
|
|
|
|
|
#include <ldap_cdefs.h>
|
1998-11-18 06:49:15 +08:00
|
|
|
#include <ac/bytes.h>
|
1998-10-25 09:41:42 +08:00
|
|
|
|
|
|
|
LDAP_BEGIN_DECL
|
|
|
|
|
1998-09-03 14:25:38 +08:00
|
|
|
/*
|
|
|
|
* SHA-1 in C
|
|
|
|
* By Steve Reid <steve@edmweb.com>
|
|
|
|
*/
|
1999-12-08 14:44:22 +08:00
|
|
|
#define LUTIL_SHA1_BYTES 20
|
1998-09-03 14:25:38 +08:00
|
|
|
|
1999-10-30 11:26:13 +08:00
|
|
|
/* This code assumes char are 8-bits and uint32 are 32-bits */
|
1999-05-31 13:39:10 +08:00
|
|
|
typedef ac_uint4 uint32;
|
1998-09-03 14:25:38 +08:00
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
uint32 state[5];
|
|
|
|
uint32 count[2];
|
|
|
|
unsigned char buffer[64];
|
1998-12-01 11:36:37 +08:00
|
|
|
} lutil_SHA1_CTX;
|
1998-09-03 14:25:38 +08:00
|
|
|
|
2000-06-19 03:48:07 +08:00
|
|
|
LDAP_LUTIL_F( void )
|
1999-05-19 09:12:33 +08:00
|
|
|
lutil_SHA1Transform
|
1998-10-25 09:41:42 +08:00
|
|
|
LDAP_P((uint32 state[5], const unsigned char buffer[64]));
|
|
|
|
|
2000-06-19 03:48:07 +08:00
|
|
|
LDAP_LUTIL_F( void )
|
1999-05-19 09:12:33 +08:00
|
|
|
lutil_SHA1Init
|
1998-12-01 11:36:37 +08:00
|
|
|
LDAP_P((lutil_SHA1_CTX *context));
|
1998-10-25 09:41:42 +08:00
|
|
|
|
2000-06-19 03:48:07 +08:00
|
|
|
LDAP_LUTIL_F( void )
|
1999-05-19 09:12:33 +08:00
|
|
|
lutil_SHA1Update
|
1999-04-02 00:38:11 +08:00
|
|
|
LDAP_P((lutil_SHA1_CTX *context, const unsigned char *data, uint32 len));
|
1998-10-25 09:41:42 +08:00
|
|
|
|
2000-06-19 03:48:07 +08:00
|
|
|
LDAP_LUTIL_F( void )
|
1999-05-19 09:12:33 +08:00
|
|
|
lutil_SHA1Final
|
1998-12-01 11:36:37 +08:00
|
|
|
LDAP_P((unsigned char digest[20], lutil_SHA1_CTX *context));
|
1998-10-25 09:41:42 +08:00
|
|
|
|
2000-06-19 03:48:07 +08:00
|
|
|
LDAP_LUTIL_F( char * )
|
1999-05-19 09:12:33 +08:00
|
|
|
lutil_SHA1End
|
1998-12-01 11:36:37 +08:00
|
|
|
LDAP_P((lutil_SHA1_CTX *, char *));
|
1998-10-25 09:41:42 +08:00
|
|
|
|
2000-06-19 03:48:07 +08:00
|
|
|
LDAP_LUTIL_F( char * )
|
1999-05-19 09:12:33 +08:00
|
|
|
lutil_SHA1File
|
1998-10-25 09:41:42 +08:00
|
|
|
LDAP_P((char *, char *));
|
|
|
|
|
2000-06-19 03:48:07 +08:00
|
|
|
LDAP_LUTIL_F( char * )
|
1999-05-19 09:12:33 +08:00
|
|
|
lutil_SHA1Data
|
1998-10-25 09:41:42 +08:00
|
|
|
LDAP_P((const unsigned char *, size_t, char *));
|
|
|
|
|
|
|
|
LDAP_END_DECL
|
|
|
|
|
1998-12-01 11:36:37 +08:00
|
|
|
#endif /* _LUTIL_SHA1_H_ */
|