rbnacl-libsodium 1.0.15.1 → 1.0.16

Sign up to get free protection for your applications and to get access to all the features.
Files changed (157) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +4 -6
  3. data/CHANGES.md +50 -42
  4. data/Gemfile +1 -1
  5. data/README.md +3 -1
  6. data/Rakefile +46 -0
  7. data/ext/rbnacl/extconf.rb +16 -1
  8. data/lib/rbnacl/libsodium.rb +16 -8
  9. data/lib/rbnacl/libsodium/version.rb +1 -1
  10. data/rbnacl-libsodium.gemspec +3 -0
  11. data/vendor/libsodium/AUTHORS +20 -5
  12. data/vendor/libsodium/ChangeLog +25 -0
  13. data/vendor/libsodium/Makefile.in +3 -1
  14. data/vendor/libsodium/README.markdown +2 -1
  15. data/vendor/libsodium/aclocal.m4 +1 -0
  16. data/vendor/libsodium/autom4te.cache/output.1 +836 -123
  17. data/vendor/libsodium/autom4te.cache/output.4 +21342 -0
  18. data/vendor/libsodium/autom4te.cache/requests +801 -554
  19. data/vendor/libsodium/autom4te.cache/traces.1 +717 -596
  20. data/vendor/libsodium/autom4te.cache/traces.4 +4355 -0
  21. data/vendor/libsodium/builds/Makefile.in +3 -1
  22. data/vendor/libsodium/builds/msvc/resource.h +1 -1
  23. data/vendor/libsodium/builds/msvc/resource.rc +2 -2
  24. data/vendor/libsodium/builds/msvc/version.h +2 -2
  25. data/vendor/libsodium/builds/msvc/vs2010/libsodium/libsodium.vcxproj +17 -8
  26. data/vendor/libsodium/builds/msvc/vs2010/libsodium/libsodium.vcxproj.filters +60 -24
  27. data/vendor/libsodium/builds/msvc/vs2012/libsodium/libsodium.vcxproj +17 -8
  28. data/vendor/libsodium/builds/msvc/vs2012/libsodium/libsodium.vcxproj.filters +60 -24
  29. data/vendor/libsodium/builds/msvc/vs2013/libsodium/libsodium.vcxproj +17 -8
  30. data/vendor/libsodium/builds/msvc/vs2013/libsodium/libsodium.vcxproj.filters +60 -24
  31. data/vendor/libsodium/builds/msvc/vs2015/libsodium/libsodium.vcxproj +17 -8
  32. data/vendor/libsodium/builds/msvc/vs2015/libsodium/libsodium.vcxproj.filters +60 -24
  33. data/vendor/libsodium/builds/msvc/vs2017/libsodium/libsodium.vcxproj +17 -8
  34. data/vendor/libsodium/builds/msvc/vs2017/libsodium/libsodium.vcxproj.filters +60 -24
  35. data/vendor/libsodium/configure +834 -121
  36. data/vendor/libsodium/configure.ac +55 -13
  37. data/vendor/libsodium/contrib/Findsodium.cmake +22 -3
  38. data/vendor/libsodium/contrib/Makefile.in +3 -1
  39. data/vendor/libsodium/dist-build/Makefile.in +3 -1
  40. data/vendor/libsodium/dist-build/android-build.sh +2 -2
  41. data/vendor/libsodium/dist-build/emscripten-symbols.def +38 -26
  42. data/vendor/libsodium/dist-build/emscripten.sh +23 -8
  43. data/vendor/libsodium/dist-build/msys2-win32.sh +1 -1
  44. data/vendor/libsodium/dist-build/msys2-win64.sh +1 -1
  45. data/vendor/libsodium/libsodium.vcxproj +17 -8
  46. data/vendor/libsodium/libsodium.vcxproj.filters +41 -14
  47. data/vendor/libsodium/m4/ax_tls.m4 +74 -0
  48. data/vendor/libsodium/msvc-scripts/Makefile.in +3 -1
  49. data/vendor/libsodium/msvc-scripts/process.bat +2 -2
  50. data/vendor/libsodium/packaging/dotnet-core/README.md +5 -5
  51. data/vendor/libsodium/packaging/dotnet-core/prepare.py +7 -7
  52. data/vendor/libsodium/packaging/nuget/package.config +1 -1
  53. data/vendor/libsodium/regen-msvc/libsodium.vcxproj +326 -0
  54. data/vendor/libsodium/regen-msvc/libsodium.vcxproj.filters +23 -0
  55. data/vendor/libsodium/regen-msvc/libsodium.vcxproj.filters.tpl +35 -0
  56. data/vendor/libsodium/regen-msvc/libsodium.vcxproj.tpl +93 -0
  57. data/vendor/libsodium/regen-msvc/regen-msvc.py +136 -0
  58. data/vendor/libsodium/regen-msvc/tl_libsodium.vcxproj.filters.tpl +23 -0
  59. data/vendor/libsodium/regen-msvc/tl_libsodium.vcxproj.tpl +331 -0
  60. data/vendor/libsodium/src/Makefile.in +3 -1
  61. data/vendor/libsodium/src/libsodium/Makefile.am +40 -24
  62. data/vendor/libsodium/src/libsodium/Makefile.in +238 -180
  63. data/vendor/libsodium/src/libsodium/crypto_aead/aes256gcm/aesni/aead_aes256gcm_aesni.c +10 -2
  64. data/vendor/libsodium/src/libsodium/crypto_core/ed25519/core_ed25519.c +79 -0
  65. data/vendor/libsodium/src/libsodium/crypto_core/ed25519/ref10/ed25519_ref10.c +2031 -0
  66. data/vendor/libsodium/src/libsodium/crypto_core/ed25519/ref10/fe_25_5/base.h +1344 -0
  67. data/vendor/libsodium/src/libsodium/crypto_core/ed25519/ref10/fe_25_5/base2.h +40 -0
  68. data/vendor/libsodium/src/libsodium/crypto_core/ed25519/ref10/fe_25_5/constants.h +20 -0
  69. data/vendor/libsodium/src/libsodium/crypto_core/ed25519/ref10/fe_25_5/fe.h +220 -0
  70. data/vendor/libsodium/src/libsodium/crypto_core/ed25519/ref10/fe_51/base.h +1344 -0
  71. data/vendor/libsodium/src/libsodium/crypto_core/ed25519/ref10/fe_51/base2.h +40 -0
  72. data/vendor/libsodium/src/libsodium/crypto_core/ed25519/ref10/fe_51/constants.h +21 -0
  73. data/vendor/libsodium/src/libsodium/crypto_core/ed25519/ref10/fe_51/fe.h +116 -0
  74. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2b/ref/blake2.h +1 -1
  75. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2b/ref/blake2b-compress-ref.c +2 -1
  76. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2b/ref/blake2b-ref.c +14 -82
  77. data/vendor/libsodium/src/libsodium/crypto_generichash/blake2b/ref/generichash_blake2b.c +1 -0
  78. data/vendor/libsodium/src/libsodium/crypto_hash/sha256/cp/hash_sha256_cp.c +3 -3
  79. data/vendor/libsodium/src/libsodium/crypto_hash/sha512/cp/hash_sha512_cp.c +3 -3
  80. data/vendor/libsodium/src/libsodium/crypto_onetimeauth/poly1305/donna/poly1305_donna64.h +1 -7
  81. data/vendor/libsodium/src/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305.c +1 -0
  82. data/vendor/libsodium/src/libsodium/crypto_onetimeauth/poly1305/sse2/poly1305_sse2.c +0 -6
  83. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2-core.c +19 -92
  84. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2-core.h +72 -4
  85. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2.c +5 -1
  86. data/vendor/libsodium/src/libsodium/crypto_pwhash/argon2/argon2.h +1 -1
  87. data/vendor/libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/scrypt_platform.c +10 -7
  88. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/ref10/x25519_ref10.c +108 -231
  89. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/ref10/x25519_ref10.h +1 -1
  90. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/curve25519_sandy2x.c +27 -27
  91. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/fe51_invert.c +2 -1
  92. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/sandy2x/fe_frombytes_sandy2x.c +6 -3
  93. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/scalarmult_curve25519.c +3 -11
  94. data/vendor/libsodium/src/libsodium/crypto_scalarmult/ed25519/ref10/scalarmult_ed25519_ref10.c +86 -0
  95. data/vendor/libsodium/src/libsodium/crypto_sign/ed25519/ref10/keypair.c +28 -26
  96. data/vendor/libsodium/src/libsodium/crypto_sign/ed25519/ref10/obsolete.c +32 -30
  97. data/vendor/libsodium/src/libsodium/crypto_sign/ed25519/ref10/open.c +14 -115
  98. data/vendor/libsodium/src/libsodium/crypto_sign/ed25519/ref10/sign.c +56 -13
  99. data/vendor/libsodium/src/libsodium/crypto_sign/ed25519/ref10/{ed25519_ref10.h → sign_ed25519_ref10.h} +2 -5
  100. data/vendor/libsodium/src/libsodium/crypto_sign/ed25519/sign_ed25519.c +1 -1
  101. data/vendor/libsodium/src/libsodium/crypto_stream/chacha20/stream_chacha20.c +1 -0
  102. data/vendor/libsodium/src/libsodium/crypto_stream/salsa20/stream_salsa20.c +1 -0
  103. data/vendor/libsodium/src/libsodium/crypto_stream/salsa20/xmm6int/u8.h +1 -1
  104. data/vendor/libsodium/src/libsodium/include/Makefile.am +2 -0
  105. data/vendor/libsodium/src/libsodium/include/Makefile.in +13 -9
  106. data/vendor/libsodium/src/libsodium/include/sodium.h +2 -0
  107. data/vendor/libsodium/src/libsodium/include/sodium/crypto_core_ed25519.h +37 -0
  108. data/vendor/libsodium/src/libsodium/include/sodium/crypto_scalarmult.h +8 -0
  109. data/vendor/libsodium/src/libsodium/include/sodium/crypto_scalarmult_curve25519.h +8 -0
  110. data/vendor/libsodium/src/libsodium/include/sodium/crypto_scalarmult_ed25519.h +41 -0
  111. data/vendor/libsodium/src/libsodium/include/sodium/private/common.h +18 -0
  112. data/vendor/libsodium/src/libsodium/include/sodium/private/ed25519_ref10.h +125 -0
  113. data/vendor/libsodium/src/libsodium/include/sodium/private/ed25519_ref10_fe_25_5.h +1050 -0
  114. data/vendor/libsodium/src/libsodium/include/sodium/private/ed25519_ref10_fe_51.h +518 -0
  115. data/vendor/libsodium/src/libsodium/include/sodium/runtime.h +3 -0
  116. data/vendor/libsodium/src/libsodium/include/sodium/utils.h +3 -0
  117. data/vendor/libsodium/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c +182 -102
  118. data/vendor/libsodium/src/libsodium/sodium/core.c +30 -2
  119. data/vendor/libsodium/src/libsodium/sodium/runtime.c +14 -0
  120. data/vendor/libsodium/src/libsodium/sodium/utils.c +46 -0
  121. data/vendor/libsodium/test/Makefile.in +3 -1
  122. data/vendor/libsodium/test/default/Makefile.am +16 -0
  123. data/vendor/libsodium/test/default/Makefile.in +71 -23
  124. data/vendor/libsodium/test/default/aead_aes256gcm.c +1 -1
  125. data/vendor/libsodium/test/default/cmptest.h +4 -0
  126. data/vendor/libsodium/test/default/core3.c +44 -4
  127. data/vendor/libsodium/test/default/core3.exp +2 -0
  128. data/vendor/libsodium/test/default/core4.c +1 -1
  129. data/vendor/libsodium/test/default/core_ed25519.c +151 -0
  130. data/vendor/libsodium/test/default/core_ed25519.exp +1 -0
  131. data/vendor/libsodium/test/default/ed25519_convert.c +9 -1
  132. data/vendor/libsodium/test/default/index.html.tpl +17 -3
  133. data/vendor/libsodium/test/default/kdf.c +4 -2
  134. data/vendor/libsodium/test/default/metamorphic.c +8 -8
  135. data/vendor/libsodium/test/default/misuse.c +29 -1
  136. data/vendor/libsodium/test/default/pwhash_argon2i.c +9 -3
  137. data/vendor/libsodium/test/default/pwhash_argon2i.exp +2 -2
  138. data/vendor/libsodium/test/default/pwhash_argon2id.c +7 -2
  139. data/vendor/libsodium/test/default/pwhash_argon2id.exp +2 -2
  140. data/vendor/libsodium/test/default/scalarmult.c +0 -2
  141. data/vendor/libsodium/test/default/scalarmult.exp +0 -1
  142. data/vendor/libsodium/test/default/scalarmult_ed25519.c +90 -0
  143. data/vendor/libsodium/test/default/scalarmult_ed25519.exp +1 -0
  144. data/vendor/libsodium/test/default/secretbox_easy2.c +1 -1
  145. data/vendor/libsodium/test/default/secretstream.c +52 -3
  146. data/vendor/libsodium/test/default/sign.c +16 -0
  147. data/vendor/libsodium/test/default/sodium_core.c +1 -0
  148. data/vendor/libsodium/test/default/sodium_utils.c +2 -1
  149. data/vendor/libsodium/test/default/xchacha20.c +2 -1
  150. metadata +63 -12
  151. data/vendor/libsodium/src/libsodium/crypto_core/curve25519/ref10/base.h +0 -1344
  152. data/vendor/libsodium/src/libsodium/crypto_core/curve25519/ref10/base2.h +0 -40
  153. data/vendor/libsodium/src/libsodium/crypto_core/curve25519/ref10/curve25519_ref10.c +0 -2797
  154. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/donna_c64/curve25519_donna_c64.c +0 -545
  155. data/vendor/libsodium/src/libsodium/crypto_scalarmult/curve25519/donna_c64/curve25519_donna_c64.h +0 -10
  156. data/vendor/libsodium/src/libsodium/include/sodium/private/curve25519_ref10.h +0 -132
  157. data/vendor/libsodium/test/default/index-wasm.html.tpl +0 -118
@@ -1,4 +1,5 @@
1
1
 
2
+ #include <assert.h>
2
3
  #include <stdlib.h>
3
4
  #include <string.h>
4
5
  #include <time.h>
@@ -36,6 +37,7 @@
36
37
  #endif
37
38
 
38
39
  static volatile int initialized;
40
+ static volatile int locked;
39
41
 
40
42
  int
41
43
  sodium_init(void)
@@ -98,6 +100,8 @@ sodium_crit_enter(void)
98
100
  return -1; /* LCOV_EXCL_LINE */
99
101
  }
100
102
  EnterCriticalSection(&_sodium_lock);
103
+ assert(locked == 0);
104
+ locked = 1;
101
105
 
102
106
  return 0;
103
107
  }
@@ -105,6 +109,13 @@ sodium_crit_enter(void)
105
109
  int
106
110
  sodium_crit_leave(void)
107
111
  {
112
+ if (locked == 0) {
113
+ # ifdef EPERM
114
+ errno = EPERM;
115
+ # endif
116
+ return -1;
117
+ }
118
+ locked = 0;
108
119
  LeaveCriticalSection(&_sodium_lock);
109
120
 
110
121
  return 0;
@@ -117,12 +128,28 @@ static pthread_mutex_t _sodium_lock = PTHREAD_MUTEX_INITIALIZER;
117
128
  int
118
129
  sodium_crit_enter(void)
119
130
  {
120
- return pthread_mutex_lock(&_sodium_lock);
131
+ int ret;
132
+
133
+ if ((ret = pthread_mutex_lock(&_sodium_lock)) == 0) {
134
+ assert(locked == 0);
135
+ locked = 1;
136
+ }
137
+ return ret;
121
138
  }
122
139
 
123
140
  int
124
141
  sodium_crit_leave(void)
125
142
  {
143
+ int ret;
144
+
145
+ if (locked == 0) {
146
+ # ifdef EPERM
147
+ errno = EPERM;
148
+ # endif
149
+ return -1;
150
+ }
151
+ locked = 0;
152
+
126
153
  return pthread_mutex_unlock(&_sodium_lock);
127
154
  }
128
155
 
@@ -178,9 +205,10 @@ sodium_misuse(void)
178
205
  {
179
206
  void (*handler)(void);
180
207
 
208
+ (void) sodium_crit_leave();
181
209
  if (sodium_crit_enter() == 0) {
182
210
  handler = _misuse_handler;
183
- if (sodium_crit_leave() == 0 && handler != NULL) {
211
+ if (handler != NULL) {
184
212
  handler();
185
213
  }
186
214
  }
@@ -19,6 +19,7 @@ typedef struct CPUFeatures_ {
19
19
  int has_avx512f;
20
20
  int has_pclmul;
21
21
  int has_aesni;
22
+ int has_rdrand;
22
23
  } CPUFeatures;
23
24
 
24
25
  static CPUFeatures _cpu_features;
@@ -34,6 +35,7 @@ static CPUFeatures _cpu_features;
34
35
  #define CPUID_ECX_XSAVE 0x04000000
35
36
  #define CPUID_ECX_OSXSAVE 0x08000000
36
37
  #define CPUID_ECX_AVX 0x10000000
38
+ #define CPUID_ECX_RDRAND 0x40000000
37
39
 
38
40
  #define CPUID_EDX_SSE2 0x04000000
39
41
 
@@ -196,6 +198,12 @@ _sodium_runtime_intel_cpu_features(CPUFeatures * const cpu_features)
196
198
  cpu_features->has_aesni = 0;
197
199
  #endif
198
200
 
201
+ #ifdef HAVE_RDRAND
202
+ cpu_features->has_rdrand = ((cpu_info[2] & CPUID_ECX_RDRAND) != 0x0);
203
+ #else
204
+ cpu_features->has_rdrand = 0;
205
+ #endif
206
+
199
207
  return 0;
200
208
  }
201
209
 
@@ -270,3 +278,9 @@ sodium_runtime_has_aesni(void)
270
278
  {
271
279
  return _cpu_features.has_aesni;
272
280
  }
281
+
282
+ int
283
+ sodium_runtime_has_rdrand(void)
284
+ {
285
+ return _cpu_features.has_rdrand;
286
+ }
@@ -21,6 +21,27 @@
21
21
  # include <unistd.h>
22
22
  #endif
23
23
 
24
+ #ifndef HAVE_C_VARARRAYS
25
+ # ifdef HAVE_ALLOCA_H
26
+ # include <alloca.h>
27
+ # elif !defined(alloca)
28
+ # if defined(__GNUC__)
29
+ # define alloca __builtin_alloca
30
+ # elif defined _AIX
31
+ # define alloca __alloca
32
+ # elif defined _MSC_VER
33
+ # include <malloc.h>
34
+ # define alloca _alloca
35
+ # else
36
+ # include <stddef.h>
37
+ # ifdef __cplusplus
38
+ extern "C"
39
+ # endif
40
+ void *alloca (size_t);
41
+ # endif
42
+ # endif
43
+ #endif
44
+
24
45
  #include "core.h"
25
46
  #include "randombytes.h"
26
47
  #include "utils.h"
@@ -66,6 +87,9 @@ static unsigned char canary[CANARY_SIZE];
66
87
  /* LCOV_EXCL_START */
67
88
  #ifdef HAVE_WEAK_SYMBOLS
68
89
  __attribute__((weak)) void
90
+ _sodium_dummy_symbol_to_prevent_memzero_lto(void *const pnt,
91
+ const size_t len);
92
+ __attribute__((weak)) void
69
93
  _sodium_dummy_symbol_to_prevent_memzero_lto(void *const pnt,
70
94
  const size_t len)
71
95
  {
@@ -89,6 +113,9 @@ sodium_memzero(void *const pnt, const size_t len)
89
113
  #elif HAVE_WEAK_SYMBOLS
90
114
  memset(pnt, 0, len);
91
115
  _sodium_dummy_symbol_to_prevent_memzero_lto(pnt, len);
116
+ # ifdef HAVE_AMD64_ASM
117
+ __asm__ __volatile__ ("" : : "p"(pnt));
118
+ # endif
92
119
  #else
93
120
  volatile unsigned char *volatile pnt_ =
94
121
  (volatile unsigned char *volatile) pnt;
@@ -100,8 +127,23 @@ sodium_memzero(void *const pnt, const size_t len)
100
127
  #endif
101
128
  }
102
129
 
130
+ void
131
+ sodium_stackzero(const size_t len)
132
+ {
133
+ #ifdef HAVE_C_VARARRAYS
134
+ unsigned char fodder[len];
135
+ sodium_memzero(fodder, len);
136
+ #elif HAVE_ALLOCA
137
+ sodium_memzero(alloca(len), len);
138
+ #endif
139
+ }
140
+
103
141
  #ifdef HAVE_WEAK_SYMBOLS
104
142
  __attribute__((weak)) void
143
+ _sodium_dummy_symbol_to_prevent_memcmp_lto(const unsigned char *b1,
144
+ const unsigned char *b2,
145
+ const size_t len);
146
+ __attribute__((weak)) void
105
147
  _sodium_dummy_symbol_to_prevent_memcmp_lto(const unsigned char *b1,
106
148
  const unsigned char *b2,
107
149
  const size_t len)
@@ -138,6 +180,10 @@ sodium_memcmp(const void *const b1_, const void *const b2_, size_t len)
138
180
 
139
181
  #ifdef HAVE_WEAK_SYMBOLS
140
182
  __attribute__((weak)) void
183
+ _sodium_dummy_symbol_to_prevent_compare_lto(const unsigned char *b1,
184
+ const unsigned char *b2,
185
+ const size_t len);
186
+ __attribute__((weak)) void
141
187
  _sodium_dummy_symbol_to_prevent_compare_lto(const unsigned char *b1,
142
188
  const unsigned char *b2,
143
189
  const size_t len)
@@ -94,7 +94,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_catchable_abrt.m4 \
94
94
  $(top_srcdir)/m4/ax_check_compile_flag.m4 \
95
95
  $(top_srcdir)/m4/ax_check_define.m4 \
96
96
  $(top_srcdir)/m4/ax_check_link_flag.m4 \
97
- $(top_srcdir)/m4/ax_pthread.m4 \
97
+ $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/ax_tls.m4 \
98
98
  $(top_srcdir)/m4/ax_valgrind_check.m4 \
99
99
  $(top_srcdir)/m4/ld-output-def.m4 $(top_srcdir)/m4/libtool.m4 \
100
100
  $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
@@ -189,6 +189,7 @@ am__relativize = \
189
189
  done; \
190
190
  reldir="$$dir2"
191
191
  ACLOCAL = @ACLOCAL@
192
+ ALLOCA = @ALLOCA@
192
193
  AMTAR = @AMTAR@
193
194
  AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
194
195
  AR = @AR@
@@ -209,6 +210,7 @@ CFLAGS_AVX2 = @CFLAGS_AVX2@
209
210
  CFLAGS_AVX512F = @CFLAGS_AVX512F@
210
211
  CFLAGS_MMX = @CFLAGS_MMX@
211
212
  CFLAGS_PCLMUL = @CFLAGS_PCLMUL@
213
+ CFLAGS_RDRAND = @CFLAGS_RDRAND@
212
214
  CFLAGS_SSE2 = @CFLAGS_SSE2@
213
215
  CFLAGS_SSE3 = @CFLAGS_SSE3@
214
216
  CFLAGS_SSE41 = @CFLAGS_SSE41@
@@ -22,6 +22,7 @@ EXTRA_DIST = \
22
22
  box_seed.exp \
23
23
  chacha20.exp \
24
24
  codecs.exp \
25
+ core_ed25519.exp \
25
26
  core1.exp \
26
27
  core2.exp \
27
28
  core3.exp \
@@ -49,6 +50,7 @@ EXTRA_DIST = \
49
50
  pwhash_scrypt_ll.exp \
50
51
  randombytes.exp \
51
52
  scalarmult.exp \
53
+ scalarmult_ed25519.exp \
52
54
  scalarmult2.exp \
53
55
  scalarmult5.exp \
54
56
  scalarmult6.exp \
@@ -95,6 +97,7 @@ DISTCLEANFILES = \
95
97
  box_seed.res \
96
98
  chacha20.res \
97
99
  codecs.res \
100
+ core_ed25519.res \
98
101
  core1.res \
99
102
  core2.res \
100
103
  core3.res \
@@ -122,6 +125,7 @@ DISTCLEANFILES = \
122
125
  pwhash_scrypt_ll.res \
123
126
  randombytes.res \
124
127
  scalarmult.res \
128
+ scalarmult_ed25519.res \
125
129
  scalarmult2.res \
126
130
  scalarmult5.res \
127
131
  scalarmult6.res \
@@ -169,6 +173,7 @@ CLEANFILES = \
169
173
  box_seed.final \
170
174
  chacha20.final \
171
175
  codecs.final \
176
+ core_ed25519.final \
172
177
  core1.final \
173
178
  core2.final \
174
179
  core3.final \
@@ -196,6 +201,7 @@ CLEANFILES = \
196
201
  pwhash_scrypt_ll.final \
197
202
  randombytes.final \
198
203
  scalarmult.final \
204
+ scalarmult_ed25519.final \
199
205
  scalarmult2.final \
200
206
  scalarmult5.final \
201
207
  scalarmult6.final \
@@ -238,6 +244,7 @@ CLEANFILES = \
238
244
  box_seed.nexe \
239
245
  chacha20.nexe \
240
246
  codecs.nexe \
247
+ core_ed25519.nexe \
241
248
  core1.nexe \
242
249
  core2.nexe \
243
250
  core3.nexe \
@@ -265,6 +272,7 @@ CLEANFILES = \
265
272
  pwhash_scrypt_ll.nexe \
266
273
  randombytes.nexe \
267
274
  scalarmult.nexe \
275
+ scalarmult_ed25519.nexe \
268
276
  scalarmult2.nexe \
269
277
  scalarmult5.nexe \
270
278
  scalarmult6.nexe \
@@ -438,6 +446,9 @@ chacha20_LDADD = $(TESTS_LDADD)
438
446
  codecs_SOURCE = cmptest.h codecs.c
439
447
  codecs_LDADD = $(TESTS_LDADD)
440
448
 
449
+ core_ed25519_SOURCE = cmptest.h core_ed25519.c
450
+ core_ed25519_LDADD = $(TESTS_LDADD)
451
+
441
452
  core1_SOURCE = cmptest.h core1.c
442
453
  core1_LDADD = $(TESTS_LDADD)
443
454
 
@@ -516,6 +527,9 @@ randombytes_LDADD = $(TESTS_LDADD)
516
527
  scalarmult_SOURCE = cmptest.h scalarmult.c
517
528
  scalarmult_LDADD = $(TESTS_LDADD)
518
529
 
530
+ scalarmult_ed25519_SOURCE = cmptest.h scalarmult_ed25519.c
531
+ scalarmult_ed25519_LDADD = $(TESTS_LDADD)
532
+
519
533
  scalarmult2_SOURCE = cmptest.h scalarmult2.c
520
534
  scalarmult2_LDADD = $(TESTS_LDADD)
521
535
 
@@ -593,8 +607,10 @@ xchacha20_LDADD = $(TESTS_LDADD)
593
607
 
594
608
  if !MINIMAL
595
609
  TESTS_TARGETS += \
610
+ core_ed25519 \
596
611
  pwhash_scrypt \
597
612
  pwhash_scrypt_ll \
613
+ scalarmult_ed25519 \
598
614
  siphashx24 \
599
615
  xchacha20
600
616
  endif
@@ -94,8 +94,10 @@ host_triplet = @host@
94
94
  check_PROGRAMS = $(am__EXEEXT_3)
95
95
  TESTS = $(am__EXEEXT_3)
96
96
  @MINIMAL_FALSE@am__append_2 = \
97
+ @MINIMAL_FALSE@ core_ed25519 \
97
98
  @MINIMAL_FALSE@ pwhash_scrypt \
98
99
  @MINIMAL_FALSE@ pwhash_scrypt_ll \
100
+ @MINIMAL_FALSE@ scalarmult_ed25519 \
99
101
  @MINIMAL_FALSE@ siphashx24 \
100
102
  @MINIMAL_FALSE@ xchacha20
101
103
 
@@ -106,7 +108,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_catchable_abrt.m4 \
106
108
  $(top_srcdir)/m4/ax_check_compile_flag.m4 \
107
109
  $(top_srcdir)/m4/ax_check_define.m4 \
108
110
  $(top_srcdir)/m4/ax_check_link_flag.m4 \
109
- $(top_srcdir)/m4/ax_pthread.m4 \
111
+ $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/ax_tls.m4 \
110
112
  $(top_srcdir)/m4/ax_valgrind_check.m4 \
111
113
  $(top_srcdir)/m4/ld-output-def.m4 $(top_srcdir)/m4/libtool.m4 \
112
114
  $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
@@ -121,8 +123,10 @@ CONFIG_CLEAN_VPATH_FILES =
121
123
  @EMSCRIPTEN_FALSE@@NATIVECLIENT_FALSE@am__EXEEXT_1 = \
122
124
  @EMSCRIPTEN_FALSE@@NATIVECLIENT_FALSE@ sodium_utils2$(EXEEXT) \
123
125
  @EMSCRIPTEN_FALSE@@NATIVECLIENT_FALSE@ sodium_utils3$(EXEEXT)
124
- @MINIMAL_FALSE@am__EXEEXT_2 = pwhash_scrypt$(EXEEXT) \
125
- @MINIMAL_FALSE@ pwhash_scrypt_ll$(EXEEXT) siphashx24$(EXEEXT) \
126
+ @MINIMAL_FALSE@am__EXEEXT_2 = core_ed25519$(EXEEXT) \
127
+ @MINIMAL_FALSE@ pwhash_scrypt$(EXEEXT) \
128
+ @MINIMAL_FALSE@ pwhash_scrypt_ll$(EXEEXT) \
129
+ @MINIMAL_FALSE@ scalarmult_ed25519$(EXEEXT) siphashx24$(EXEEXT) \
126
130
  @MINIMAL_FALSE@ xchacha20$(EXEEXT)
127
131
  am__EXEEXT_3 = aead_aes256gcm$(EXEEXT) aead_chacha20poly1305$(EXEEXT) \
128
132
  aead_xchacha20poly1305$(EXEEXT) auth$(EXEEXT) auth2$(EXEEXT) \
@@ -226,6 +230,9 @@ core5_DEPENDENCIES = $(TESTS_LDADD)
226
230
  core6_SOURCES = core6.c
227
231
  core6_OBJECTS = core6.$(OBJEXT)
228
232
  core6_DEPENDENCIES = $(TESTS_LDADD)
233
+ core_ed25519_SOURCES = core_ed25519.c
234
+ core_ed25519_OBJECTS = core_ed25519.$(OBJEXT)
235
+ core_ed25519_DEPENDENCIES = $(TESTS_LDADD)
229
236
  ed25519_convert_SOURCES = ed25519_convert.c
230
237
  ed25519_convert_OBJECTS = ed25519_convert.$(OBJEXT)
231
238
  ed25519_convert_DEPENDENCIES = $(TESTS_LDADD)
@@ -298,6 +305,9 @@ scalarmult6_DEPENDENCIES = $(TESTS_LDADD)
298
305
  scalarmult7_SOURCES = scalarmult7.c
299
306
  scalarmult7_OBJECTS = scalarmult7.$(OBJEXT)
300
307
  scalarmult7_DEPENDENCIES = $(TESTS_LDADD)
308
+ scalarmult_ed25519_SOURCES = scalarmult_ed25519.c
309
+ scalarmult_ed25519_OBJECTS = scalarmult_ed25519.$(OBJEXT)
310
+ scalarmult_ed25519_DEPENDENCIES = $(TESTS_LDADD)
301
311
  secretbox_SOURCES = secretbox.c
302
312
  secretbox_OBJECTS = secretbox.$(OBJEXT)
303
313
  secretbox_DEPENDENCIES = $(TESTS_LDADD)
@@ -399,34 +409,34 @@ SOURCES = aead_aes256gcm.c aead_chacha20poly1305.c \
399
409
  aead_xchacha20poly1305.c auth.c auth2.c auth3.c auth5.c \
400
410
  auth6.c auth7.c box.c box2.c box7.c box8.c box_easy.c \
401
411
  box_easy2.c box_seal.c box_seed.c chacha20.c codecs.c core1.c \
402
- core2.c core3.c core4.c core5.c core6.c ed25519_convert.c \
403
- generichash.c generichash2.c generichash3.c hash.c hash3.c \
404
- kdf.c keygen.c kx.c metamorphic.c misuse.c onetimeauth.c \
405
- onetimeauth2.c onetimeauth7.c pwhash_argon2i.c \
412
+ core2.c core3.c core4.c core5.c core6.c core_ed25519.c \
413
+ ed25519_convert.c generichash.c generichash2.c generichash3.c \
414
+ hash.c hash3.c kdf.c keygen.c kx.c metamorphic.c misuse.c \
415
+ onetimeauth.c onetimeauth2.c onetimeauth7.c pwhash_argon2i.c \
406
416
  pwhash_argon2id.c pwhash_scrypt.c pwhash_scrypt_ll.c \
407
417
  randombytes.c scalarmult.c scalarmult2.c scalarmult5.c \
408
- scalarmult6.c scalarmult7.c secretbox.c secretbox2.c \
409
- secretbox7.c secretbox8.c secretbox_easy.c secretbox_easy2.c \
410
- secretstream.c shorthash.c sign.c siphashx24.c sodium_core.c \
411
- sodium_utils.c sodium_utils2.c sodium_utils3.c \
412
- sodium_version.c stream.c stream2.c stream3.c stream4.c \
413
- verify1.c xchacha20.c
418
+ scalarmult6.c scalarmult7.c scalarmult_ed25519.c secretbox.c \
419
+ secretbox2.c secretbox7.c secretbox8.c secretbox_easy.c \
420
+ secretbox_easy2.c secretstream.c shorthash.c sign.c \
421
+ siphashx24.c sodium_core.c sodium_utils.c sodium_utils2.c \
422
+ sodium_utils3.c sodium_version.c stream.c stream2.c stream3.c \
423
+ stream4.c verify1.c xchacha20.c
414
424
  DIST_SOURCES = aead_aes256gcm.c aead_chacha20poly1305.c \
415
425
  aead_xchacha20poly1305.c auth.c auth2.c auth3.c auth5.c \
416
426
  auth6.c auth7.c box.c box2.c box7.c box8.c box_easy.c \
417
427
  box_easy2.c box_seal.c box_seed.c chacha20.c codecs.c core1.c \
418
- core2.c core3.c core4.c core5.c core6.c ed25519_convert.c \
419
- generichash.c generichash2.c generichash3.c hash.c hash3.c \
420
- kdf.c keygen.c kx.c metamorphic.c misuse.c onetimeauth.c \
421
- onetimeauth2.c onetimeauth7.c pwhash_argon2i.c \
428
+ core2.c core3.c core4.c core5.c core6.c core_ed25519.c \
429
+ ed25519_convert.c generichash.c generichash2.c generichash3.c \
430
+ hash.c hash3.c kdf.c keygen.c kx.c metamorphic.c misuse.c \
431
+ onetimeauth.c onetimeauth2.c onetimeauth7.c pwhash_argon2i.c \
422
432
  pwhash_argon2id.c pwhash_scrypt.c pwhash_scrypt_ll.c \
423
433
  randombytes.c scalarmult.c scalarmult2.c scalarmult5.c \
424
- scalarmult6.c scalarmult7.c secretbox.c secretbox2.c \
425
- secretbox7.c secretbox8.c secretbox_easy.c secretbox_easy2.c \
426
- secretstream.c shorthash.c sign.c siphashx24.c sodium_core.c \
427
- sodium_utils.c sodium_utils2.c sodium_utils3.c \
428
- sodium_version.c stream.c stream2.c stream3.c stream4.c \
429
- verify1.c xchacha20.c
434
+ scalarmult6.c scalarmult7.c scalarmult_ed25519.c secretbox.c \
435
+ secretbox2.c secretbox7.c secretbox8.c secretbox_easy.c \
436
+ secretbox_easy2.c secretstream.c shorthash.c sign.c \
437
+ siphashx24.c sodium_core.c sodium_utils.c sodium_utils2.c \
438
+ sodium_utils3.c sodium_version.c stream.c stream2.c stream3.c \
439
+ stream4.c verify1.c xchacha20.c
430
440
  am__can_run_installinfo = \
431
441
  case $$AM_UPDATE_INFO_DIR in \
432
442
  n|no|NO) false;; \
@@ -660,6 +670,7 @@ am__DIST_COMMON = $(srcdir)/Makefile.in \
660
670
  $(top_srcdir)/build-aux/test-driver
661
671
  DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
662
672
  ACLOCAL = @ACLOCAL@
673
+ ALLOCA = @ALLOCA@
663
674
  AMTAR = @AMTAR@
664
675
  AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
665
676
  AR = @AR@
@@ -680,6 +691,7 @@ CFLAGS_AVX2 = @CFLAGS_AVX2@
680
691
  CFLAGS_AVX512F = @CFLAGS_AVX512F@
681
692
  CFLAGS_MMX = @CFLAGS_MMX@
682
693
  CFLAGS_PCLMUL = @CFLAGS_PCLMUL@
694
+ CFLAGS_RDRAND = @CFLAGS_RDRAND@
683
695
  CFLAGS_SSE2 = @CFLAGS_SSE2@
684
696
  CFLAGS_SSE3 = @CFLAGS_SSE3@
685
697
  CFLAGS_SSE41 = @CFLAGS_SSE41@
@@ -839,6 +851,7 @@ EXTRA_DIST = \
839
851
  box_seed.exp \
840
852
  chacha20.exp \
841
853
  codecs.exp \
854
+ core_ed25519.exp \
842
855
  core1.exp \
843
856
  core2.exp \
844
857
  core3.exp \
@@ -866,6 +879,7 @@ EXTRA_DIST = \
866
879
  pwhash_scrypt_ll.exp \
867
880
  randombytes.exp \
868
881
  scalarmult.exp \
882
+ scalarmult_ed25519.exp \
869
883
  scalarmult2.exp \
870
884
  scalarmult5.exp \
871
885
  scalarmult6.exp \
@@ -912,6 +926,7 @@ DISTCLEANFILES = \
912
926
  box_seed.res \
913
927
  chacha20.res \
914
928
  codecs.res \
929
+ core_ed25519.res \
915
930
  core1.res \
916
931
  core2.res \
917
932
  core3.res \
@@ -939,6 +954,7 @@ DISTCLEANFILES = \
939
954
  pwhash_scrypt_ll.res \
940
955
  randombytes.res \
941
956
  scalarmult.res \
957
+ scalarmult_ed25519.res \
942
958
  scalarmult2.res \
943
959
  scalarmult5.res \
944
960
  scalarmult6.res \
@@ -985,6 +1001,7 @@ DISTCLEANFILES = \
985
1001
  @NATIVECLIENT_TRUE@ box_seed.final \
986
1002
  @NATIVECLIENT_TRUE@ chacha20.final \
987
1003
  @NATIVECLIENT_TRUE@ codecs.final \
1004
+ @NATIVECLIENT_TRUE@ core_ed25519.final \
988
1005
  @NATIVECLIENT_TRUE@ core1.final \
989
1006
  @NATIVECLIENT_TRUE@ core2.final \
990
1007
  @NATIVECLIENT_TRUE@ core3.final \
@@ -1012,6 +1029,7 @@ DISTCLEANFILES = \
1012
1029
  @NATIVECLIENT_TRUE@ pwhash_scrypt_ll.final \
1013
1030
  @NATIVECLIENT_TRUE@ randombytes.final \
1014
1031
  @NATIVECLIENT_TRUE@ scalarmult.final \
1032
+ @NATIVECLIENT_TRUE@ scalarmult_ed25519.final \
1015
1033
  @NATIVECLIENT_TRUE@ scalarmult2.final \
1016
1034
  @NATIVECLIENT_TRUE@ scalarmult5.final \
1017
1035
  @NATIVECLIENT_TRUE@ scalarmult6.final \
@@ -1054,6 +1072,7 @@ DISTCLEANFILES = \
1054
1072
  @NATIVECLIENT_TRUE@ box_seed.nexe \
1055
1073
  @NATIVECLIENT_TRUE@ chacha20.nexe \
1056
1074
  @NATIVECLIENT_TRUE@ codecs.nexe \
1075
+ @NATIVECLIENT_TRUE@ core_ed25519.nexe \
1057
1076
  @NATIVECLIENT_TRUE@ core1.nexe \
1058
1077
  @NATIVECLIENT_TRUE@ core2.nexe \
1059
1078
  @NATIVECLIENT_TRUE@ core3.nexe \
@@ -1081,6 +1100,7 @@ DISTCLEANFILES = \
1081
1100
  @NATIVECLIENT_TRUE@ pwhash_scrypt_ll.nexe \
1082
1101
  @NATIVECLIENT_TRUE@ randombytes.nexe \
1083
1102
  @NATIVECLIENT_TRUE@ scalarmult.nexe \
1103
+ @NATIVECLIENT_TRUE@ scalarmult_ed25519.nexe \
1084
1104
  @NATIVECLIENT_TRUE@ scalarmult2.nexe \
1085
1105
  @NATIVECLIENT_TRUE@ scalarmult5.nexe \
1086
1106
  @NATIVECLIENT_TRUE@ scalarmult6.nexe \
@@ -1167,6 +1187,8 @@ chacha20_SOURCE = cmptest.h chacha20.c
1167
1187
  chacha20_LDADD = $(TESTS_LDADD)
1168
1188
  codecs_SOURCE = cmptest.h codecs.c
1169
1189
  codecs_LDADD = $(TESTS_LDADD)
1190
+ core_ed25519_SOURCE = cmptest.h core_ed25519.c
1191
+ core_ed25519_LDADD = $(TESTS_LDADD)
1170
1192
  core1_SOURCE = cmptest.h core1.c
1171
1193
  core1_LDADD = $(TESTS_LDADD)
1172
1194
  core2_SOURCE = cmptest.h core2.c
@@ -1219,6 +1241,8 @@ randombytes_SOURCE = cmptest.h randombytes.c
1219
1241
  randombytes_LDADD = $(TESTS_LDADD)
1220
1242
  scalarmult_SOURCE = cmptest.h scalarmult.c
1221
1243
  scalarmult_LDADD = $(TESTS_LDADD)
1244
+ scalarmult_ed25519_SOURCE = cmptest.h scalarmult_ed25519.c
1245
+ scalarmult_ed25519_LDADD = $(TESTS_LDADD)
1222
1246
  scalarmult2_SOURCE = cmptest.h scalarmult2.c
1223
1247
  scalarmult2_LDADD = $(TESTS_LDADD)
1224
1248
  scalarmult5_SOURCE = cmptest.h scalarmult5.c
@@ -1413,6 +1437,10 @@ core6$(EXEEXT): $(core6_OBJECTS) $(core6_DEPENDENCIES) $(EXTRA_core6_DEPENDENCIE
1413
1437
  @rm -f core6$(EXEEXT)
1414
1438
  $(AM_V_CCLD)$(LINK) $(core6_OBJECTS) $(core6_LDADD) $(LIBS)
1415
1439
 
1440
+ core_ed25519$(EXEEXT): $(core_ed25519_OBJECTS) $(core_ed25519_DEPENDENCIES) $(EXTRA_core_ed25519_DEPENDENCIES)
1441
+ @rm -f core_ed25519$(EXEEXT)
1442
+ $(AM_V_CCLD)$(LINK) $(core_ed25519_OBJECTS) $(core_ed25519_LDADD) $(LIBS)
1443
+
1416
1444
  ed25519_convert$(EXEEXT): $(ed25519_convert_OBJECTS) $(ed25519_convert_DEPENDENCIES) $(EXTRA_ed25519_convert_DEPENDENCIES)
1417
1445
  @rm -f ed25519_convert$(EXEEXT)
1418
1446
  $(AM_V_CCLD)$(LINK) $(ed25519_convert_OBJECTS) $(ed25519_convert_LDADD) $(LIBS)
@@ -1509,6 +1537,10 @@ scalarmult7$(EXEEXT): $(scalarmult7_OBJECTS) $(scalarmult7_DEPENDENCIES) $(EXTRA
1509
1537
  @rm -f scalarmult7$(EXEEXT)
1510
1538
  $(AM_V_CCLD)$(LINK) $(scalarmult7_OBJECTS) $(scalarmult7_LDADD) $(LIBS)
1511
1539
 
1540
+ scalarmult_ed25519$(EXEEXT): $(scalarmult_ed25519_OBJECTS) $(scalarmult_ed25519_DEPENDENCIES) $(EXTRA_scalarmult_ed25519_DEPENDENCIES)
1541
+ @rm -f scalarmult_ed25519$(EXEEXT)
1542
+ $(AM_V_CCLD)$(LINK) $(scalarmult_ed25519_OBJECTS) $(scalarmult_ed25519_LDADD) $(LIBS)
1543
+
1512
1544
  secretbox$(EXEEXT): $(secretbox_OBJECTS) $(secretbox_DEPENDENCIES) $(EXTRA_secretbox_DEPENDENCIES)
1513
1545
  @rm -f secretbox$(EXEEXT)
1514
1546
  $(AM_V_CCLD)$(LINK) $(secretbox_OBJECTS) $(secretbox_LDADD) $(LIBS)
@@ -1624,6 +1656,7 @@ distclean-compile:
1624
1656
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/core4.Po@am__quote@
1625
1657
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/core5.Po@am__quote@
1626
1658
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/core6.Po@am__quote@
1659
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/core_ed25519.Po@am__quote@
1627
1660
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ed25519_convert.Po@am__quote@
1628
1661
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/generichash.Po@am__quote@
1629
1662
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/generichash2.Po@am__quote@
@@ -1648,6 +1681,7 @@ distclean-compile:
1648
1681
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scalarmult5.Po@am__quote@
1649
1682
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scalarmult6.Po@am__quote@
1650
1683
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scalarmult7.Po@am__quote@
1684
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scalarmult_ed25519.Po@am__quote@
1651
1685
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/secretbox.Po@am__quote@
1652
1686
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/secretbox2.Po@am__quote@
1653
1687
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/secretbox7.Po@am__quote@
@@ -2355,6 +2389,13 @@ sodium_utils3.log: sodium_utils3$(EXEEXT)
2355
2389
  --log-file $$b.log --trs-file $$b.trs \
2356
2390
  $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
2357
2391
  "$$tst" $(AM_TESTS_FD_REDIRECT)
2392
+ core_ed25519.log: core_ed25519$(EXEEXT)
2393
+ @p='core_ed25519$(EXEEXT)'; \
2394
+ b='core_ed25519'; \
2395
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
2396
+ --log-file $$b.log --trs-file $$b.trs \
2397
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
2398
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
2358
2399
  pwhash_scrypt.log: pwhash_scrypt$(EXEEXT)
2359
2400
  @p='pwhash_scrypt$(EXEEXT)'; \
2360
2401
  b='pwhash_scrypt'; \
@@ -2369,6 +2410,13 @@ pwhash_scrypt_ll.log: pwhash_scrypt_ll$(EXEEXT)
2369
2410
  --log-file $$b.log --trs-file $$b.trs \
2370
2411
  $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
2371
2412
  "$$tst" $(AM_TESTS_FD_REDIRECT)
2413
+ scalarmult_ed25519.log: scalarmult_ed25519$(EXEEXT)
2414
+ @p='scalarmult_ed25519$(EXEEXT)'; \
2415
+ b='scalarmult_ed25519'; \
2416
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
2417
+ --log-file $$b.log --trs-file $$b.trs \
2418
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
2419
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
2372
2420
  siphashx24.log: siphashx24$(EXEEXT)
2373
2421
  @p='siphashx24$(EXEEXT)'; \
2374
2422
  b='siphashx24'; \