Commit Graph
1088 Commits
Author SHA1 Message Date
Frank Denis 34aeee6ba5 Replace two more memcpy() with a local loop 2016-04-12 07:30:54 +02:00
Frank Denis d7294320c4 sha{512,256}: use a local loop instead of if + memcpy()
Compilers can't figure out the max inlen value, so help them with an
explicit AND.

Unify the name of the input pointer by the way.
2016-04-12 02:14:45 +02:00
Frank Denis bbf1e17983 Avoid bit shifting with signed values 2016-04-12 00:51:41 +02:00
Frank Denis 50e11be472 memcpy(): pointers must be valid even if the size is 0 2016-04-12 00:41:37 +02:00
Frank Denis 0a590b07b2 Decryption functions can now accept a NULL pointer for the output
This checks the MAC without writing the decrypted message.
2016-04-11 18:33:50 +02:00
Frank Denis 80310ef56c Set randombytes_implementation to NULL by default, to cope with Visual Studio 2008 2016-04-08 17:50:18 +02:00
Frank Denis a53a9c98d2 Back to dev mode 2016-04-08 08:25:42 +02:00
Frank Denis 22ab28be0a Require Visual Studio 2010+ for AESNI 2016-04-07 18:57:07 +02:00
Frank Denis 292969b3b5 Argon2: initialize ctx{.pwd,.pwdlen} in the verify function
Keep initializing the length for clarity;
Compilers know how to optimize this out.
2016-04-07 08:19:50 +02:00
Frank Denis 1818267d64 Return -1 if crypto_generichash_final() is called twice 2016-04-06 01:00:49 +02:00
Frank Denis 97b09aba0b Move curve25519_ref10.h to include/sodium/private/ 2016-04-04 18:03:08 +02:00
Frank Denis 8df895b3ec include/sodium/private.h -> include/sodium/private/common.h 2016-04-04 17:16:32 +02:00
Frank Denis 3927cad829 Relocate sodium/common.h 2016-04-04 16:28:40 +02:00
Frank Denis 501ec7a679 Adjust another relative path for sodium/common.h 2016-04-04 08:44:59 +02:00
David Renshaw c3b68c12d6 Fix up relative includes of sodium/common.h 2016-04-04 03:18:24 +00:00
Frank Denis 1550026a9a Explain why blake2b_param_set_digest_length() is not needed 2016-04-03 13:52:55 +02:00
Frank Denis 0716b7701e Initialize constant 2016-04-02 12:17:47 +02:00
Frank Denis 1853248f0a Consistency 2016-04-02 12:08:41 +02:00
Frank Denis e50f1e95ab Reuse STORE64_LE whenever possible 2016-04-02 11:46:53 +02:00
Frank Denis 6ee06a9242 Include missing structures definitions 2016-04-02 09:01:03 +02:00
Frank Denis 698efbdc23 Consistency 2016-04-02 01:20:38 +02:00
Frank Denis 531c51e7a3 Stronger types for >= 16 bits shifts 2016-04-02 01:06:04 +02:00
Frank Denis ca71815db3 ((unsigned long long) 1) -> 1ULL 2016-04-02 00:57:33 +02:00
Frank Denis 42535e0b40 (1 << x) -> (1UL << x) for compilers where sizeof(int) == 2 2016-04-02 00:54:17 +02:00
Frank Denis 95114d8592 l -> L 2016-04-02 00:44:41 +02:00
Frank Denis 5cdd950c5c Reformat 2016-04-01 20:51:05 +02:00
Frank Denis d7f5877df5 Add crypto_pwhash_argon2i_ALG_ARGON2I13 2016-04-01 20:48:34 +02:00
Frank Denis 384e08b7f4 Require an algorithm identifier in crypto_pwhash() 2016-04-01 20:29:28 +02:00
Frank Denis 5d8c878ffb Remove mlen_p from the AEAD detached interface 2016-03-30 21:20:34 +02:00
Frank Denis de22f38da2 Mark the _out_of_bounds() function as noreturn 2016-03-27 00:21:04 +01:00
Frank Denis 25faa47b46 Include blake2b_long prototype 2016-03-27 00:11:32 +01:00
Frank Denis 20bf121fcd 1.0.9 is almost ready to be tagged 2016-03-25 16:30:36 +01:00
Frank Denis 2aa703fcc7 Restore the previous sodium_malloc(0) behavior
If aligned memory cannot be obtained, allocate 1 byte
to always return a non-NULL pointer.
2016-03-25 16:26:37 +01:00
Frank Denis 811bdb2c5f Explicit cast; length is already checked by the caller 2016-03-25 16:00:52 +01:00
Frank Denis fb865c9a5c More tests / lcov exclusions 2016-03-25 15:36:57 +01:00
Frank Denis 58e4cdf809 Make Argon2 encode/decode return codes consistent with other functions 2016-03-25 14:54:14 +01:00
Frank Denis e9b7a71a38 Remove unused code 2016-03-25 12:29:25 +01:00
Frank Denis a25569320c The version in Argon2i strings is separated from other parameters 2016-03-25 12:27:04 +01:00
Frank Denis 321e9eab2e Remove useless check 2016-03-25 10:38:50 +01:00
Frank Denis da448c38e4 Nits 2016-03-25 09:55:37 +01:00
Frank Denis eb13ec0cff Make sodium_malloc(0) well-defined. It always returns NULL. 2016-03-25 09:44:41 +01:00
Frank Denis 02e4b3b842 Check memory base instead of the aligned pointer
No behavior change, but it is less confusing to static analyzers
2016-03-25 09:42:32 +01:00
Frank Denis 346f8c131e More tests 2016-03-24 22:16:52 +01:00
Frank Denis 7a08f643bf Remove unused declaration 2016-03-24 21:06:07 +01:00
Frank Denis a3a2b74bd8 Use existing functions for unaligned access in hash_sha* 2016-03-24 15:02:34 +01:00
Frank Denis 3295752821 Of course, GNU ld doesn't know about .private_extern 2016-03-22 21:26:39 +01:00
Frank Denis bafc9c70e1 Only use .private_extern if this is supported 2016-03-22 20:42:07 +01:00
Frank Denis 26e4cf479a Reduce symbols visibility in curve25519_sandy2x 2016-03-22 19:55:07 +01:00
Frank Denis 3fb2ee07cb Add crypto_pwhash_primitive() 2016-03-21 20:59:43 +01:00
Frank Denis 1820a4239d Add missing SODIUM_EXPORT statements 2016-03-21 19:29:33 +01:00