X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=include%2Flutil_sha1.h;h=37b209fec5afd2f0badad8a6424d332eb0d14bcb;hb=09abc9f8ae2485adb67dbd91be4d02a4b4bb454c;hp=7e1da078ac3887c6e3bc0b208073fb1e482c4eac;hpb=cac3ea1e92cd70b25aa03986ab5825d27e77966a;p=openldap diff --git a/include/lutil_sha1.h b/include/lutil_sha1.h index 7e1da078ac..37b209fec5 100644 --- a/include/lutil_sha1.h +++ b/include/lutil_sha1.h @@ -1,28 +1,77 @@ +/* $OpenLDAP$ */ +/* This work is part of OpenLDAP Software . + * + * Copyright 1998-2006 The OpenLDAP Foundation. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted only as authorized by the OpenLDAP + * Public License. + * + * A copy of this license is available in file LICENSE in the + * top-level directory of the distribution or, alternatively, at + * . + */ + /* This version is based on: * $OpenBSD: sha1.h,v 1.8 1997/07/15 01:54:23 millert Exp $ */ +#ifndef _LUTIL_SHA1_H_ +#define _LUTIL_SHA1_H_ + +#include +#include + +#ifdef AC_INT4_TYPE + +LDAP_BEGIN_DECL + + /* * SHA-1 in C * By Steve Reid - * 100% Public Domain */ +#define LUTIL_SHA1_BYTES 20 -/* XXX I wonder if this will work on 64bit architectures... */ -#ifndef LDAP_UINT32 -#define LDAP_UINT32 -typedef unsigned long uint32; -#endif +/* This code assumes char are 8-bits and uint32 are 32-bits */ +typedef ac_uint4 uint32; typedef struct { uint32 state[5]; - uint32 count[2]; + uint32 count[2]; unsigned char buffer[64]; -} SHA1_CTX; - -void ldap_SHA1Transform __P((uint32 state[5], const unsigned char buffer[64])); -void ldap_SHA1Init __P((SHA1_CTX *context)); -void ldap_SHA1Update __P((SHA1_CTX *context, const unsigned char *data, u_int len)); -void ldap_SHA1Final __P((unsigned char digest[20], SHA1_CTX *context)); -char *ldap_SHA1End __P((SHA1_CTX *, char *)); -char *ldap_SHA1File __P((char *, char *)); -char *ldap_SHA1Data __P((const unsigned char *, size_t, char *)); +} lutil_SHA1_CTX; + +LDAP_LUTIL_F( void ) +lutil_SHA1Transform + LDAP_P((uint32 state[5], const unsigned char buffer[64])); + +LDAP_LUTIL_F( void ) +lutil_SHA1Init + LDAP_P((lutil_SHA1_CTX *context)); + +LDAP_LUTIL_F( void ) +lutil_SHA1Update + LDAP_P((lutil_SHA1_CTX *context, const unsigned char *data, uint32 len)); + +LDAP_LUTIL_F( void ) +lutil_SHA1Final + LDAP_P((unsigned char digest[20], lutil_SHA1_CTX *context)); + +LDAP_LUTIL_F( char * ) +lutil_SHA1End + LDAP_P((lutil_SHA1_CTX *, char *)); + +LDAP_LUTIL_F( char * ) +lutil_SHA1File + LDAP_P((char *, char *)); + +LDAP_LUTIL_F( char * ) +lutil_SHA1Data + LDAP_P((const unsigned char *, size_t, char *)); + +LDAP_END_DECL + +#endif /* AC_INT4_TYPE */ + +#endif /* _LUTIL_SHA1_H_ */