summaryrefslogtreecommitdiff
path: root/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/crypto_pwhash_scryptsalsa208sha256.h
diff options
context:
space:
mode:
authorDubslow <bunslow@gmail.com>2014-09-09 12:23:09 -0500
committerDubslow <bunslow@gmail.com>2014-09-09 12:23:09 -0500
commit7eb7e68805aa795dcb6dbd1a35113ce703e24267 (patch)
tree4a8753004403e48d42a7924ad1933a7dfe2e9003 /toxencryptsave/crypto_pwhash_scryptsalsa208sha256/crypto_pwhash_scryptsalsa208sha256.h
parent46e03c4c2beaf01ec5a6bc090b80fae7bf1da2a0 (diff)
compiling against nacl seems to break VANILLA_NACL...
Diffstat (limited to 'toxencryptsave/crypto_pwhash_scryptsalsa208sha256/crypto_pwhash_scryptsalsa208sha256.h')
-rw-r--r--toxencryptsave/crypto_pwhash_scryptsalsa208sha256/crypto_pwhash_scryptsalsa208sha256.h89
1 files changed, 89 insertions, 0 deletions
diff --git a/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/crypto_pwhash_scryptsalsa208sha256.h b/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/crypto_pwhash_scryptsalsa208sha256.h
new file mode 100644
index 00000000..e10a81d8
--- /dev/null
+++ b/toxencryptsave/crypto_pwhash_scryptsalsa208sha256/crypto_pwhash_scryptsalsa208sha256.h
@@ -0,0 +1,89 @@
1#ifdef VANILLA_NACL /* toxcore only uses this when libsodium is unavailable */
2
3#ifndef crypto_pwhash_scryptsalsa208sha256_H
4#define crypto_pwhash_scryptsalsa208sha256_H
5
6#include <stddef.h>
7#include <stdint.h>
8
9#include "export.h"
10
11#ifdef __cplusplus
12# if __GNUC__
13# pragma GCC diagnostic ignored "-Wlong-long"
14# endif
15extern "C" {
16#endif
17
18#define crypto_pwhash_scryptsalsa208sha256_SALTBYTES 32U
19SODIUM_EXPORT
20size_t crypto_pwhash_scryptsalsa208sha256_saltbytes(void);
21
22#define crypto_pwhash_scryptsalsa208sha256_STRBYTES 102U
23SODIUM_EXPORT
24size_t crypto_pwhash_scryptsalsa208sha256_strbytes(void);
25
26#define crypto_pwhash_scryptsalsa208sha256_STRPREFIX "$7$"
27SODIUM_EXPORT
28const char *crypto_pwhash_scryptsalsa208sha256_strprefix(void);
29
30#define crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_INTERACTIVE 524288ULL
31SODIUM_EXPORT
32size_t crypto_pwhash_scryptsalsa208sha256_opslimit_interactive(void);
33
34#define crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_INTERACTIVE 16777216ULL
35SODIUM_EXPORT
36size_t crypto_pwhash_scryptsalsa208sha256_memlimit_interactive(void);
37
38#define crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_SENSITIVE 33554432ULL
39SODIUM_EXPORT
40size_t crypto_pwhash_scryptsalsa208sha256_opslimit_sensitive(void);
41
42#define crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_SENSITIVE 1073741824ULL
43SODIUM_EXPORT
44size_t crypto_pwhash_scryptsalsa208sha256_memlimit_sensitive(void);
45
46SODIUM_EXPORT
47int crypto_pwhash_scryptsalsa208sha256(unsigned char * const out,
48 unsigned long long outlen,
49 const char * const passwd,
50 unsigned long long passwdlen,
51 const unsigned char * const salt,
52 unsigned long long opslimit,
53 size_t memlimit);
54
55SODIUM_EXPORT
56int crypto_pwhash_scryptsalsa208sha256_str(char out[crypto_pwhash_scryptsalsa208sha256_STRBYTES],
57 const char * const passwd,
58 unsigned long long passwdlen,
59 unsigned long long opslimit,
60 size_t memlimit);
61
62SODIUM_EXPORT
63int crypto_pwhash_scryptsalsa208sha256_str_verify(const char str[crypto_pwhash_scryptsalsa208sha256_STRBYTES],
64 const char * const passwd,
65 unsigned long long passwdlen);
66
67SODIUM_EXPORT
68int crypto_pwhash_scryptsalsa208sha256_ll(const uint8_t * passwd, size_t passwdlen,
69 const uint8_t * salt, size_t saltlen,
70 uint64_t N, uint32_t r, uint32_t p,
71 uint8_t * buf, size_t buflen);
72
73#ifdef __cplusplus
74}
75#endif
76
77/* Backward compatibility with version 0.5.0 */
78
79#define crypto_pwhash_scryptxsalsa208sha256_SALTBYTES crypto_pwhash_scryptsalsa208sha256_SALTBYTES
80#define crypto_pwhash_scryptxsalsa208sha256_saltbytes crypto_pwhash_scryptsalsa208sha256_saltbytes
81#define crypto_pwhash_scryptxsalsa208sha256_STRBYTES crypto_pwhash_scryptsalsa208sha256_STRBYTES
82#define crypto_pwhash_scryptxsalsa208sha256_strbytes crypto_pwhash_scryptsalsa208sha256_strbytes
83#define crypto_pwhash_scryptxsalsa208sha256 crypto_pwhash_scryptsalsa208sha256
84#define crypto_pwhash_scryptxsalsa208sha256_str crypto_pwhash_scryptsalsa208sha256_str
85#define crypto_pwhash_scryptxsalsa208sha256_str_verify crypto_pwhash_scryptsalsa208sha256_str_verify
86
87#endif
88
89#endif