mirror of
https://github.com/NixOS/nix.git
synced 2025-11-21 17:59:36 +01:00
* Optional switch "--with-openssl=<PATH>" to use OpenSSL's
implementations of MD5, SHA-1 and SHA-256. The main benefit is that we get assembler-optimised implementations of MD5 and SHA-1 (though not SHA-256 (at least on x86), unfortunately). OpenSSL's SHA-1 implementation on Intel is twice as fast as ours.
This commit is contained in:
parent
e8475bbd5b
commit
d6f586d0ea
7 changed files with 59 additions and 40 deletions
|
|
@ -11,18 +11,18 @@
|
|||
#define SHA_DIGESTLEN 5
|
||||
/* The structure for storing SHA info */
|
||||
|
||||
struct sha_ctx {
|
||||
struct SHA_CTX {
|
||||
uint32_t digest[SHA_DIGESTLEN]; /* Message digest */
|
||||
uint32_t count_l, count_h; /* 64-bit block count */
|
||||
uint8_t block[SHA_DATASIZE]; /* SHA data buffer */
|
||||
unsigned int index; /* index into buffer */
|
||||
};
|
||||
|
||||
void sha_init(struct sha_ctx *ctx);
|
||||
void sha_update(struct sha_ctx *ctx, const unsigned char *buffer, uint32_t len);
|
||||
void sha_final(struct sha_ctx *ctx);
|
||||
void sha_digest(struct sha_ctx *ctx, unsigned char *s);
|
||||
void sha_copy(struct sha_ctx *dest, struct sha_ctx *src);
|
||||
void SHA1_Init(struct SHA_CTX *ctx);
|
||||
void SHA1_Update(struct SHA_CTX *ctx, const unsigned char *buffer, uint32_t len);
|
||||
void SHA1_Final(unsigned char *s, struct SHA_CTX *ctx);
|
||||
void sha_digest(struct SHA_CTX *ctx, unsigned char *s);
|
||||
void sha_copy(struct SHA_CTX *dest, struct SHA_CTX *src);
|
||||
|
||||
|
||||
#endif /* !_SHA_H */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue