]> git.ozlabs.org Git - ppp.git/blob - pppd/sha1.h
pppd: Fix compilation on Linux when IPV6 is disabled (#360)
[ppp.git] / pppd / sha1.h
1 /* sha1.h */
2
3 #ifndef PPP_SHA1_H
4 #define PPP_SHA1_H
5
6 #include "pppdconf.h"
7
8 #ifndef USE_SHA
9 #include <openssl/sha.h>
10
11 #define SHA1_CTX SHA_CTX
12 #define SHA1_SIGNATURE_SIZE SHA_DIGEST_LENGTH
13
14 #else
15
16 #ifndef SHA1_SIGNATURE_SIZE
17 #ifdef SHA_DIGESTSIZE
18 #define SHA1_SIGNATURE_SIZE SHA_DIGESTSIZE
19 #else
20 #define SHA1_SIGNATURE_SIZE 20
21 #endif
22 #endif
23
24 typedef struct {
25     u_int32_t state[5];
26     u_int32_t count[2];
27     unsigned char buffer[64];
28 } SHA1_CTX;
29
30 extern void SHA1_Init(SHA1_CTX *);
31 extern void SHA1_Update(SHA1_CTX *, const unsigned char *, unsigned int);
32 extern void SHA1_Final(unsigned char[SHA1_SIGNATURE_SIZE], SHA1_CTX *);
33
34 #endif /* USE_SHA */
35 #endif /* PPP_SHA1_H */