Commit Graph

3623 Commits

Author SHA1 Message Date
Frank Denis
1ae8e5e3b0 Export UTF8ToString 2019-05-04 19:21:21 +02:00
Frank Denis
6522f1047a Regen, update config.{guess, sub} 2019-05-03 11:18:55 +02:00
Frank Denis
a37a90ccd2 Automatically update config.{sub,guess} in autogen.sh 2019-05-03 11:16:35 +02:00
Ilya Maykov
6bece9c8c4 Relax most __attribute__ ((nonnull)) to allow 0-length inputs to be NULL.
Justifications:
- crypto_(auth|hash|generichash|onetimeauth|shorthash)*:
  it's legal to hash or HMAC a 0-length message
- crypto_box*: it's legal to encrypt a 0-length message
- crypto_sign*: it's legal to sign a 0-length message
- utils:
  comparing two 0-length byte arrays is legal
  memzero on a 0-length byte array is a no-op
  converting an empty hex string to binary results in an empty binary string
  converting an empty binary string to hex results in an empty hex string
  converting an empty b64 string to binary results in an empty binary string
  converting an empty binary string to b64 results in an empty b64 string
  sodium_add / sodium_sub on zero-length arrays is a no-op

For the functions declared in utils.h, I moved the logic into private functions that
have the __attribute__ ((nonnull)) check, but they are only called when the
corresponding length argument is non-0. I didn't do this for the hash/box/sign
functions since it would have been a lot more work and quite a large refactor.

Only memset() may have issues with a zero length.

Fix tests, use guard page instead of NULL because of Wasm
2019-04-26 15:36:58 +02:00
Frank Denis
9b73106c8a Regen builds/Makefile.in to include MSVC 2019 files 2019-04-23 10:18:18 +02:00
Frank Denis
be8cfedea8 Make the stream and stream2 test object code 1000x smaller 2019-04-23 10:17:38 +02:00
Frank Denis
0f155d8736 Be positive 2019-04-23 10:17:33 +02:00
Frank Denis
fb29bda055 Just use some test vectors around the counter overflow 2019-04-23 10:17:25 +02:00
Frank Denis
d57cde5448 Remove useless tests, add more meaningful ones. 2019-04-23 10:17:10 +02:00
Frank Denis
cb5f937ca7 Additional salsa20 tests 2019-04-23 10:16:54 +02:00
Frank Denis
2e2de69de3 constcheck: ignore deprecated declarations 2019-04-22 19:53:26 +02:00
Frank Denis
96094c6feb Sort .gitignore 2019-04-22 19:53:26 +02:00
Frank Denis
a67b4592e4 Indent regen-msvc.py 2019-04-22 19:53:26 +02:00
Frank Denis
cab13fcf4c Recompress logo 2019-04-22 19:53:26 +02:00
Frank Denis
baa5b2ad32 Update the dotnet-core release script 2019-04-22 14:37:59 +02:00
Frank Denis
c09b00cf20 sync 2019-04-03 16:13:43 +02:00
Frank Denis
7c2e00285c Downgrade the TL solution for AppVeyor again 2019-04-03 16:05:09 +02:00
Frank Denis
2af6be418f Appveyor doesn't have Visual Studio 2019 yet 2019-04-03 15:39:57 +02:00
Frank Denis
5fb4cbd8d7 Build Visual Studio 2019 binaries 2019-04-03 15:00:33 +02:00
Frank Denis
e66a483301 Add Visual Studio 2019 builds 2019-04-03 15:00:28 +02:00
Frank Denis
a54eab7ad0 Update the top-level solution to Visual Studio 2019 2019-04-03 15:00:20 +02:00
Frank Denis
9c2f3fc391 Travis: parallelize builds, not checks 2019-04-02 09:36:59 +02:00
Frank Denis
6ea55eea2c Travis: run PPC builds 2019-04-02 09:36:52 +02:00
Frank Denis
eebf2255ca Regen 2019-03-30 11:25:40 +01:00
Frank Denis
dfa8222d27 POSIX threads can be available while mutexes are not implemented
This is the odd case of WASI right now
2019-03-30 11:23:20 +01:00
Frank Denis
daa6cb3e78 raise() may not be available 2019-03-26 14:38:55 +01:00
Frank Denis
b347bcfa89 Remove unnecessary brackets 2019-03-26 13:45:28 +01:00
Frank Denis
01ed4737af Trust another safe arc4random() implementation 2019-03-26 13:44:28 +01:00
Frank Denis
8f8d060e11 Regen autoconf 2019-03-16 00:21:53 +01:00
Frank Denis
697a371a42 Don't enable the stack protector on unknown operating systems 2019-03-16 00:21:31 +01:00
Frank Denis
be509424e9 Typo 2019-02-09 20:49:52 +01:00
Frank Denis
43d131ccd1 Revert "Coverity Scan is having hosting issues"
This reverts commit 7d418f8203.
2019-01-30 18:46:49 +01:00
Frank Denis
7d418f8203 Coverity Scan is having hosting issues
https://community.synopsys.com/s/article/Coverity-Scan-Update
2019-01-15 00:31:26 +01:00
Luca Boccassi
ecdcf55173 Add -pthread to pkgconfig's Libs.private if enabled
Allows static builds to correctly inherit the pthread dependency when
used with pkg-config --static --libs libsodium

AC_SUBST doesn't require explicit values

Regen autoconf

Fixes #800
2019-01-15 00:29:20 +01:00
Frank Denis
59f55cd420 Force clear the high bit in _noclamp variants
_noclamp variants should always be used with a scalar < L, but
if this is not the case, at least explicitly ignore the high bit.
2019-01-14 04:07:41 +01:00
Frank Denis
c2a98a170f Try -ftree-vectorize and -ftree-slp-vectorize for optimized builds 2019-01-07 12:26:30 +01:00
Frank Denis
bbf14716f6 Merge branch 'master' into stable
* master:
  undef _box_curve25519xchacha20poly1305_messagebytes_max in !sumo builds
  Nits
2019-01-06 21:31:38 +01:00
Frank Denis
b7bf7d9c83 undef _box_curve25519xchacha20poly1305_messagebytes_max in !sumo builds 2019-01-06 20:33:22 +01:00
Frank Denis
b732443c44 undef _box_curve25519xchacha20poly1305_messagebytes_max in !sumo builds 2019-01-06 20:32:54 +01:00
Frank Denis
c943d18f38 Nits 2019-01-06 18:43:57 +01:00
Frank Denis
31ccbdec96 Nits 2019-01-06 18:43:38 +01:00
Frank Denis
b5b2aaffcc Merge remote-tracking branch 'origin/master' into stable-1.0.17
* origin/master:
  Bump DLL version
  Offline documentation is only available in PDF format now
2019-01-06 17:34:04 +01:00
Frank Denis
4adf25c39f Bump DLL version 2019-01-06 17:25:35 +01:00
Frank Denis
0b3e2e5742 Offline documentation is only available in PDF format now 2019-01-06 15:55:36 +01:00
Frank Denis
10ac185647 Merge branch 'master' into stable-1.0.17
* master: (190 commits)
  fileinput is not used any more
  2019
  local-dynamic is enough
  Set tls-model only if TLS is supported
  Enable -ftls-model=global-dynamic if available
  Set nonce in randombytes_salsa20_random_stir() instead of random_init()
  Bump .NET version examples
  Add another test
  Avoid memory leak and overflow in addition test
  Avoid partial array initialization
  Bump SODIUM_LIBRARY_VERSION_MINOR
  More tests
  More tests
  Improve clarity
  ALLOW_MEMORY_GROWTH is now enabled
  AVX512 detection has been improved
  Add a conditional to enable retpoline support
  must -> should
  Add comments, avoid implicit array initialization
  Add comments
  ...
2019-01-06 15:43:38 +01:00
Frank Denis
a75c137020 fileinput is not used any more 2019-01-06 15:38:24 +01:00
Frank Denis
0cf74a3104 2019 2019-01-06 14:42:47 +01:00
Frank Denis
462e9a648b local-dynamic is enough 2019-01-06 05:04:34 +01:00
Frank Denis
79d6a211b2 Set tls-model only if TLS is supported 2019-01-06 04:52:41 +01:00
Frank Denis
0157a378ca Enable -ftls-model=global-dynamic if available 2019-01-06 04:45:50 +01:00