Merge branch 'maint-0.2.8' into release-0.2.8
This commit is contained in:
commit
9d199893fe
|
@ -0,0 +1,3 @@
|
||||||
|
o Minor bugfixes (compilation):
|
||||||
|
- When libscrypt.h is found, but no libscrypt library can be linked,
|
||||||
|
treat libscrypt as absent. Fixes bug 19161; bugfix on 0.2.6.1-alpha.
|
|
@ -833,6 +833,7 @@ dnl Check for libscrypt
|
||||||
if test "x$enable_libscrypt" != "xno"; then
|
if test "x$enable_libscrypt" != "xno"; then
|
||||||
AC_CHECK_HEADERS([libscrypt.h])
|
AC_CHECK_HEADERS([libscrypt.h])
|
||||||
AC_SEARCH_LIBS(libscrypt_scrypt, [scrypt])
|
AC_SEARCH_LIBS(libscrypt_scrypt, [scrypt])
|
||||||
|
AC_CHECK_FUNCS([libscrypt_scrypt])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
dnl ============================================================
|
dnl ============================================================
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
|
|
||||||
#include <openssl/evp.h>
|
#include <openssl/evp.h>
|
||||||
|
|
||||||
#ifdef HAVE_LIBSCRYPT_H
|
#if defined(HAVE_LIBSCRYPT_H) && defined(HAVE_LIBSCRYPT_SCRYPT)
|
||||||
#define HAVE_SCRYPT
|
#define HAVE_SCRYPT
|
||||||
#include <libscrypt.h>
|
#include <libscrypt.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -10,7 +10,8 @@
|
||||||
#include "crypto_s2k.h"
|
#include "crypto_s2k.h"
|
||||||
#include "crypto_pwbox.h"
|
#include "crypto_pwbox.h"
|
||||||
|
|
||||||
#if defined(HAVE_LIBSCRYPT_H)
|
#if defined(HAVE_LIBSCRYPT_H) && defined(HAVE_LIBSCRYPT_SCRYPT)
|
||||||
|
#define HAVE_LIBSCRYPT
|
||||||
#include <libscrypt.h>
|
#include <libscrypt.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -129,7 +130,7 @@ test_crypto_s2k_general(void *arg)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(HAVE_LIBSCRYPT_H) && defined(HAVE_EVP_PBE_SCRYPT)
|
#if defined(HAVE_LIBSCRYPT) && defined(HAVE_EVP_PBE_SCRYPT)
|
||||||
static void
|
static void
|
||||||
test_libscrypt_eq_openssl(void *arg)
|
test_libscrypt_eq_openssl(void *arg)
|
||||||
{
|
{
|
||||||
|
@ -276,7 +277,7 @@ test_crypto_s2k_errors(void *arg)
|
||||||
buf, sizeof(buf), "ABC", 3));
|
buf, sizeof(buf), "ABC", 3));
|
||||||
|
|
||||||
/* Truncated output */
|
/* Truncated output */
|
||||||
#ifdef HAVE_LIBSCRYPT_H
|
#ifdef HAVE_LIBSCRYPT
|
||||||
tt_int_op(S2K_TRUNCATED, OP_EQ, secret_to_key_new(buf, 50, &sz,
|
tt_int_op(S2K_TRUNCATED, OP_EQ, secret_to_key_new(buf, 50, &sz,
|
||||||
"ABC", 3, 0));
|
"ABC", 3, 0));
|
||||||
tt_int_op(S2K_TRUNCATED, OP_EQ, secret_to_key_new(buf, 50, &sz,
|
tt_int_op(S2K_TRUNCATED, OP_EQ, secret_to_key_new(buf, 50, &sz,
|
||||||
|
@ -287,7 +288,7 @@ test_crypto_s2k_errors(void *arg)
|
||||||
tt_int_op(S2K_TRUNCATED, OP_EQ, secret_to_key_new(buf, 29, &sz,
|
tt_int_op(S2K_TRUNCATED, OP_EQ, secret_to_key_new(buf, 29, &sz,
|
||||||
"ABC", 3, S2K_FLAG_NO_SCRYPT));
|
"ABC", 3, S2K_FLAG_NO_SCRYPT));
|
||||||
|
|
||||||
#ifdef HAVE_LIBSCRYPT_H
|
#ifdef HAVE_LIBSCRYPT
|
||||||
tt_int_op(S2K_TRUNCATED, OP_EQ, secret_to_key_make_specifier(buf, 18, 0));
|
tt_int_op(S2K_TRUNCATED, OP_EQ, secret_to_key_make_specifier(buf, 18, 0));
|
||||||
tt_int_op(S2K_TRUNCATED, OP_EQ, secret_to_key_make_specifier(buf, 18,
|
tt_int_op(S2K_TRUNCATED, OP_EQ, secret_to_key_make_specifier(buf, 18,
|
||||||
S2K_FLAG_LOW_MEM));
|
S2K_FLAG_LOW_MEM));
|
||||||
|
@ -308,7 +309,7 @@ test_crypto_s2k_errors(void *arg)
|
||||||
secret_to_key_derivekey(buf2, sizeof(buf2),
|
secret_to_key_derivekey(buf2, sizeof(buf2),
|
||||||
buf, 18, "ABC", 3));
|
buf, 18, "ABC", 3));
|
||||||
|
|
||||||
#ifdef HAVE_LIBSCRYPT_H
|
#ifdef HAVE_LIBSCRYPT
|
||||||
/* It's a bad scrypt buffer if N would overflow uint64 */
|
/* It's a bad scrypt buffer if N would overflow uint64 */
|
||||||
memset(buf, 0, sizeof(buf));
|
memset(buf, 0, sizeof(buf));
|
||||||
buf[0] = 2; /* scrypt */
|
buf[0] = 2; /* scrypt */
|
||||||
|
@ -329,7 +330,7 @@ test_crypto_scrypt_vectors(void *arg)
|
||||||
uint8_t spec[64], out[64];
|
uint8_t spec[64], out[64];
|
||||||
|
|
||||||
(void)arg;
|
(void)arg;
|
||||||
#ifndef HAVE_LIBSCRYPT_H
|
#ifndef HAVE_LIBSCRYPT
|
||||||
if (1)
|
if (1)
|
||||||
tt_skip();
|
tt_skip();
|
||||||
#endif
|
#endif
|
||||||
|
@ -507,7 +508,7 @@ test_crypto_pwbox(void *arg)
|
||||||
|
|
||||||
struct testcase_t slow_crypto_tests[] = {
|
struct testcase_t slow_crypto_tests[] = {
|
||||||
CRYPTO_LEGACY(s2k_rfc2440),
|
CRYPTO_LEGACY(s2k_rfc2440),
|
||||||
#ifdef HAVE_LIBSCRYPT_H
|
#ifdef HAVE_LIBSCRYPT
|
||||||
{ "s2k_scrypt", test_crypto_s2k_general, 0, &passthrough_setup,
|
{ "s2k_scrypt", test_crypto_s2k_general, 0, &passthrough_setup,
|
||||||
(void*)"scrypt" },
|
(void*)"scrypt" },
|
||||||
{ "s2k_scrypt_low", test_crypto_s2k_general, 0, &passthrough_setup,
|
{ "s2k_scrypt_low", test_crypto_s2k_general, 0, &passthrough_setup,
|
||||||
|
|
Loading…
Reference in New Issue