rbnacl-libsodium 1.0.8 → 1.0.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (204) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +23 -0
  3. data/CHANGES.md +5 -0
  4. data/Gemfile +5 -2
  5. data/Rakefile +5 -0
  6. data/ext/rbnacl/extconf.rb +2 -1
  7. data/lib/rbnacl/libsodium.rb +8 -2
  8. data/lib/rbnacl/libsodium/version.rb +1 -1
  9. data/vendor/libsodium/AUTHORS +14 -0
  10. data/vendor/libsodium/ChangeLog +26 -0
  11. data/vendor/libsodium/LICENSE +1 -1
  12. data/vendor/libsodium/Makefile.am +1 -0
  13. data/vendor/libsodium/Makefile.in +9 -0
  14. data/vendor/libsodium/README.markdown +7 -0
  15. data/vendor/libsodium/aclocal.m4 +1 -0
  16. data/vendor/libsodium/appveyor.yml +25 -0
  17. data/vendor/libsodium/autom4te.cache/output.1 +640 -126
  18. data/vendor/libsodium/autom4te.cache/output.6 +19049 -0
  19. data/vendor/libsodium/autom4te.cache/requests +1151 -914
  20. data/vendor/libsodium/autom4te.cache/traces.1 +472 -426
  21. data/vendor/libsodium/autom4te.cache/traces.6 +3193 -0
  22. data/vendor/libsodium/builds/msvc/version.h +2 -2
  23. data/vendor/libsodium/builds/msvc/vs2010/libsodium.sln +50 -79
  24. data/vendor/libsodium/builds/msvc/vs2010/libsodium/libsodium.vcxproj +20 -8
  25. data/vendor/libsodium/builds/msvc/vs2010/libsodium/libsodium.vcxproj.filters +208 -166
  26. data/vendor/libsodium/builds/msvc/vs2012/libsodium.sln +50 -79
  27. data/vendor/libsodium/builds/msvc/vs2012/libsodium/libsodium.vcxproj +20 -8
  28. data/vendor/libsodium/builds/msvc/vs2012/libsodium/libsodium.vcxproj.filters +206 -164
  29. data/vendor/libsodium/builds/msvc/vs2013/libsodium.sln +52 -81
  30. data/vendor/libsodium/builds/msvc/vs2013/libsodium/libsodium.vcxproj +20 -8
  31. data/vendor/libsodium/builds/msvc/vs2013/libsodium/libsodium.vcxproj.filters +206 -164
  32. data/vendor/libsodium/builds/msvc/vs2015/libsodium.sln +52 -81
  33. data/vendor/libsodium/builds/msvc/vs2015/libsodium/libsodium.vcxproj +20 -8
  34. data/vendor/libsodium/builds/msvc/vs2015/libsodium/libsodium.vcxproj.filters +206 -164
  35. data/vendor/libsodium/configure +639 -125
  36. data/vendor/libsodium/configure.ac +94 -16
  37. data/vendor/libsodium/dist-build/Makefile.in +9 -0
  38. data/vendor/libsodium/dist-build/emscripten-symbols.def +370 -0
  39. data/vendor/libsodium/dist-build/emscripten.sh +9 -3
  40. data/vendor/libsodium/dist-build/generate-emscripten-symbols.sh +43 -0
  41. data/vendor/libsodium/libsodium-uninstalled.pc.in +1 -1
  42. data/vendor/libsodium/libsodium.pc.in +1 -1
  43. data/vendor/libsodium/libsodium.vcxproj +70 -66
  44. data/vendor/libsodium/libsodium.vcxproj.filters +204 -192
  45. data/vendor/libsodium/m4/ax_valgrind_check.m4 +190 -0
  46. data/vendor/libsodium/msvc-scripts/Makefile.in +9 -0
  47. data/vendor/libsodium/msvc-scripts/process.bat +2 -2
  48. data/vendor/libsodium/src/Makefile.in +9 -0
  49. data/vendor/libsodium/src/libsodium/Makefile.am +31 -6
  50. data/vendor/libsodium/src/libsodium/Makefile.in +238 -42
  51. data/vendor/libsodium/src/libsodium/crypto_aead/aes256gcm/aesni/aead_aes256gcm_aesni.c +234 -38
  52. data/vendor/libsodium/src/libsodium/crypto_aead/chacha20poly1305/sodium/aead_chacha20poly1305.c +208 -118
  53. data/vendor/libsodium/src/libsodium/crypto_box/crypto_box_seal.c +2 -2
  54. data/vendor/libsodium/src/libsodium/crypto_box/curve25519xsalsa20poly1305/ref/before_curve25519xsalsa20poly1305.c +1 -4
  55. data/vendor/libsodium/src/libsodium/crypto_core/curve25519/ref10/curve25519_ref10.c +1799 -1790
  56. data/vendor/libsodium/src/libsodium/crypto_core/curve25519/ref10/curve25519_ref10.h +39 -39
  57. data/vendor/libsodium/src/libsodium/crypto_core/hchacha20/core_hchacha20.c +86 -0
  58. data/vendor/libsodium/src/libsodium/crypto_core/hchacha20/core_hchacha20.h +28 -0
  59. data/vendor/libsodium/src/libsodium/crypto_core/hsalsa20/ref2/core_hsalsa20.c +38 -46
  60. data/vendor/libsodium/src/libsodium/crypto_core/salsa20/ref/core_salsa20.c +47 -55
  61. data/vendor/libsodium/src/libsodium/crypto_core/salsa2012/ref/core_salsa2012.c +47 -55
  62. data/vendor/libsodium/src/libsodium/crypto_core/salsa208/ref/core_salsa208.c +47 -55
  63. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/generichash_blake2_api.c +7 -0
  64. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2-impl.h +0 -89
  65. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2.h +50 -141
  66. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-compress-avx2.c +45 -0
  67. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-compress-avx2.h +123 -0
  68. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-compress-ref.c +3 -2
  69. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-compress-sse41.c +2 -2
  70. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/{blake2b-round.h → blake2b-compress-sse41.h} +2 -28
  71. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-compress-ssse3.c +2 -4
  72. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-compress-ssse3.h +97 -0
  73. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-load-avx2.h +339 -0
  74. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-load-sse2.h +0 -2
  75. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-load-sse41.h +0 -2
  76. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-ref.c +29 -18
  77. data/vendor/libsodium/src/libsodium/crypto_hash/sha256/cp/hash_sha256.c +4 -43
  78. data/vendor/libsodium/src/libsodium/crypto_hash/sha512/cp/hash_sha512.c +3 -32
  79. data/vendor/libsodium/src/libsodium/crypto_onetimeauth/poly1305/donna/poly1305_donna.h +1 -20
  80. data/vendor/libsodium/src/libsodium/crypto_onetimeauth/poly1305/donna/poly1305_donna32.h +22 -41
  81. data/vendor/libsodium/src/libsodium/crypto_onetimeauth/poly1305/donna/poly1305_donna64.h +12 -39
  82. data/vendor/libsodium/src/libsodium/crypto_onetimeauth/poly1305/sse2/poly1305_sse2.c +2 -4
  83. data/vendor/libsodium/src/libsodium/crypto_onetimeauth/poly1305/sse2/poly1305_sse2.h +1 -20
  84. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2-core.c +570 -0
  85. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2-core.h +198 -0
  86. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2-encoding.c +444 -0
  87. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2-encoding.h +32 -0
  88. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2-fill-block-ref.c +229 -0
  89. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2-fill-block-ssse3.c +222 -0
  90. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2-impl.h +40 -0
  91. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2.c +238 -0
  92. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2.h +251 -0
  93. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/blake2b-long.c +80 -0
  94. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/blake2b-long.h +8 -0
  95. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/blamka-round-ref.h +38 -0
  96. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/blamka-round-ssse3.h +117 -0
  97. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/pwhash_argon2i.c +164 -0
  98. data/vendor/libsodium/src/libsodium/crypto_pwhash/crypto_pwhash.c +106 -0
  99. data/vendor/libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/crypto_scrypt-common.c +1 -1
  100. data/vendor/libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/crypto_scrypt.h +4 -4
  101. data/vendor/libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/nosse/pwhash_scryptsalsa208sha256_nosse.c +186 -186
  102. data/vendor/libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/pbkdf2-sha256.c +2 -2
  103. data/vendor/libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/pwhash_scryptsalsa208sha256.c +3 -2
  104. data/vendor/libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/scrypt_platform.c +33 -33
  105. data/vendor/libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/sse/pwhash_scryptsalsa208sha256_sse.c +253 -254
  106. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/donna_c64/curve25519_donna_c64.c +16 -17
  107. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/donna_c64/curve25519_donna_c64.h +1 -0
  108. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/ref10/x25519_ref10.c +11 -11
  109. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/ref10/x25519_ref10.h +1 -0
  110. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/consts_namespace.h +1 -1
  111. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/fe.h +3 -2
  112. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/fe51.h +5 -3
  113. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/fe51_invert.c +41 -41
  114. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/fe51_mul.S +10 -2
  115. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/fe51_namespace.h +1 -1
  116. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/fe51_nsquare.S +4 -0
  117. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/fe51_pack.S +4 -0
  118. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/fe_frombytes_sandy2x.c +31 -32
  119. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/ladder.S +4 -0
  120. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/ladder.h +1 -1
  121. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/ladder_base.S +4 -0
  122. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/ladder_base.h +1 -1
  123. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/ladder_base_namespace.h +1 -1
  124. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/ladder_namespace.h +1 -1
  125. data/vendor/libsodium/src/libsodium/crypto_secretbox/crypto_secretbox_easy.c +2 -6
  126. data/vendor/libsodium/src/libsodium/crypto_shorthash/siphash24/ref/shorthash_siphash24.c +8 -28
  127. data/vendor/libsodium/src/libsodium/crypto_sign/ed25519/ref10/open.c +75 -0
  128. data/vendor/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/afternm_aes128ctr.c +6 -6
  129. data/vendor/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/common.h +1 -18
  130. data/vendor/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/int128_aes128ctr.c +20 -20
  131. data/vendor/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/types.h +4 -4
  132. data/vendor/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/xor_afternm_aes128ctr.c +6 -6
  133. data/vendor/libsodium/src/libsodium/crypto_stream/chacha20/ref/stream_chacha20_ref.c +56 -77
  134. data/vendor/libsodium/src/libsodium/crypto_stream/chacha20/ref/stream_chacha20_ref.h +1 -0
  135. data/vendor/libsodium/src/libsodium/crypto_stream/chacha20/vec/stream_chacha20_vec.h +1 -0
  136. data/vendor/libsodium/src/libsodium/crypto_stream/salsa20/ref/stream_salsa20_ref.c +2 -8
  137. data/vendor/libsodium/src/libsodium/crypto_stream/salsa20/ref/xor_salsa20_ref.c +2 -8
  138. data/vendor/libsodium/src/libsodium/crypto_stream/salsa2012/ref/stream_salsa2012.c +2 -8
  139. data/vendor/libsodium/src/libsodium/crypto_stream/salsa2012/ref/xor_salsa2012.c +2 -8
  140. data/vendor/libsodium/src/libsodium/crypto_stream/salsa208/ref/stream_salsa208.c +2 -8
  141. data/vendor/libsodium/src/libsodium/crypto_stream/salsa208/ref/xor_salsa208.c +2 -8
  142. data/vendor/libsodium/src/libsodium/crypto_stream/xsalsa20/ref/stream_xsalsa20.c +1 -5
  143. data/vendor/libsodium/src/libsodium/crypto_stream/xsalsa20/ref/xor_xsalsa20.c +1 -5
  144. data/vendor/libsodium/src/libsodium/include/Makefile.am +3 -0
  145. data/vendor/libsodium/src/libsodium/include/Makefile.in +19 -8
  146. data/vendor/libsodium/src/libsodium/include/sodium.h +3 -0
  147. data/vendor/libsodium/src/libsodium/include/sodium/crypto_aead_aes256gcm.h +50 -0
  148. data/vendor/libsodium/src/libsodium/include/sodium/crypto_aead_chacha20poly1305.h +94 -22
  149. data/vendor/libsodium/src/libsodium/include/sodium/crypto_box_curve25519xsalsa20poly1305.h +6 -6
  150. data/vendor/libsodium/src/libsodium/include/sodium/crypto_core_hchacha20.h +35 -0
  151. data/vendor/libsodium/src/libsodium/include/sodium/crypto_generichash_blake2b.h +3 -0
  152. data/vendor/libsodium/src/libsodium/include/sodium/crypto_pwhash.h +89 -0
  153. data/vendor/libsodium/src/libsodium/include/sodium/crypto_pwhash_argon2i.h +86 -0
  154. data/vendor/libsodium/src/libsodium/include/sodium/crypto_secretbox_xsalsa20poly1305.h +6 -6
  155. data/vendor/libsodium/src/libsodium/include/sodium/crypto_sign_edwards25519sha512batch.h +0 -11
  156. data/vendor/libsodium/src/libsodium/include/sodium/runtime.h +3 -0
  157. data/vendor/libsodium/src/libsodium/randombytes/randombytes.c +3 -0
  158. data/vendor/libsodium/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c +5 -1
  159. data/vendor/libsodium/src/libsodium/sodium/common.h +150 -0
  160. data/vendor/libsodium/src/libsodium/sodium/core.c +3 -1
  161. data/vendor/libsodium/src/libsodium/sodium/runtime.c +37 -19
  162. data/vendor/libsodium/src/libsodium/sodium/utils.c +18 -9
  163. data/vendor/libsodium/test/Makefile.in +9 -0
  164. data/vendor/libsodium/test/default/Makefile.am +10 -0
  165. data/vendor/libsodium/test/default/Makefile.in +53 -20
  166. data/vendor/libsodium/test/default/aead_aes256gcm.c +43 -17
  167. data/vendor/libsodium/test/default/aead_chacha20poly1305.c +179 -86
  168. data/vendor/libsodium/test/default/auth7.c +5 -5
  169. data/vendor/libsodium/test/default/box.c +4 -4
  170. data/vendor/libsodium/test/default/box2.c +1 -1
  171. data/vendor/libsodium/test/default/core6.c +1 -1
  172. data/vendor/libsodium/test/default/generichash.c +12 -1
  173. data/vendor/libsodium/test/default/generichash2.c +2 -2
  174. data/vendor/libsodium/test/default/generichash3.c +21 -0
  175. data/vendor/libsodium/test/default/pwhash.c +186 -168
  176. data/vendor/libsodium/test/default/pwhash.exp +11 -30
  177. data/vendor/libsodium/test/default/pwhash_scrypt.c +349 -0
  178. data/vendor/libsodium/test/default/pwhash_scrypt.exp +31 -0
  179. data/vendor/libsodium/test/default/secretbox.c +1 -1
  180. data/vendor/libsodium/test/default/secretbox2.c +1 -1
  181. data/vendor/libsodium/test/default/sign.c +15 -0
  182. data/vendor/libsodium/test/default/sodium_utils2.c +8 -3
  183. data/vendor/libsodium/test/default/sodium_utils3.c +4 -2
  184. data/vendor/libsodium/test/default/verify1.c +0 -4
  185. data/vendor/libsodium/test/quirks/quirks.h +3 -0
  186. metadata +37 -22
  187. data/vendor/libsodium/builds/msvc/vs2010/test/test.props +0 -43
  188. data/vendor/libsodium/builds/msvc/vs2010/test/test.runner.bat +0 -78
  189. data/vendor/libsodium/builds/msvc/vs2010/test/test.vcxproj +0 -244
  190. data/vendor/libsodium/builds/msvc/vs2010/test/test.vcxproj.filters +0 -192
  191. data/vendor/libsodium/builds/msvc/vs2012/test/test.props +0 -43
  192. data/vendor/libsodium/builds/msvc/vs2012/test/test.runner.bat +0 -78
  193. data/vendor/libsodium/builds/msvc/vs2012/test/test.vcxproj +0 -244
  194. data/vendor/libsodium/builds/msvc/vs2012/test/test.vcxproj.filters +0 -192
  195. data/vendor/libsodium/builds/msvc/vs2013/test/test.props +0 -43
  196. data/vendor/libsodium/builds/msvc/vs2013/test/test.runner.bat +0 -78
  197. data/vendor/libsodium/builds/msvc/vs2013/test/test.vcxproj +0 -244
  198. data/vendor/libsodium/builds/msvc/vs2013/test/test.vcxproj.filters +0 -192
  199. data/vendor/libsodium/builds/msvc/vs2015/test/test.props +0 -43
  200. data/vendor/libsodium/builds/msvc/vs2015/test/test.runner.bat +0 -78
  201. data/vendor/libsodium/builds/msvc/vs2015/test/test.vcxproj +0 -244
  202. data/vendor/libsodium/builds/msvc/vs2015/test/test.vcxproj.filters +0 -192
  203. data/vendor/libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/sysendian.h +0 -146
  204. data/vendor/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/common_aes128ctr.c +0 -64
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b43a97a68f14245c79b2657108fb3dd0c0843a81
4
- data.tar.gz: 8bf405595200e0b7d1a9dac2ebd317fe76d2613f
3
+ metadata.gz: b56580328c4cb767702ac03dcb1479b879bcea2c
4
+ data.tar.gz: 3e590ea6f1acb52f7c29bbd11191bdc4e8c39823
5
5
  SHA512:
6
- metadata.gz: 327f5c5d03ccab99de68b7878f9b0110697cba7a8360529bb4d86272df162dc07da29f79f6a625ae91551193670a2eabcac15231ae6be1f37ef22986efba959d
7
- data.tar.gz: c0694f8097587a398fa60e998fa403e3be85045ad33c609784f02ae9d2f491c50a6e90649c0196ddfeabdf7253ef1c6fa075aa469c6aaaa16286f14a782d3383
6
+ metadata.gz: 114181ce4c5f580a48ab16e6f64f38cfe3e56fc55c49f0fb157600b3cf068a01d531ef7df39a3f185dcdebcfd44af14882b560438330a4f65dd638c7cd41eacd
7
+ data.tar.gz: f0d5b3c4bd6b427052c2f80fbc85bcd440552eb1793492a19f12ce44f9deb762a023acce871bfbde0eccdd422b2fe37c7595468b2d7415e37b3a8f3278a4cfae
@@ -0,0 +1,23 @@
1
+ language: ruby
2
+ sudo: false
3
+
4
+ rvm:
5
+ - 2.0.0
6
+ - 2.1.8
7
+ - 2.2.4
8
+ - 2.3.0
9
+ - ruby-head
10
+ - jruby
11
+ - jruby-9.0.4.0
12
+ - jruby-head
13
+ - rbx-2
14
+
15
+ matrix:
16
+ fast_finish: true
17
+ allow_failures:
18
+ - rvm: ruby-head
19
+ - rvm: jruby-head
20
+ - rvm: rbx-2
21
+
22
+ notifications:
23
+ irc: "irc.freenode.org#cryptosphere"
data/CHANGES.md CHANGED
@@ -1,3 +1,8 @@
1
+ 1.0.9 (2015-04-02)
2
+ ------------------
3
+ * Update to libsodium 1.0.9
4
+ * Windows support fixups
5
+
1
6
  1.0.8 (2015-12-26)
2
7
  ------------------
3
8
  * Update to libsodium 1.0.8
data/Gemfile CHANGED
@@ -1,6 +1,9 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
+ gemspec
4
+
3
5
  gem "rbnacl", github: 'cryptosphere/rbnacl'
4
6
 
5
- # Specify your gem's dependencies in rbnacl-libsodium.gemspec
6
- gemspec
7
+ group :development, :test do
8
+ gem "rspec", "~> 3"
9
+ end
data/Rakefile CHANGED
@@ -1 +1,6 @@
1
1
  require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new
5
+
6
+ task default: :spec
@@ -19,7 +19,8 @@ LIBSODIUM_DIR = File.expand_path(File.join(CWD, '..', '..', 'vendor', 'libsodium
19
19
  MAKE = ENV['MAKE'] || ENV['make'] || "make"
20
20
 
21
21
  Dir.chdir(LIBSODIUM_DIR) do
22
- sys("./configure --prefix=#{LIBSODIUM_DIR}/dist")
22
+ # sh is required to run configure on Windows
23
+ sys("sh -c \"./configure --prefix=#{LIBSODIUM_DIR}/dist\"")
23
24
  sys(MAKE)
24
25
  sys("#{MAKE} install")
25
26
  end
@@ -2,8 +2,14 @@ require "rbnacl/libsodium/version"
2
2
 
3
3
  module RbNaCl
4
4
  module Libsodium
5
- sodiumlib_dir = File.expand_path(File.join(File.dirname(__FILE__), "../../vendor/libsodium/dist/lib/"))
6
- sodiumlib_filename = RUBY_DESCRIPTION =~ /darwin/ ? "libsodium.dylib" : "libsodium.so"
5
+ sodiumlib_dir = File.expand_path("../../../vendor/libsodium/dist/lib/", __FILE__)
6
+
7
+ sodiumlib_filename = case RUBY_DESCRIPTION
8
+ when /darwin/ then "libsodium.dylib"
9
+ when /Windows|(win|mingw)32/ then "libsodium.dll"
10
+ else "libsodium.so"
11
+ end
12
+
7
13
  ::RBNACL_LIBSODIUM_GEM_LIB_PATH = File.join(sodiumlib_dir, sodiumlib_filename)
8
14
  end
9
15
  end
@@ -1,5 +1,5 @@
1
1
  module RbNaCl
2
2
  module Libsodium
3
- VERSION = '1.0.8'
3
+ VERSION = '1.0.9'
4
4
  end
5
5
  end
@@ -2,6 +2,10 @@
2
2
  Designers
3
3
  =========
4
4
 
5
+ argon2 Alex Biryukov
6
+ Daniel Dinu
7
+ Dmitry Khovratovich
8
+
5
9
  blake2 Jean-Philippe Aumasson
6
10
  Christian Winnerlein
7
11
  Samuel Neves
@@ -38,8 +42,12 @@ crypto_aead/aes256gcm/aesni Romain Dolbeau
38
42
 
39
43
  crypto_aead/chacha20poly1305 Frank Denis
40
44
 
45
+ crypto_core/curve25519 Daniel J. Bernstein
46
+
41
47
  crypto_box/curve25519xsalsa20poly1305 Daniel J. Bernstein
42
48
 
49
+ crypto_core/hchacha20 Frank Denis
50
+
43
51
  crypto_core/hsalsa20 Daniel J. Bernstein
44
52
  crypto_core/salsa20
45
53
  crypto_core/salsa2012
@@ -90,5 +98,11 @@ crypto_onetimeauth/poly1305/donna Andrew "floodyberry" Moon
90
98
 
91
99
  crypto_onetimeauth/poly1305/sse2 Andrew "floodyberry" Moon
92
100
 
101
+ crypto_pwhash/argon2 Samuel Neves
102
+ Dmitry Khovratovich
103
+ Jean-Philippe Aumasson
104
+ Daniel Dinu
105
+ Thomas Pornin
106
+
93
107
  crypto_pwhash/scryptsalsa208sha256 Colin Percival
94
108
  Alexander Peslyak
@@ -1,4 +1,30 @@
1
1
 
2
+ * Version 1.0.9
3
+ - The Javascript target now includes a `--sumo` option to include all
4
+ the symbols of the original C library.
5
+ - A detached API was added to the ChaCha20-Poly1305 and AES256-GCM
6
+ implementations.
7
+ - The Argon2i password hashing function was added, and is accessible
8
+ directly and through a new, high-level `crypto_pwhash` API. The scrypt
9
+ function remains available as well.
10
+ - A speed-record AVX2 implementation of BLAKE2b was added (thanks to
11
+ Samuel Neves).
12
+ - The library can now be compiled using C++Builder (thanks to @jcolli44)
13
+ - Countermeasures for Ed25519 signatures malleability have been added
14
+ to match the irtf-cfrg-eddsa draft (note that malleability is irrelevant to
15
+ the standard definition of signature security). Signatures with a small-order
16
+ `R` point are now also rejected.
17
+ - Some implementations are now slightly faster when using the Clang
18
+ compiler.
19
+ - The HChaCha20 core function was implemented (`crypto_core_hchacha20()`).
20
+ - No-op stubs were added for all AES256-GCM public functions even when
21
+ compiled on non-Intel platforms.
22
+ - `crypt_generichash_blake2b_statebytes()` was added.
23
+ - New macros were added for the IETF variant of the ChaCha20-Poly1305
24
+ construction.
25
+ - The library can now be compiled on Minix.
26
+ - HEASLR is now enabled on MinGW builds.
27
+
2
28
  * Version 1.0.8
3
29
  - Handle the case where the CPU supports AVX, but we are running
4
30
  on an hypervisor with AVX disabled/not supported.
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright (c) 2013-2015
2
+ * Copyright (c) 2013-2016
3
3
  * Frank Denis <j at pureftpd dot org>
4
4
  *
5
5
  * Permission to use, copy, modify, and/or distribute this software for any
@@ -17,5 +17,6 @@ SUBDIRS = \
17
17
 
18
18
  pkgconfigdir = $(libdir)/pkgconfig
19
19
  pkgconfig_DATA = @PACKAGE_NAME@.pc
20
+
20
21
  DISTCLEANFILES = $(pkgconfig_DATA)
21
22
 
@@ -93,6 +93,7 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
93
93
  am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_compile_flag.m4 \
94
94
  $(top_srcdir)/m4/ax_check_define.m4 \
95
95
  $(top_srcdir)/m4/ax_check_link_flag.m4 \
96
+ $(top_srcdir)/m4/ax_valgrind_check.m4 \
96
97
  $(top_srcdir)/m4/ld-output-def.m4 $(top_srcdir)/m4/libtool.m4 \
97
98
  $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
98
99
  $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
@@ -264,6 +265,8 @@ CCASFLAGS = @CCASFLAGS@
264
265
  CCDEPMODE = @CCDEPMODE@
265
266
  CFLAGS = @CFLAGS@
266
267
  CFLAGS_AESNI = @CFLAGS_AESNI@
268
+ CFLAGS_AVX = @CFLAGS_AVX@
269
+ CFLAGS_AVX2 = @CFLAGS_AVX2@
267
270
  CFLAGS_MMX = @CFLAGS_MMX@
268
271
  CFLAGS_PCLMUL = @CFLAGS_PCLMUL@
269
272
  CFLAGS_SSE2 = @CFLAGS_SSE2@
@@ -336,6 +339,12 @@ SODIUM_LIBRARY_VERSION_MAJOR = @SODIUM_LIBRARY_VERSION_MAJOR@
336
339
  SODIUM_LIBRARY_VERSION_MINOR = @SODIUM_LIBRARY_VERSION_MINOR@
337
340
  STRIP = @STRIP@
338
341
  TEST_LDFLAGS = @TEST_LDFLAGS@
342
+ VALGRIND = @VALGRIND@
343
+ VALGRIND_ENABLED = @VALGRIND_ENABLED@
344
+ VALGRIND_HAVE_TOOL_drd = @VALGRIND_HAVE_TOOL_drd@
345
+ VALGRIND_HAVE_TOOL_exp_sgcheck = @VALGRIND_HAVE_TOOL_exp_sgcheck@
346
+ VALGRIND_HAVE_TOOL_helgrind = @VALGRIND_HAVE_TOOL_helgrind@
347
+ VALGRIND_HAVE_TOOL_memcheck = @VALGRIND_HAVE_TOOL_memcheck@
339
348
  VERSION = @VERSION@
340
349
  abs_builddir = @abs_builddir@
341
350
  abs_srcdir = @abs_srcdir@
@@ -1,4 +1,5 @@
1
1
  [![Build Status](https://travis-ci.org/jedisct1/libsodium.svg?branch=master)](https://travis-ci.org/jedisct1/libsodium?branch=master)
2
+ [![Windows build status](https://ci.appveyor.com/api/projects/status/fu8s2elx25il98hj?svg=true)](https://ci.appveyor.com/project/jedisct1/libsodium)
2
3
  [![Coverity Scan Build Status](https://scan.coverity.com/projects/2397/badge.svg)](https://scan.coverity.com/projects/2397)
3
4
 
4
5
  ![libsodium](https://raw.github.com/jedisct1/libsodium/master/logo.png)
@@ -27,6 +28,12 @@ online, requires Javascript.
27
28
  * [offline documentation](https://www.gitbook.com/book/jedisct1/libsodium/details)
28
29
  in PDF, MOBI and ePUB formats.
29
30
 
31
+ ## Integrity Checking
32
+
33
+ The integrity checking instructions (including the signing key for libsodium)
34
+ are available in the [installation](https://download.libsodium.org/doc/installation/index.html#integrity-checking)
35
+ section of the documentation.
36
+
30
37
  ## Community
31
38
 
32
39
  A mailing-list is available to discuss libsodium.
@@ -1209,6 +1209,7 @@ AC_SUBST([am__untar])
1209
1209
  m4_include([m4/ax_check_compile_flag.m4])
1210
1210
  m4_include([m4/ax_check_define.m4])
1211
1211
  m4_include([m4/ax_check_link_flag.m4])
1212
+ m4_include([m4/ax_valgrind_check.m4])
1212
1213
  m4_include([m4/ld-output-def.m4])
1213
1214
  m4_include([m4/libtool.m4])
1214
1215
  m4_include([m4/ltoptions.m4])
@@ -0,0 +1,25 @@
1
+ version: 1.0.9.{build}
2
+
3
+ os: Visual Studio 2015
4
+
5
+ environment:
6
+ matrix:
7
+ - platform: Win32
8
+ configuration: Debug
9
+ - platform: Win32
10
+ configuration: Release
11
+ - platform: x64
12
+ configuration: Debug
13
+ - platform: x64
14
+ configuration: Release
15
+
16
+ matrix:
17
+ fast_finish: false
18
+
19
+ init:
20
+ msbuild /version
21
+
22
+ build:
23
+ parallel: true
24
+ project: libsodium.vcxproj
25
+ verbosity: minimal
@@ -1,6 +1,6 @@
1
1
  @%:@! /bin/sh
2
2
  @%:@ Guess values for system-dependent variables and create Makefiles.
3
- @%:@ Generated by GNU Autoconf 2.69 for libsodium 1.0.8.
3
+ @%:@ Generated by GNU Autoconf 2.69 for libsodium 1.0.9.
4
4
  @%:@
5
5
  @%:@ Report bugs to <https://github.com/jedisct1/libsodium/issues>.
6
6
  @%:@
@@ -590,8 +590,8 @@ MAKEFLAGS=
590
590
  # Identity of this package.
591
591
  PACKAGE_NAME='libsodium'
592
592
  PACKAGE_TARNAME='libsodium'
593
- PACKAGE_VERSION='1.0.8'
594
- PACKAGE_STRING='libsodium 1.0.8'
593
+ PACKAGE_VERSION='1.0.9'
594
+ PACKAGE_STRING='libsodium 1.0.9'
595
595
  PACKAGE_BUGREPORT='https://github.com/jedisct1/libsodium/issues'
596
596
  PACKAGE_URL='https://github.com/jedisct1/libsodium'
597
597
 
@@ -657,6 +657,8 @@ HAVE_AMD64_ASM_FALSE
657
657
  HAVE_AMD64_ASM_TRUE
658
658
  CFLAGS_PCLMUL
659
659
  CFLAGS_AESNI
660
+ CFLAGS_AVX2
661
+ CFLAGS_AVX
660
662
  CFLAGS_SSE41
661
663
  CFLAGS_SSSE3
662
664
  CFLAGS_SSE3
@@ -705,6 +707,15 @@ CPPFLAGS
705
707
  LDFLAGS
706
708
  CFLAGS
707
709
  CC
710
+ VALGRIND_CHECK_RULES
711
+ VALGRIND_HAVE_TOOL_exp_sgcheck
712
+ VALGRIND_HAVE_TOOL_drd
713
+ VALGRIND_HAVE_TOOL_helgrind
714
+ VALGRIND_HAVE_TOOL_memcheck
715
+ VALGRIND_ENABLED
716
+ VALGRIND_ENABLED_FALSE
717
+ VALGRIND_ENABLED_TRUE
718
+ VALGRIND
708
719
  SAFECODE_HOME
709
720
  MINIMAL_FALSE
710
721
  MINIMAL_TRUE
@@ -807,6 +818,7 @@ enable_minimal
807
818
  with_safecode
808
819
  enable_debug
809
820
  enable_opt
821
+ enable_valgrind
810
822
  enable_soname_versions
811
823
  enable_shared
812
824
  enable_static
@@ -1372,7 +1384,7 @@ if test "$ac_init_help" = "long"; then
1372
1384
  # Omit some internal or obsolete options to make the list less imposing.
1373
1385
  # This message is too long to be a string in the A/UX 3.1 sh.
1374
1386
  cat <<_ACEOF
1375
- \`configure' configures libsodium 1.0.8 to adapt to many kinds of systems.
1387
+ \`configure' configures libsodium 1.0.9 to adapt to many kinds of systems.
1376
1388
 
1377
1389
  Usage: $0 [OPTION]... [VAR=VALUE]...
1378
1390
 
@@ -1442,7 +1454,7 @@ fi
1442
1454
 
1443
1455
  if test -n "$ac_init_help"; then
1444
1456
  case $ac_init_help in
1445
- short | recursive ) echo "Configuration of libsodium 1.0.8:";;
1457
+ short | recursive ) echo "Configuration of libsodium 1.0.9:";;
1446
1458
  esac
1447
1459
  cat <<\_ACEOF
1448
1460
 
@@ -1470,6 +1482,8 @@ Optional Features:
1470
1482
  --enable-debug For maintainers only - please do not use
1471
1483
  --enable-opt Optimize for the native CPU - The resulting library
1472
1484
  will be faster but not portable
1485
+ --enable-valgrind Whether to enable Valgrind on the unit tests
1486
+ (requires GNU make)
1473
1487
  --enable-soname-versions
1474
1488
  enable soname versions (must be disabled for
1475
1489
  Android) (default: enabled)
@@ -1577,7 +1591,7 @@ fi
1577
1591
  test -n "$ac_init_help" && exit $ac_status
1578
1592
  if $ac_init_version; then
1579
1593
  cat <<\_ACEOF
1580
- libsodium configure 1.0.8
1594
+ libsodium configure 1.0.9
1581
1595
  generated by GNU Autoconf 2.69
1582
1596
 
1583
1597
  Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1946,7 +1960,7 @@ cat >config.log <<_ACEOF
1946
1960
  This file contains any messages produced by compilers while
1947
1961
  running configure, to aid debugging if configure makes a mistake.
1948
1962
 
1949
- It was created by libsodium $as_me 1.0.8, which was
1963
+ It was created by libsodium $as_me 1.0.9, which was
1950
1964
  generated by GNU Autoconf 2.69. Invocation command line was
1951
1965
 
1952
1966
  $ $0 $@
@@ -2882,7 +2896,7 @@ fi
2882
2896
 
2883
2897
  # Define the identity of the package.
2884
2898
  PACKAGE='libsodium'
2885
- VERSION='1.0.8'
2899
+ VERSION='1.0.9'
2886
2900
 
2887
2901
 
2888
2902
  cat >>confdefs.h <<_ACEOF
@@ -3178,9 +3192,9 @@ ISODATE=`date +%Y-%m-%d`
3178
3192
 
3179
3193
 
3180
3194
  SODIUM_LIBRARY_VERSION_MAJOR=9
3181
- SODIUM_LIBRARY_VERSION_MINOR=1
3195
+ SODIUM_LIBRARY_VERSION_MINOR=2
3182
3196
  DLL_VERSION=8
3183
- SODIUM_LIBRARY_VERSION=18:1:0
3197
+ SODIUM_LIBRARY_VERSION=19:0:1
3184
3198
  # | | |
3185
3199
  # +------+ | +---+
3186
3200
  # | | |
@@ -3363,8 +3377,8 @@ if test "${enable_opt+set}" = set; then :
3363
3377
  enableval=$enable_opt;
3364
3378
  if test "x$enableval" = "xyes"; then :
3365
3379
 
3366
- CFLAGS="$CFLAGS -march=native -save-temps"
3367
- LDFLAGS="$LDFLAGS -march=native"
3380
+ CFLAGS="$CFLAGS -O3 -march=native"
3381
+ LDFLAGS="$LDFLAGS -O3 -march=native"
3368
3382
  fi
3369
3383
 
3370
3384
  fi
@@ -3373,6 +3387,276 @@ fi
3373
3387
 
3374
3388
 
3375
3389
 
3390
+ @%:@ Check whether --enable-valgrind was given.
3391
+ if test "${enable_valgrind+set}" = set; then :
3392
+ enableval=$enable_valgrind; enable_valgrind=$enableval
3393
+ else
3394
+ enable_valgrind=no
3395
+ fi
3396
+
3397
+
3398
+ if test "$enable_valgrind" != "no"; then :
3399
+
3400
+ # Check for Valgrind.
3401
+ # Extract the first word of "valgrind", so it can be a program name with args.
3402
+ set dummy valgrind; ac_word=$2
3403
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3404
+ $as_echo_n "checking for $ac_word... " >&6; }
3405
+ if ${ac_cv_prog_VALGRIND+:} false; then :
3406
+ $as_echo_n "(cached) " >&6
3407
+ else
3408
+ if test -n "$VALGRIND"; then
3409
+ ac_cv_prog_VALGRIND="$VALGRIND" # Let the user override the test.
3410
+ else
3411
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3412
+ for as_dir in $PATH
3413
+ do
3414
+ IFS=$as_save_IFS
3415
+ test -z "$as_dir" && as_dir=.
3416
+ for ac_exec_ext in '' $ac_executable_extensions; do
3417
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3418
+ ac_cv_prog_VALGRIND="valgrind"
3419
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3420
+ break 2
3421
+ fi
3422
+ done
3423
+ done
3424
+ IFS=$as_save_IFS
3425
+
3426
+ fi
3427
+ fi
3428
+ VALGRIND=$ac_cv_prog_VALGRIND
3429
+ if test -n "$VALGRIND"; then
3430
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $VALGRIND" >&5
3431
+ $as_echo "$VALGRIND" >&6; }
3432
+ else
3433
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3434
+ $as_echo "no" >&6; }
3435
+ fi
3436
+
3437
+
3438
+ if test "$VALGRIND" = ""; then :
3439
+
3440
+ if test "$enable_valgrind" = "yes"; then :
3441
+
3442
+ as_fn_error $? "Could not find valgrind; either install it or reconfigure with --disable-valgrind" "$LINENO" 5
3443
+
3444
+ else
3445
+
3446
+ enable_valgrind=no
3447
+
3448
+ fi
3449
+
3450
+ else
3451
+
3452
+ enable_valgrind=yes
3453
+
3454
+ fi
3455
+
3456
+ fi
3457
+
3458
+ if test "$enable_valgrind" = "yes"; then
3459
+ VALGRIND_ENABLED_TRUE=
3460
+ VALGRIND_ENABLED_FALSE='#'
3461
+ else
3462
+ VALGRIND_ENABLED_TRUE='#'
3463
+ VALGRIND_ENABLED_FALSE=
3464
+ fi
3465
+
3466
+ VALGRIND_ENABLED=$enable_valgrind
3467
+
3468
+
3469
+ # Check for Valgrind tools we care about.
3470
+
3471
+
3472
+ if test "$VALGRIND" != ""; then :
3473
+
3474
+
3475
+
3476
+
3477
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Valgrind tool memcheck" >&5
3478
+ $as_echo_n "checking for Valgrind tool memcheck... " >&6; }
3479
+ if ${ax_cv_valgrind_tool_memcheck+:} false; then :
3480
+ $as_echo_n "(cached) " >&6
3481
+ else
3482
+
3483
+ ax_cv_valgrind_tool_memcheck=
3484
+ if `$VALGRIND --tool=memcheck --help >/dev/null 2>&1`; then :
3485
+
3486
+ ax_cv_valgrind_tool_memcheck="memcheck"
3487
+
3488
+ fi
3489
+
3490
+ fi
3491
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_valgrind_tool_memcheck" >&5
3492
+ $as_echo "$ax_cv_valgrind_tool_memcheck" >&6; }
3493
+
3494
+ VALGRIND_HAVE_TOOL_memcheck=$ax_cv_valgrind_tool_memcheck
3495
+
3496
+
3497
+
3498
+
3499
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Valgrind tool helgrind" >&5
3500
+ $as_echo_n "checking for Valgrind tool helgrind... " >&6; }
3501
+ if ${ax_cv_valgrind_tool_helgrind+:} false; then :
3502
+ $as_echo_n "(cached) " >&6
3503
+ else
3504
+
3505
+ ax_cv_valgrind_tool_helgrind=
3506
+ if `$VALGRIND --tool=helgrind --help >/dev/null 2>&1`; then :
3507
+
3508
+ ax_cv_valgrind_tool_helgrind="helgrind"
3509
+
3510
+ fi
3511
+
3512
+ fi
3513
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_valgrind_tool_helgrind" >&5
3514
+ $as_echo "$ax_cv_valgrind_tool_helgrind" >&6; }
3515
+
3516
+ VALGRIND_HAVE_TOOL_helgrind=$ax_cv_valgrind_tool_helgrind
3517
+
3518
+
3519
+
3520
+
3521
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Valgrind tool drd" >&5
3522
+ $as_echo_n "checking for Valgrind tool drd... " >&6; }
3523
+ if ${ax_cv_valgrind_tool_drd+:} false; then :
3524
+ $as_echo_n "(cached) " >&6
3525
+ else
3526
+
3527
+ ax_cv_valgrind_tool_drd=
3528
+ if `$VALGRIND --tool=drd --help >/dev/null 2>&1`; then :
3529
+
3530
+ ax_cv_valgrind_tool_drd="drd"
3531
+
3532
+ fi
3533
+
3534
+ fi
3535
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_valgrind_tool_drd" >&5
3536
+ $as_echo "$ax_cv_valgrind_tool_drd" >&6; }
3537
+
3538
+ VALGRIND_HAVE_TOOL_drd=$ax_cv_valgrind_tool_drd
3539
+
3540
+
3541
+
3542
+
3543
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Valgrind tool exp-sgcheck" >&5
3544
+ $as_echo_n "checking for Valgrind tool exp-sgcheck... " >&6; }
3545
+ if ${ax_cv_valgrind_tool_exp_sgcheck+:} false; then :
3546
+ $as_echo_n "(cached) " >&6
3547
+ else
3548
+
3549
+ ax_cv_valgrind_tool_exp_sgcheck=
3550
+ if `$VALGRIND --tool=exp-sgcheck --help >/dev/null 2>&1`; then :
3551
+
3552
+ ax_cv_valgrind_tool_exp_sgcheck="exp-sgcheck"
3553
+
3554
+ fi
3555
+
3556
+ fi
3557
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_valgrind_tool_exp_sgcheck" >&5
3558
+ $as_echo "$ax_cv_valgrind_tool_exp_sgcheck" >&6; }
3559
+
3560
+ VALGRIND_HAVE_TOOL_exp_sgcheck=$ax_cv_valgrind_tool_exp_sgcheck
3561
+
3562
+
3563
+
3564
+ fi
3565
+
3566
+ VALGRIND_CHECK_RULES='
3567
+ # Valgrind check
3568
+ #
3569
+ # Optional:
3570
+ # - VALGRIND_SUPPRESSIONS_FILES: Space-separated list of Valgrind suppressions
3571
+ # files to load. (Default: empty)
3572
+ # - VALGRIND_FLAGS: General flags to pass to all Valgrind tools.
3573
+ # (Default: --num-callers=30)
3574
+ # - VALGRIND_$toolname_FLAGS: Flags to pass to Valgrind $toolname (one of:
3575
+ # memcheck, helgrind, drd, sgcheck). (Default: various)
3576
+
3577
+ # Optional variables
3578
+ VALGRIND_SUPPRESSIONS ?= $(addprefix --suppressions=,$(VALGRIND_SUPPRESSIONS_FILES))
3579
+ VALGRIND_FLAGS ?= --num-callers=30
3580
+ VALGRIND_memcheck_FLAGS ?= --leak-check=full --show-reachable=no
3581
+ VALGRIND_helgrind_FLAGS ?= --history-level=approx
3582
+ VALGRIND_drd_FLAGS ?=
3583
+ VALGRIND_sgcheck_FLAGS ?=
3584
+
3585
+ # Internal use
3586
+ valgrind_tools = memcheck helgrind drd sgcheck
3587
+ valgrind_log_files = $(addprefix test-suite-,$(addsuffix .log,$(valgrind_tools)))
3588
+
3589
+ valgrind_memcheck_flags = --tool=memcheck $(VALGRIND_memcheck_FLAGS)
3590
+ valgrind_helgrind_flags = --tool=helgrind $(VALGRIND_helgrind_FLAGS)
3591
+ valgrind_drd_flags = --tool=drd $(VALGRIND_drd_FLAGS)
3592
+ valgrind_sgcheck_flags = --tool=exp-sgcheck $(VALGRIND_sgcheck_FLAGS)
3593
+
3594
+ valgrind_quiet = $(valgrind_quiet_$(V))
3595
+ valgrind_quiet_ = $(valgrind_quiet_$(AM_DEFAULT_VERBOSITY))
3596
+ valgrind_quiet_0 = --quiet
3597
+
3598
+ # Support running with and without libtool.
3599
+ ifneq ($(LIBTOOL),)
3600
+ valgrind_lt = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=execute
3601
+ else
3602
+ valgrind_lt =
3603
+ endif
3604
+
3605
+ # Use recursive makes in order to ignore errors during check
3606
+ check-valgrind:
3607
+ ifeq ($(VALGRIND_ENABLED),yes)
3608
+ -$(foreach tool,$(valgrind_tools), \
3609
+ $(if $(VALGRIND_HAVE_TOOL_$(tool))$(VALGRIND_HAVE_TOOL_exp_$(tool)), \
3610
+ $(MAKE) $(AM_MAKEFLAGS) -k check-valgrind-tool VALGRIND_TOOL=$(tool); \
3611
+ ) \
3612
+ )
3613
+ else
3614
+ @echo "Need to reconfigure with --enable-valgrind"
3615
+ endif
3616
+
3617
+ # Valgrind running
3618
+ VALGRIND_TESTS_ENVIRONMENT = \
3619
+ $(TESTS_ENVIRONMENT) \
3620
+ env VALGRIND=$(VALGRIND) \
3621
+ G_SLICE=always-malloc,debug-blocks \
3622
+ G_DEBUG=fatal-warnings,fatal-criticals,gc-friendly
3623
+
3624
+ VALGRIND_LOG_COMPILER = \
3625
+ $(valgrind_lt) \
3626
+ $(VALGRIND) $(VALGRIND_SUPPRESSIONS) --error-exitcode=1 $(VALGRIND_FLAGS)
3627
+
3628
+ check-valgrind-tool:
3629
+ ifeq ($(VALGRIND_ENABLED),yes)
3630
+ $(MAKE) check-TESTS \
3631
+ TESTS_ENVIRONMENT="$(VALGRIND_TESTS_ENVIRONMENT)" \
3632
+ LOG_COMPILER="$(VALGRIND_LOG_COMPILER)" \
3633
+ LOG_FLAGS="$(valgrind_$(VALGRIND_TOOL)_flags)" \
3634
+ TEST_SUITE_LOG=test-suite-$(VALGRIND_TOOL).log
3635
+ else
3636
+ @echo "Need to reconfigure with --enable-valgrind"
3637
+ endif
3638
+
3639
+ A''M_DISTCHECK_CONFIGURE_FLAGS ?=
3640
+ A''M_DISTCHECK_CONFIGURE_FLAGS += --disable-valgrind
3641
+
3642
+ MOSTLYCLEANFILES ?=
3643
+ MOSTLYCLEANFILES += $(valgrind_log_files)
3644
+
3645
+ .PHONY: check-valgrind check-valgrind-tool
3646
+ '
3647
+
3648
+ if test "$enable_valgrind" != "yes"; then :
3649
+
3650
+ VALGRIND_CHECK_RULES='
3651
+ check-valgrind:
3652
+ @echo "Need to use GNU make and reconfigure with --enable-valgrind"'
3653
+
3654
+ fi
3655
+
3656
+
3657
+
3658
+
3659
+
3376
3660
  DEPDIR="${am__leading_dot}deps"
3377
3661
 
3378
3662
  ac_config_commands="$ac_config_commands depfiles"
@@ -5611,6 +5895,70 @@ fi
5611
5895
  fi
5612
5896
 
5613
5897
 
5898
+ if test "$GCC" = "yes" ; then :
5899
+
5900
+ case $host_cpu in @%:@(
5901
+ i?86|amd64|x86_64) :
5902
+
5903
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5904
+ /* end confdefs.h. */
5905
+
5906
+ #if !defined(__clang__) && defined(__GNUC__) && ((__GNUC__ << 8) | __GNUC_MINOR__) < 0x403
5907
+ # error old gcc
5908
+ #endif
5909
+ int main(void) { return 0; }
5910
+
5911
+ _ACEOF
5912
+ if ac_fn_c_try_compile "$LINENO"; then :
5913
+
5914
+ else
5915
+
5916
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -flax-vector-conversions" >&5
5917
+ $as_echo_n "checking whether C compiler accepts -flax-vector-conversions... " >&6; }
5918
+ if ${ax_cv_check_cflags___flax_vector_conversions+:} false; then :
5919
+ $as_echo_n "(cached) " >&6
5920
+ else
5921
+
5922
+ ax_check_save_flags=$CFLAGS
5923
+ CFLAGS="$CFLAGS -flax-vector-conversions"
5924
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5925
+ /* end confdefs.h. */
5926
+ #include <stdio.h>
5927
+ int
5928
+ main ()
5929
+ {
5930
+ char x[42U], fodder = 0;if (fodder > -1000 && fgets(x,1000,stdin)) puts(x)
5931
+ ;
5932
+ return 0;
5933
+ }
5934
+ _ACEOF
5935
+ if ac_fn_c_try_compile "$LINENO"; then :
5936
+ ax_cv_check_cflags___flax_vector_conversions=yes
5937
+ else
5938
+ ax_cv_check_cflags___flax_vector_conversions=no
5939
+ fi
5940
+ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5941
+ CFLAGS=$ax_check_save_flags
5942
+ fi
5943
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___flax_vector_conversions" >&5
5944
+ $as_echo "$ax_cv_check_cflags___flax_vector_conversions" >&6; }
5945
+ if test "x$ax_cv_check_cflags___flax_vector_conversions" = xyes; then :
5946
+ CFLAGS="$CFLAGS -flax-vector-conversions"
5947
+ else
5948
+ :
5949
+ fi
5950
+
5951
+
5952
+ fi
5953
+ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5954
+
5955
+ ;; @%:@(
5956
+ *) :
5957
+ ;;
5958
+ esac
5959
+
5960
+ fi
5961
+
5614
5962
  LIBTOOL_OLD_FLAGS="$LIBTOOL_EXTRA_FLAGS"
5615
5963
  LIBTOOL_EXTRA_FLAGS="$LIBTOOL_EXTRA_FLAGS -version-info $SODIUM_LIBRARY_VERSION"
5616
5964
  @%:@ Check whether --enable-soname-versions was given.
@@ -5665,6 +6013,42 @@ else
5665
6013
  :
5666
6014
  fi
5667
6015
 
6016
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,--high-entropy-va" >&5
6017
+ $as_echo_n "checking whether the linker accepts -Wl,--high-entropy-va... " >&6; }
6018
+ if ${ax_cv_check_ldflags___Wl___high_entropy_va+:} false; then :
6019
+ $as_echo_n "(cached) " >&6
6020
+ else
6021
+
6022
+ ax_check_save_flags=$LDFLAGS
6023
+ LDFLAGS="$LDFLAGS -Wl,--high-entropy-va"
6024
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6025
+ /* end confdefs.h. */
6026
+ #include <stdio.h>
6027
+ int
6028
+ main ()
6029
+ {
6030
+ char x[42U];if (fgets(x,1000,stdin)) puts(x)
6031
+ ;
6032
+ return 0;
6033
+ }
6034
+ _ACEOF
6035
+ if ac_fn_c_try_link "$LINENO"; then :
6036
+ ax_cv_check_ldflags___Wl___high_entropy_va=yes
6037
+ else
6038
+ ax_cv_check_ldflags___Wl___high_entropy_va=no
6039
+ fi
6040
+ rm -f core conftest.err conftest.$ac_objext \
6041
+ conftest$ac_exeext conftest.$ac_ext
6042
+ LDFLAGS=$ax_check_save_flags
6043
+ fi
6044
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl___high_entropy_va" >&5
6045
+ $as_echo "$ax_cv_check_ldflags___Wl___high_entropy_va" >&6; }
6046
+ if test "x$ax_cv_check_ldflags___Wl___high_entropy_va" = xyes; then :
6047
+ LDFLAGS="$LDFLAGS -Wl,--high-entropy-va"
6048
+ else
6049
+ :
6050
+ fi
6051
+
5668
6052
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,--nxcompat" >&5
5669
6053
  $as_echo_n "checking whether the linker accepts -Wl,--nxcompat... " >&6; }
5670
6054
  if ${ax_cv_check_ldflags___Wl___nxcompat+:} false; then :
@@ -5794,41 +6178,6 @@ esac
5794
6178
 
5795
6179
  fi
5796
6180
 
5797
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Winit-self" >&5
5798
- $as_echo_n "checking whether C compiler accepts -Winit-self... " >&6; }
5799
- if ${ax_cv_check_cflags___Winit_self+:} false; then :
5800
- $as_echo_n "(cached) " >&6
5801
- else
5802
-
5803
- ax_check_save_flags=$CFLAGS
5804
- CFLAGS="$CFLAGS -Winit-self"
5805
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5806
- /* end confdefs.h. */
5807
- #include <stdio.h>
5808
- int
5809
- main ()
5810
- {
5811
- char x[42U], fodder = 0;if (fodder > -1000 && fgets(x,1000,stdin)) puts(x)
5812
- ;
5813
- return 0;
5814
- }
5815
- _ACEOF
5816
- if ac_fn_c_try_compile "$LINENO"; then :
5817
- ax_cv_check_cflags___Winit_self=yes
5818
- else
5819
- ax_cv_check_cflags___Winit_self=no
5820
- fi
5821
- rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5822
- CFLAGS=$ax_check_save_flags
5823
- fi
5824
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Winit_self" >&5
5825
- $as_echo "$ax_cv_check_cflags___Winit_self" >&6; }
5826
- if test "x$ax_cv_check_cflags___Winit_self" = xyes; then :
5827
- CFLAGS="$CFLAGS -Winit-self"
5828
- else
5829
- :
5830
- fi
5831
-
5832
6181
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Wwrite-strings" >&5
5833
6182
  $as_echo_n "checking whether C compiler accepts -Wwrite-strings... " >&6; }
5834
6183
  if ${ax_cv_check_cflags___Wwrite_strings+:} false; then :
@@ -6188,15 +6537,15 @@ else
6188
6537
  :
6189
6538
  fi
6190
6539
 
6191
- as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wchar-subscripts" | $as_tr_sh`
6192
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wchar-subscripts" >&5
6193
- $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wchar-subscripts... " >&6; }
6540
+ as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wduplicated-cond" | $as_tr_sh`
6541
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wduplicated-cond" >&5
6542
+ $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wduplicated-cond... " >&6; }
6194
6543
  if eval \${$as_CACHEVAR+:} false; then :
6195
6544
  $as_echo_n "(cached) " >&6
6196
6545
  else
6197
6546
 
6198
6547
  ax_check_save_flags=$CFLAGS
6199
- CFLAGS="$CFLAGS $CWFLAGS -Wchar-subscripts"
6548
+ CFLAGS="$CFLAGS $CWFLAGS -Wduplicated-cond"
6200
6549
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6201
6550
  /* end confdefs.h. */
6202
6551
  #include <stdio.h>
@@ -6220,44 +6569,7 @@ eval ac_res=\$$as_CACHEVAR
6220
6569
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
6221
6570
  $as_echo "$ac_res" >&6; }
6222
6571
  if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then :
6223
- CWFLAGS="$CWFLAGS -Wchar-subscripts"
6224
- else
6225
- :
6226
- fi
6227
-
6228
- as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wcomment" | $as_tr_sh`
6229
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wcomment" >&5
6230
- $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wcomment... " >&6; }
6231
- if eval \${$as_CACHEVAR+:} false; then :
6232
- $as_echo_n "(cached) " >&6
6233
- else
6234
-
6235
- ax_check_save_flags=$CFLAGS
6236
- CFLAGS="$CFLAGS $CWFLAGS -Wcomment"
6237
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6238
- /* end confdefs.h. */
6239
- #include <stdio.h>
6240
- int
6241
- main ()
6242
- {
6243
- char x[42U], fodder = 0;if (fodder > -1000 && fgets(x,1000,stdin)) puts(x)
6244
- ;
6245
- return 0;
6246
- }
6247
- _ACEOF
6248
- if ac_fn_c_try_compile "$LINENO"; then :
6249
- eval "$as_CACHEVAR=yes"
6250
- else
6251
- eval "$as_CACHEVAR=no"
6252
- fi
6253
- rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6254
- CFLAGS=$ax_check_save_flags
6255
- fi
6256
- eval ac_res=\$$as_CACHEVAR
6257
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
6258
- $as_echo "$ac_res" >&6; }
6259
- if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then :
6260
- CWFLAGS="$CWFLAGS -Wcomment"
6572
+ CWFLAGS="$CWFLAGS -Wduplicated-cond"
6261
6573
  else
6262
6574
  :
6263
6575
  fi
@@ -6336,15 +6648,15 @@ else
6336
6648
  :
6337
6649
  fi
6338
6650
 
6339
- as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wimplicit" | $as_tr_sh`
6340
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wimplicit" >&5
6341
- $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wimplicit... " >&6; }
6651
+ as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wmissing-declarations" | $as_tr_sh`
6652
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wmissing-declarations" >&5
6653
+ $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wmissing-declarations... " >&6; }
6342
6654
  if eval \${$as_CACHEVAR+:} false; then :
6343
6655
  $as_echo_n "(cached) " >&6
6344
6656
  else
6345
6657
 
6346
6658
  ax_check_save_flags=$CFLAGS
6347
- CFLAGS="$CFLAGS $CWFLAGS -Wimplicit"
6659
+ CFLAGS="$CFLAGS $CWFLAGS -Wmissing-declarations"
6348
6660
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6349
6661
  /* end confdefs.h. */
6350
6662
  #include <stdio.h>
@@ -6368,20 +6680,20 @@ eval ac_res=\$$as_CACHEVAR
6368
6680
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
6369
6681
  $as_echo "$ac_res" >&6; }
6370
6682
  if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then :
6371
- CWFLAGS="$CWFLAGS -Wimplicit"
6683
+ CWFLAGS="$CWFLAGS -Wmissing-declarations"
6372
6684
  else
6373
6685
  :
6374
6686
  fi
6375
6687
 
6376
- as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wmissing-declarations" | $as_tr_sh`
6377
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wmissing-declarations" >&5
6378
- $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wmissing-declarations... " >&6; }
6688
+ as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wmissing-prototypes" | $as_tr_sh`
6689
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wmissing-prototypes" >&5
6690
+ $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wmissing-prototypes... " >&6; }
6379
6691
  if eval \${$as_CACHEVAR+:} false; then :
6380
6692
  $as_echo_n "(cached) " >&6
6381
6693
  else
6382
6694
 
6383
6695
  ax_check_save_flags=$CFLAGS
6384
- CFLAGS="$CFLAGS $CWFLAGS -Wmissing-declarations"
6696
+ CFLAGS="$CFLAGS $CWFLAGS -Wmissing-prototypes"
6385
6697
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6386
6698
  /* end confdefs.h. */
6387
6699
  #include <stdio.h>
@@ -6405,20 +6717,20 @@ eval ac_res=\$$as_CACHEVAR
6405
6717
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
6406
6718
  $as_echo "$ac_res" >&6; }
6407
6719
  if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then :
6408
- CWFLAGS="$CWFLAGS -Wmissing-declarations"
6720
+ CWFLAGS="$CWFLAGS -Wmissing-prototypes"
6409
6721
  else
6410
6722
  :
6411
6723
  fi
6412
6724
 
6413
- as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wmissing-prototypes" | $as_tr_sh`
6414
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wmissing-prototypes" >&5
6415
- $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wmissing-prototypes... " >&6; }
6725
+ as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wnested-externs" | $as_tr_sh`
6726
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wnested-externs" >&5
6727
+ $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wnested-externs... " >&6; }
6416
6728
  if eval \${$as_CACHEVAR+:} false; then :
6417
6729
  $as_echo_n "(cached) " >&6
6418
6730
  else
6419
6731
 
6420
6732
  ax_check_save_flags=$CFLAGS
6421
- CFLAGS="$CFLAGS $CWFLAGS -Wmissing-prototypes"
6733
+ CFLAGS="$CFLAGS $CWFLAGS -Wnested-externs"
6422
6734
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6423
6735
  /* end confdefs.h. */
6424
6736
  #include <stdio.h>
@@ -6442,20 +6754,20 @@ eval ac_res=\$$as_CACHEVAR
6442
6754
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
6443
6755
  $as_echo "$ac_res" >&6; }
6444
6756
  if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then :
6445
- CWFLAGS="$CWFLAGS -Wmissing-prototypes"
6757
+ CWFLAGS="$CWFLAGS -Wnested-externs"
6446
6758
  else
6447
6759
  :
6448
6760
  fi
6449
6761
 
6450
- as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wnormalized=id" | $as_tr_sh`
6451
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wnormalized=id" >&5
6452
- $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wnormalized=id... " >&6; }
6762
+ as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wno-unknown-pragmas" | $as_tr_sh`
6763
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wno-unknown-pragmas" >&5
6764
+ $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wno-unknown-pragmas... " >&6; }
6453
6765
  if eval \${$as_CACHEVAR+:} false; then :
6454
6766
  $as_echo_n "(cached) " >&6
6455
6767
  else
6456
6768
 
6457
6769
  ax_check_save_flags=$CFLAGS
6458
- CFLAGS="$CFLAGS $CWFLAGS -Wnormalized=id"
6770
+ CFLAGS="$CFLAGS $CWFLAGS -Wno-unknown-pragmas"
6459
6771
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6460
6772
  /* end confdefs.h. */
6461
6773
  #include <stdio.h>
@@ -6479,20 +6791,20 @@ eval ac_res=\$$as_CACHEVAR
6479
6791
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
6480
6792
  $as_echo "$ac_res" >&6; }
6481
6793
  if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then :
6482
- CWFLAGS="$CWFLAGS -Wnormalized=id"
6794
+ CWFLAGS="$CWFLAGS -Wno-unknown-pragmas"
6483
6795
  else
6484
6796
  :
6485
6797
  fi
6486
6798
 
6487
- as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Woverride-init" | $as_tr_sh`
6488
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Woverride-init" >&5
6489
- $as_echo_n "checking whether C compiler accepts $CWFLAGS -Woverride-init... " >&6; }
6799
+ as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wnormalized=id" | $as_tr_sh`
6800
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wnormalized=id" >&5
6801
+ $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wnormalized=id... " >&6; }
6490
6802
  if eval \${$as_CACHEVAR+:} false; then :
6491
6803
  $as_echo_n "(cached) " >&6
6492
6804
  else
6493
6805
 
6494
6806
  ax_check_save_flags=$CFLAGS
6495
- CFLAGS="$CFLAGS $CWFLAGS -Woverride-init"
6807
+ CFLAGS="$CFLAGS $CWFLAGS -Wnormalized=id"
6496
6808
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6497
6809
  /* end confdefs.h. */
6498
6810
  #include <stdio.h>
@@ -6516,20 +6828,20 @@ eval ac_res=\$$as_CACHEVAR
6516
6828
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
6517
6829
  $as_echo "$ac_res" >&6; }
6518
6830
  if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then :
6519
- CWFLAGS="$CWFLAGS -Woverride-init"
6831
+ CWFLAGS="$CWFLAGS -Wnormalized=id"
6520
6832
  else
6521
6833
  :
6522
6834
  fi
6523
6835
 
6524
- as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wparentheses" | $as_tr_sh`
6525
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wparentheses" >&5
6526
- $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wparentheses... " >&6; }
6836
+ as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CWFLAGS -Wnull-dereference" | $as_tr_sh`
6837
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CWFLAGS -Wnull-dereference" >&5
6838
+ $as_echo_n "checking whether C compiler accepts $CWFLAGS -Wnull-dereference... " >&6; }
6527
6839
  if eval \${$as_CACHEVAR+:} false; then :
6528
6840
  $as_echo_n "(cached) " >&6
6529
6841
  else
6530
6842
 
6531
6843
  ax_check_save_flags=$CFLAGS
6532
- CFLAGS="$CFLAGS $CWFLAGS -Wparentheses"
6844
+ CFLAGS="$CFLAGS $CWFLAGS -Wnull-dereference"
6533
6845
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6534
6846
  /* end confdefs.h. */
6535
6847
  #include <stdio.h>
@@ -6553,7 +6865,7 @@ eval ac_res=\$$as_CACHEVAR
6553
6865
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
6554
6866
  $as_echo "$ac_res" >&6; }
6555
6867
  if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then :
6556
- CWFLAGS="$CWFLAGS -Wparentheses"
6868
+ CWFLAGS="$CWFLAGS -Wnull-dereference"
6557
6869
  else
6558
6870
  :
6559
6871
  fi
@@ -14703,7 +15015,8 @@ fi
14703
15015
  int
14704
15016
  main ()
14705
15017
  {
14706
- __m128d x = _mm_setzero_pd();
15018
+ __m128d x = _mm_setzero_pd();
15019
+ __m128i y = _mm_srli_epi64(_mm_setzero_si128(), 26);
14707
15020
  ;
14708
15021
  return 0;
14709
15022
  }
@@ -15150,6 +15463,106 @@ else
15150
15463
  :
15151
15464
  fi
15152
15465
 
15466
+ else
15467
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
15468
+ $as_echo "no" >&6; }
15469
+ fi
15470
+ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
15471
+ CFLAGS="$oldcflags"
15472
+
15473
+ oldcflags="$CFLAGS"
15474
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -mavx2" >&5
15475
+ $as_echo_n "checking whether C compiler accepts -mavx2... " >&6; }
15476
+ if ${ax_cv_check_cflags___mavx2+:} false; then :
15477
+ $as_echo_n "(cached) " >&6
15478
+ else
15479
+
15480
+ ax_check_save_flags=$CFLAGS
15481
+ CFLAGS="$CFLAGS -mavx2"
15482
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15483
+ /* end confdefs.h. */
15484
+ #include <stdio.h>
15485
+ int
15486
+ main ()
15487
+ {
15488
+ char x[42U], fodder = 0;if (fodder > -1000 && fgets(x,1000,stdin)) puts(x)
15489
+ ;
15490
+ return 0;
15491
+ }
15492
+ _ACEOF
15493
+ if ac_fn_c_try_compile "$LINENO"; then :
15494
+ ax_cv_check_cflags___mavx2=yes
15495
+ else
15496
+ ax_cv_check_cflags___mavx2=no
15497
+ fi
15498
+ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
15499
+ CFLAGS=$ax_check_save_flags
15500
+ fi
15501
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___mavx2" >&5
15502
+ $as_echo "$ax_cv_check_cflags___mavx2" >&6; }
15503
+ if test "x$ax_cv_check_cflags___mavx2" = xyes; then :
15504
+ CFLAGS="$CFLAGS -mavx2"
15505
+ else
15506
+ :
15507
+ fi
15508
+
15509
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for AVX2 instructions set" >&5
15510
+ $as_echo_n "checking for AVX2 instructions set... " >&6; }
15511
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15512
+ /* end confdefs.h. */
15513
+
15514
+ #pragma GCC target("avx2")
15515
+ #include <immintrin.h>
15516
+
15517
+ int
15518
+ main ()
15519
+ {
15520
+ __m256i x = _mm256_abs_epi8(_mm256_setzero_si256());
15521
+ ;
15522
+ return 0;
15523
+ }
15524
+ _ACEOF
15525
+ if ac_fn_c_try_compile "$LINENO"; then :
15526
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
15527
+ $as_echo "yes" >&6; }
15528
+
15529
+ $as_echo "@%:@define HAVE_AVX2INTRIN_H 1" >>confdefs.h
15530
+
15531
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -mavx2" >&5
15532
+ $as_echo_n "checking whether C compiler accepts -mavx2... " >&6; }
15533
+ if ${ax_cv_check_cflags___mavx2+:} false; then :
15534
+ $as_echo_n "(cached) " >&6
15535
+ else
15536
+
15537
+ ax_check_save_flags=$CFLAGS
15538
+ CFLAGS="$CFLAGS -mavx2"
15539
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
15540
+ /* end confdefs.h. */
15541
+ #include <stdio.h>
15542
+ int
15543
+ main ()
15544
+ {
15545
+ char x[42U], fodder = 0;if (fodder > -1000 && fgets(x,1000,stdin)) puts(x)
15546
+ ;
15547
+ return 0;
15548
+ }
15549
+ _ACEOF
15550
+ if ac_fn_c_try_compile "$LINENO"; then :
15551
+ ax_cv_check_cflags___mavx2=yes
15552
+ else
15553
+ ax_cv_check_cflags___mavx2=no
15554
+ fi
15555
+ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
15556
+ CFLAGS=$ax_check_save_flags
15557
+ fi
15558
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___mavx2" >&5
15559
+ $as_echo "$ax_cv_check_cflags___mavx2" >&6; }
15560
+ if test "x$ax_cv_check_cflags___mavx2" = xyes; then :
15561
+ CFLAGS_AVX="-mavx2"
15562
+ else
15563
+ :
15564
+ fi
15565
+
15153
15566
  else
15154
15567
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
15155
15568
  $as_echo "no" >&6; }
@@ -15341,6 +15754,8 @@ fi
15341
15754
 
15342
15755
 
15343
15756
 
15757
+
15758
+
15344
15759
  for ac_header in sys/mman.h
15345
15760
  do :
15346
15761
  ac_fn_c_check_header_mongrel "$LINENO" "sys/mman.h" "ac_cv_header_sys_mman_h" "$ac_includes_default"
@@ -15397,6 +15812,13 @@ _ACEOF
15397
15812
  ;;
15398
15813
  esac
15399
15814
 
15815
+ case $host_cpu in @%:@(
15816
+ i?86|amd64|x86_64) :
15817
+ ac_cv_c_bigendian=no
15818
+ ;; @%:@(
15819
+ *) :
15820
+ ;;
15821
+ esac
15400
15822
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
15401
15823
  $as_echo_n "checking whether byte ordering is bigendian... " >&6; }
15402
15824
  if ${ac_cv_c_bigendian+:} false; then :
@@ -15615,11 +16037,11 @@ $as_echo "@%:@define NATIVE_BIG_ENDIAN 1" >>confdefs.h
15615
16037
  $as_echo "@%:@define NATIVE_LITTLE_ENDIAN 1" >>confdefs.h
15616
16038
  ;; #(
15617
16039
  universal)
15618
- as_fn_error $? "universal endianess is not supported - compile separately and use lipo(1)" "$LINENO" 5
16040
+ as_fn_error $? "universal endianness is not supported - compile separately and use lipo(1)" "$LINENO" 5
15619
16041
 
15620
16042
  ;; #(
15621
16043
  *)
15622
- as_fn_error $? "unknown endianess" "$LINENO" 5 ;;
16044
+ as_fn_error $? "unknown endianness" "$LINENO" 5 ;;
15623
16045
  esac
15624
16046
 
15625
16047
 
@@ -15861,6 +16283,94 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
15861
16283
  fi
15862
16284
 
15863
16285
 
16286
+ asm_hide_symbol="unsupported"
16287
+ if test "$enable_asm" != "no"; then :
16288
+
16289
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the .private_extern asm directive is supported" >&5
16290
+ $as_echo_n "checking if the .private_extern asm directive is supported... " >&6; }
16291
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16292
+ /* end confdefs.h. */
16293
+
16294
+ int
16295
+ main ()
16296
+ {
16297
+
16298
+ __asm__ __volatile__ (".private_extern dummy_symbol \n"
16299
+ ".private_extern _dummy_symbol \n"
16300
+ ".globl dummy_symbol \n"
16301
+ ".globl _dummy_symbol \n"
16302
+ "dummy_symbol: \n"
16303
+ "_dummy_symbol: \n"
16304
+ " nop \n"
16305
+ );
16306
+
16307
+ ;
16308
+ return 0;
16309
+ }
16310
+ _ACEOF
16311
+ if ac_fn_c_try_link "$LINENO"; then :
16312
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16313
+ $as_echo "yes" >&6; }
16314
+ asm_hide_symbol=".private_extern"
16315
+ else
16316
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16317
+ $as_echo "no" >&6; }
16318
+ fi
16319
+ rm -f core conftest.err conftest.$ac_objext \
16320
+ conftest$ac_exeext conftest.$ac_ext
16321
+
16322
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the .hidden asm directive is supported" >&5
16323
+ $as_echo_n "checking if the .hidden asm directive is supported... " >&6; }
16324
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16325
+ /* end confdefs.h. */
16326
+
16327
+ int
16328
+ main ()
16329
+ {
16330
+
16331
+ __asm__ __volatile__ (".hidden dummy_symbol \n"
16332
+ ".hidden _dummy_symbol \n"
16333
+ ".globl dummy_symbol \n"
16334
+ ".globl _dummy_symbol \n"
16335
+ "dummy_symbol: \n"
16336
+ "_dummy_symbol: \n"
16337
+ " nop \n"
16338
+ );
16339
+
16340
+ ;
16341
+ return 0;
16342
+ }
16343
+ _ACEOF
16344
+ if ac_fn_c_try_link "$LINENO"; then :
16345
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16346
+ $as_echo "yes" >&6; }
16347
+ if test "$asm_hide_symbol" = "unsupported"; then :
16348
+ asm_hide_symbol=".hidden"
16349
+ else
16350
+ { $as_echo "$as_me:${as_lineno-$LINENO}: unable to reliably tag symbols as private" >&5
16351
+ $as_echo "$as_me: unable to reliably tag symbols as private" >&6;}
16352
+ asm_hide_symbol="unsupported"
16353
+ fi
16354
+
16355
+ else
16356
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16357
+ $as_echo "no" >&6; }
16358
+ fi
16359
+ rm -f core conftest.err conftest.$ac_objext \
16360
+ conftest$ac_exeext conftest.$ac_ext
16361
+
16362
+ if test "$asm_hide_symbol" != "unsupported"; then :
16363
+
16364
+
16365
+ cat >>confdefs.h <<_ACEOF
16366
+ @%:@define ASM_HIDE_SYMBOL $asm_hide_symbol
16367
+ _ACEOF
16368
+
16369
+
16370
+ fi
16371
+
16372
+ fi
16373
+
15864
16374
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if weak symbols are supported" >&5
15865
16375
  $as_echo_n "checking if weak symbols are supported... " >&6; }
15866
16376
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -15895,7 +16405,7 @@ rm -f core conftest.err conftest.$ac_objext \
15895
16405
  $as_echo_n "checking if data alignment is required... " >&6; }
15896
16406
  aligned_access_required=yes
15897
16407
  case $host_cpu in @%:@(
15898
- i*86 | x86_64 | powerpc* | s390*) :
16408
+ i?86|amd64|x86_64|powerpc*|s390*) :
15899
16409
  aligned_access_required=no ;; @%:@(
15900
16410
  arm*) :
15901
16411
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -15980,7 +16490,7 @@ TEST_LDFLAGS=''
15980
16490
  if test "x$EMSCRIPTEN" != "x"; then :
15981
16491
 
15982
16492
  EXEEXT=.js
15983
- TEST_LDFLAGS='--memory-init-file 0 --pre-js pre.js.inc -s NO_BROWSER=1 -s RESERVED_FUNCTION_POINTERS=8'
16493
+ TEST_LDFLAGS='--memory-init-file 0 --pre-js pre.js.inc -s RESERVED_FUNCTION_POINTERS=8'
15984
16494
 
15985
16495
  fi
15986
16496
 
@@ -16524,6 +17034,10 @@ if test -z "${MINIMAL_TRUE}" && test -z "${MINIMAL_FALSE}"; then
16524
17034
  as_fn_error $? "conditional \"MINIMAL\" was never defined.
16525
17035
  Usually this means the macro was only invoked conditionally." "$LINENO" 5
16526
17036
  fi
17037
+ if test -z "${VALGRIND_ENABLED_TRUE}" && test -z "${VALGRIND_ENABLED_FALSE}"; then
17038
+ as_fn_error $? "conditional \"VALGRIND_ENABLED\" was never defined.
17039
+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
17040
+ fi
16527
17041
  if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
16528
17042
  as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
16529
17043
  Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -16953,7 +17467,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
16953
17467
  # report actual input values of CONFIG_FILES etc. instead of their
16954
17468
  # values after options handling.
16955
17469
  ac_log="
16956
- This file was extended by libsodium $as_me 1.0.8, which was
17470
+ This file was extended by libsodium $as_me 1.0.9, which was
16957
17471
  generated by GNU Autoconf 2.69. Invocation command line was
16958
17472
 
16959
17473
  CONFIG_FILES = $CONFIG_FILES
@@ -17011,7 +17525,7 @@ _ACEOF
17011
17525
  cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
17012
17526
  ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
17013
17527
  ac_cs_version="\\
17014
- libsodium config.status 1.0.8
17528
+ libsodium config.status 1.0.9
17015
17529
  configured by $0, generated by GNU Autoconf 2.69,
17016
17530
  with options \\"\$ac_cs_config\\"
17017
17531