X-Git-Url: https://git.saurik.com/apple/security.git/blobdiff_plain/80e2389990082500d76eb566d4946be3e786c3ef..d8f41ccd20de16f8ebe2ccc84d47bf1cb2b26bbb:/Security/libsecurity_cryptkit/lib/ckSHA1_priv.h diff --git a/Security/libsecurity_cryptkit/lib/ckSHA1_priv.h b/Security/libsecurity_cryptkit/lib/ckSHA1_priv.h new file mode 100644 index 00000000..05cb9cb6 --- /dev/null +++ b/Security/libsecurity_cryptkit/lib/ckSHA1_priv.h @@ -0,0 +1,60 @@ +/* Copyright (c) 1998,2011,2014 Apple Inc. All Rights Reserved. + * + * NOTICE: USE OF THE MATERIALS ACCOMPANYING THIS NOTICE IS SUBJECT + * TO THE TERMS OF THE SIGNED "FAST ELLIPTIC ENCRYPTION (FEE) REFERENCE + * SOURCE CODE EVALUATION AGREEMENT" BETWEEN APPLE, INC. AND THE + * ORIGINAL LICENSEE THAT OBTAINED THESE MATERIALS FROM APPLE, + * INC. ANY USE OF THESE MATERIALS NOT PERMITTED BY SUCH AGREEMENT WILL + * EXPOSE YOU TO LIABILITY. + *************************************************************************** + * + * ckSHA1_priv.h - private low-level API for SHA-1 hash algorithm + * + * Revision History + * ---------------- + * 22 Aug 96 at NeXT + * Created. + */ + +/* Useful defines/typedefs */ + +#ifndef _CK_SHA1_PRIV_H_ +#define _CK_SHA1_PRIV_H_ + +#include "ckconfig.h" + +#if !CRYPTKIT_LIBMD_DIGEST + +#ifdef __cplusplus +extern "C" { +#endif + +typedef unsigned char BYTE; +typedef unsigned long LONG; + +/* The SHS block size and message digest sizes, in bytes */ + +#define SHS_BLOCKSIZE 64 +#define SHS_DIGESTSIZE 20 + +/* The structure for storing SHS info */ + +typedef struct { + LONG digest[ 5 ]; /* Message digest */ + LONG countLo, countHi; /* 64-bit bit count */ + LONG data[ 80 ]; /* SHS data buffer */ + } SHS_INFO; + +extern void shsInit(SHS_INFO *shsInfo); +extern void shsUpdate(SHS_INFO *shsInfo, + const BYTE *buffer, + int count); +extern void shsFinal(SHS_INFO *shsInfo); + +#ifdef __cplusplus +} +#endif + +#endif /* !CRYPTKIT_LIBMD_DIGEST */ + +#endif /* _CK_SHA1_PRIV_H_ */