Compare commits
26 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
af624440e2 | ||
![]() |
c3210983a5 | ||
![]() |
40e04292a0 | ||
![]() |
0ee8aa8eaf | ||
![]() |
b0e9f0a354 | ||
![]() |
1f4bfb9a4d | ||
![]() |
861a6ca1db | ||
![]() |
52c39d42ea | ||
![]() |
9a7fb37405 | ||
![]() |
82ce59838e | ||
![]() |
965a89108e | ||
![]() |
f69775d7b2 | ||
![]() |
b38d7f0f8a | ||
![]() |
7b6953e9a9 | ||
![]() |
6d0192ff17 | ||
![]() |
426595b267 | ||
![]() |
0f7609af9a | ||
![]() |
26b40cb773 | ||
![]() |
aff3a43fa0 | ||
![]() |
53b5b56f39 | ||
![]() |
653ba21752 | ||
![]() |
09ca0f7b8b | ||
![]() |
b32a92bc44 | ||
![]() |
794f48f1d8 | ||
![]() |
cd9f686793 | ||
![]() |
9bb3e03722 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -53,6 +53,7 @@ test-driver
|
|||||||
*.trs
|
*.trs
|
||||||
tests/aes_wrap*
|
tests/aes_wrap*
|
||||||
tests/arc4random_fork*
|
tests/arc4random_fork*
|
||||||
|
tests/asn1evp*
|
||||||
tests/asn1time*
|
tests/asn1time*
|
||||||
tests/cipher*
|
tests/cipher*
|
||||||
tests/explicit_bzero*
|
tests/explicit_bzero*
|
||||||
|
@@ -107,26 +107,23 @@ if(MSVC)
|
|||||||
message(STATUS "Using [${CMAKE_C_COMPILER_ID}] compiler")
|
message(STATUS "Using [${CMAKE_C_COMPILER_ID}] compiler")
|
||||||
if(CMAKE_C_COMPILER_ID MATCHES "MSVC")
|
if(CMAKE_C_COMPILER_ID MATCHES "MSVC")
|
||||||
set(MSVC_DISABLED_WARNINGS_LIST
|
set(MSVC_DISABLED_WARNINGS_LIST
|
||||||
"C4057" # C4057: 'initializing' : 'unsigned char *' differs in
|
"C4018" # 'expression' : signed/unsigned mismatch
|
||||||
# indirection to slightly different base types from 'char [2]'
|
"C4057" # 'operator' : 'identifier1' indirection to
|
||||||
"C4018" # '>=': signed/unsigned mismatch
|
# slightly different base types from 'identifier2'
|
||||||
"C4100" # 'exarg' : unreferenced formal parameter
|
"C4100" # 'identifier' : unreferenced formal parameter
|
||||||
"C4127" # conditional expression is constant
|
"C4127" # conditional expression is constant
|
||||||
"C4146" # unary minus operator applied to unsigned
|
"C4146" # unary minus operator applied to unsigned type,
|
||||||
# type, result still unsigned
|
# result still unsigned
|
||||||
"C4242" # 'function' : conversion from 'int' to 'uint8_t',
|
"C4244" # 'argument' : conversion from 'type1' to 'type2',
|
||||||
# possible loss of data
|
# possible loss of data
|
||||||
"C4244" # 'function' : conversion from 'int' to 'uint8_t',
|
"C4245" # 'conversion' : conversion from 'type1' to 'type2',
|
||||||
# possible loss of data
|
# signed/unsigned mismatch
|
||||||
"C4245" # 'initializing': conversion from 'long' to
|
"C4267" # 'var' : conversion from 'size_t' to 'type',
|
||||||
# 'unsigned long', signed/unsigned mismatch
|
# possible loss of data
|
||||||
"C4267" # conversion from 'size_t' to 'some type that is almost
|
"C4389" # 'operator' : signed/unsigned mismatch
|
||||||
# certainly safe to convert a size_t to'.
|
|
||||||
"C4389" # '!=': signed/unsigned mismatch
|
|
||||||
"C4706" # assignment within conditional expression
|
"C4706" # assignment within conditional expression
|
||||||
"C4820" # 'bytes' bytes padding added after construct 'member_name'
|
"C4996" # The POSIX name for this item is deprecated.
|
||||||
"C4996" # 'read': The POSIX name for this item is deprecated. Instead,
|
# Instead, use the ISO C and C++ conformant name
|
||||||
# use the ISO C++ conformant name: _read.
|
|
||||||
)
|
)
|
||||||
elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
|
||||||
add_definitions(-D_CRT_SUPPRESS_RESTRICT)
|
add_definitions(-D_CRT_SUPPRESS_RESTRICT)
|
||||||
|
32
ChangeLog
32
ChangeLog
@@ -28,6 +28,38 @@ history is also available from Git.
|
|||||||
|
|
||||||
LibreSSL Portable Release Notes:
|
LibreSSL Portable Release Notes:
|
||||||
|
|
||||||
|
2.7.0 - Bug fixes and improvements
|
||||||
|
|
||||||
|
* Merged more DTLS support into the regular TLS code path, removing
|
||||||
|
duplicated code.
|
||||||
|
|
||||||
|
* Converted ssl3_send_client_hello(), ssl3_send_server_hello() to CBB.
|
||||||
|
|
||||||
|
* Rewrite ASN1_TYPE_{get,set}_octetstring() using templated ASN.1.
|
||||||
|
This removes the last remaining use of the old M_ASN1_* macros
|
||||||
|
(asn1_mac.h) from API that needs to continue to exist.
|
||||||
|
|
||||||
|
2.6.4 - Bug fixes
|
||||||
|
|
||||||
|
* Make tls_config_parse_protocols() work correctly when passed a NULL
|
||||||
|
pointer for a protocol string. Issue found by semarie@, who also
|
||||||
|
provided the diff.
|
||||||
|
|
||||||
|
* Correct TLS extensions handling when no extensions are present.
|
||||||
|
If no TLS extensions are present in a client hello or server hello,
|
||||||
|
omit the entire extensions block, rather than including it with a
|
||||||
|
length of zero. Thanks to Eric Elena <eric at voguemerry dot com> for
|
||||||
|
providing packet captures and testing the fix.
|
||||||
|
|
||||||
|
* Fixed portable builds on older Android systems, and systems with out
|
||||||
|
IPV6_TCLASS support.
|
||||||
|
|
||||||
|
2.6.3 - OpenBSD 6.2 Release
|
||||||
|
|
||||||
|
* No core changes from LibreSSL 2.6.2
|
||||||
|
|
||||||
|
* Minor compatibility fixes in portable version.
|
||||||
|
|
||||||
2.6.2 - Bug fixes
|
2.6.2 - Bug fixes
|
||||||
|
|
||||||
* Provide a useful error with libtls if there are no OCSP URLs in a
|
* Provide a useful error with libtls if there are no OCSP URLs in a
|
||||||
|
@@ -20,7 +20,7 @@ else()
|
|||||||
set(OCSPCHECK_SRC ${OCSPCHECK_SRC} compat/inet_ntop.c)
|
set(OCSPCHECK_SRC ${OCSPCHECK_SRC} compat/inet_ntop.c)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
check_function_exists(inet_ntop HAVE_MEMMEM)
|
check_function_exists(memmem HAVE_MEMMEM)
|
||||||
if(HAVE_MEMMEM)
|
if(HAVE_MEMMEM)
|
||||||
add_definitions(-DHAVE_MEMMEM)
|
add_definitions(-DHAVE_MEMMEM)
|
||||||
else()
|
else()
|
||||||
|
@@ -88,5 +88,5 @@ else()
|
|||||||
endif()
|
endif()
|
||||||
if(ENABLE_LIBRESSL_INSTALL)
|
if(ENABLE_LIBRESSL_INSTALL)
|
||||||
install(FILES cert.pem openssl.cnf x509v3.cnf DESTINATION ${CONF_DIR})
|
install(FILES cert.pem openssl.cnf x509v3.cnf DESTINATION ${CONF_DIR})
|
||||||
install(DIRECTORY DESTINATION ${CONF_DIR}/cert)
|
install(DIRECTORY DESTINATION ${CONF_DIR}/certs)
|
||||||
endif(ENABLE_LIBRESSL_INSTALL)
|
endif(ENABLE_LIBRESSL_INSTALL)
|
||||||
|
@@ -13,7 +13,7 @@
|
|||||||
#include "apps.h"
|
#include "apps.h"
|
||||||
|
|
||||||
double
|
double
|
||||||
app_tminterval(int stop, int usertime)
|
app_timer_user(int stop)
|
||||||
{
|
{
|
||||||
static unsigned __int64 tmstart;
|
static unsigned __int64 tmstart;
|
||||||
union {
|
union {
|
||||||
@@ -22,13 +22,11 @@ app_tminterval(int stop, int usertime)
|
|||||||
} ct, et, kt, ut;
|
} ct, et, kt, ut;
|
||||||
|
|
||||||
GetProcessTimes(GetCurrentProcess(), &ct.ft, &et.ft, &kt.ft, &ut.ft);
|
GetProcessTimes(GetCurrentProcess(), &ct.ft, &et.ft, &kt.ft, &ut.ft);
|
||||||
|
if (stop)
|
||||||
if (stop == TM_START) {
|
|
||||||
tmstart = ut.u64 + kt.u64;
|
|
||||||
} else {
|
|
||||||
return (ut.u64 + kt.u64 - tmstart) / (double) 10000000;
|
return (ut.u64 + kt.u64 - tmstart) / (double) 10000000;
|
||||||
}
|
|
||||||
return 0;
|
tmstart = ut.u64 + kt.u64;
|
||||||
|
return 0.0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@@ -34,9 +34,9 @@ err(int eval, const char *fmt, ...)
|
|||||||
vfprintf(stderr, fmt, ap);
|
vfprintf(stderr, fmt, ap);
|
||||||
fprintf(stderr, ": ");
|
fprintf(stderr, ": ");
|
||||||
}
|
}
|
||||||
|
va_end(ap);
|
||||||
fprintf(stderr, "%s\n", strerror(sverrno));
|
fprintf(stderr, "%s\n", strerror(sverrno));
|
||||||
exit(eval);
|
exit(eval);
|
||||||
va_end(ap);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(_MSC_VER)
|
#if defined(_MSC_VER)
|
||||||
@@ -52,9 +52,9 @@ errx(int eval, const char *fmt, ...)
|
|||||||
va_start(ap, fmt);
|
va_start(ap, fmt);
|
||||||
if (fmt != NULL)
|
if (fmt != NULL)
|
||||||
vfprintf(stderr, fmt, ap);
|
vfprintf(stderr, fmt, ap);
|
||||||
|
va_end(ap);
|
||||||
fprintf(stderr, "\n");
|
fprintf(stderr, "\n");
|
||||||
exit(eval);
|
exit(eval);
|
||||||
va_end(ap);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void
|
static inline void
|
||||||
@@ -68,8 +68,8 @@ warn(const char *fmt, ...)
|
|||||||
vfprintf(stderr, fmt, ap);
|
vfprintf(stderr, fmt, ap);
|
||||||
fprintf(stderr, ": ");
|
fprintf(stderr, ": ");
|
||||||
}
|
}
|
||||||
fprintf(stderr, "%s\n", strerror(sverrno));
|
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
|
fprintf(stderr, "%s\n", strerror(sverrno));
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void
|
static inline void
|
||||||
@@ -80,8 +80,8 @@ warnx(const char *fmt, ...)
|
|||||||
va_start(ap, fmt);
|
va_start(ap, fmt);
|
||||||
if (fmt != NULL)
|
if (fmt != NULL)
|
||||||
vfprintf(stderr, fmt, ap);
|
vfprintf(stderr, fmt, ap);
|
||||||
fprintf(stderr, "\n");
|
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
|
fprintf(stderr, "\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -13,4 +13,20 @@ int gettimeofday(struct timeval *tp, void *tzp);
|
|||||||
#include_next <sys/time.h>
|
#include_next <sys/time.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef CLOCK_MONOTONIC
|
||||||
|
#define CLOCK_MONOTONIC CLOCK_REALTIME
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef timersub
|
||||||
|
#define timersub(tvp, uvp, vvp) \
|
||||||
|
do { \
|
||||||
|
(vvp)->tv_sec = (tvp)->tv_sec - (uvp)->tv_sec; \
|
||||||
|
(vvp)->tv_usec = (tvp)->tv_usec - (uvp)->tv_usec; \
|
||||||
|
if ((vvp)->tv_usec < 0) { \
|
||||||
|
(vvp)->tv_sec--; \
|
||||||
|
(vvp)->tv_usec += 1000000; \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -21,3 +21,15 @@ struct tm *__gmtime_r(const time_t * t, struct tm * tm);
|
|||||||
#ifndef HAVE_TIMEGM
|
#ifndef HAVE_TIMEGM
|
||||||
time_t timegm(struct tm *tm);
|
time_t timegm(struct tm *tm);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef timespecsub
|
||||||
|
#define timespecsub(tsp, usp, vsp) \
|
||||||
|
do { \
|
||||||
|
(vsp)->tv_sec = (tsp)->tv_sec - (usp)->tv_sec; \
|
||||||
|
(vsp)->tv_nsec = (tsp)->tv_nsec - (usp)->tv_nsec; \
|
||||||
|
if ((vsp)->tv_nsec < 0) { \
|
||||||
|
(vsp)->tv_sec--; \
|
||||||
|
(vsp)->tv_nsec += 1000000000L; \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
#endif
|
||||||
|
@@ -2,10 +2,23 @@ AC_DEFUN([CHECK_LIBC_COMPAT], [
|
|||||||
# Check for libc headers
|
# Check for libc headers
|
||||||
AC_CHECK_HEADERS([err.h readpassphrase.h])
|
AC_CHECK_HEADERS([err.h readpassphrase.h])
|
||||||
# Check for general libc functions
|
# Check for general libc functions
|
||||||
AC_CHECK_FUNCS([asprintf freezero getpagesize inet_ntop inet_pton memmem])
|
AC_CHECK_FUNCS([asprintf freezero inet_ntop inet_pton memmem])
|
||||||
AC_CHECK_FUNCS([readpassphrase reallocarray recallocarray])
|
AC_CHECK_FUNCS([readpassphrase reallocarray recallocarray])
|
||||||
AC_CHECK_FUNCS([strlcat strlcpy strndup strnlen strsep strtonum])
|
AC_CHECK_FUNCS([strlcat strlcpy strndup strnlen strsep strtonum])
|
||||||
AC_CHECK_FUNCS([timegm _mkgmtime])
|
AC_CHECK_FUNCS([timegm _mkgmtime])
|
||||||
|
AC_CACHE_CHECK([for getpagesize], ac_cv_func_getpagesize, [
|
||||||
|
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
|
||||||
|
// Since Android NDK v16 getpagesize is defined as inline inside unistd.h
|
||||||
|
#ifdef __ANDROID__
|
||||||
|
# include <unistd.h>
|
||||||
|
#endif
|
||||||
|
]], [[
|
||||||
|
getpagesize();
|
||||||
|
]])],
|
||||||
|
[ ac_cv_func_getpagesize="yes" ],
|
||||||
|
[ ac_cv_func_getpagesize="no"
|
||||||
|
])
|
||||||
|
])
|
||||||
AM_CONDITIONAL([HAVE_ASPRINTF], [test "x$ac_cv_func_asprintf" = xyes])
|
AM_CONDITIONAL([HAVE_ASPRINTF], [test "x$ac_cv_func_asprintf" = xyes])
|
||||||
AM_CONDITIONAL([HAVE_FREEZERO], [test "x$ac_cv_func_freezero" = xyes])
|
AM_CONDITIONAL([HAVE_FREEZERO], [test "x$ac_cv_func_freezero" = xyes])
|
||||||
AM_CONDITIONAL([HAVE_GETPAGESIZE], [test "x$ac_cv_func_getpagesize" = xyes])
|
AM_CONDITIONAL([HAVE_GETPAGESIZE], [test "x$ac_cv_func_getpagesize" = xyes])
|
||||||
|
@@ -2052,6 +2052,7 @@ tls_config_verify.3,tls_config_insecure_noverifytime.3
|
|||||||
tls_conn_version.3,tls_conn_alpn_selected.3
|
tls_conn_version.3,tls_conn_alpn_selected.3
|
||||||
tls_conn_version.3,tls_conn_cipher.3
|
tls_conn_version.3,tls_conn_cipher.3
|
||||||
tls_conn_version.3,tls_conn_servername.3
|
tls_conn_version.3,tls_conn_servername.3
|
||||||
|
tls_conn_version.3,tls_peer_cert_chain_pem.3
|
||||||
tls_conn_version.3,tls_peer_cert_contains_name.3
|
tls_conn_version.3,tls_peer_cert_contains_name.3
|
||||||
tls_conn_version.3,tls_peer_cert_hash.3
|
tls_conn_version.3,tls_peer_cert_hash.3
|
||||||
tls_conn_version.3,tls_peer_cert_issuer.3
|
tls_conn_version.3,tls_peer_cert_issuer.3
|
||||||
|
@@ -134,7 +134,7 @@
|
|||||||
err(1, "set IPv6 traffic class");
|
err(1, "set IPv6 traffic class");
|
||||||
+#else
|
+#else
|
||||||
+ else if (af == AF_INET6) {
|
+ else if (af == AF_INET6) {
|
||||||
+ errno = ENOPROTOOPT
|
+ errno = ENOPROTOOPT;
|
||||||
+ err(1, "set IPv6 traffic class not supported");
|
+ err(1, "set IPv6 traffic class not supported");
|
||||||
+ }
|
+ }
|
||||||
+#endif
|
+#endif
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
--- tests/tlsexttest.c.orig Sun Sep 3 00:44:51 2017
|
--- tests/tlsexttest.c.orig 2017-12-30 20:03:09.279079726 +0900
|
||||||
+++ tests/tlsexttest.c Sun Sep 3 00:47:06 2017
|
+++ tests/tlsexttest.c 2017-12-30 20:07:21.849939140 +0900
|
||||||
@@ -1676,7 +1676,9 @@ static unsigned char tlsext_sni_clienthello[] = {
|
@@ -1676,7 +1676,9 @@ static unsigned char tlsext_sni_clienthe
|
||||||
};
|
};
|
||||||
|
|
||||||
static unsigned char tlsext_sni_serverhello[] = {
|
static unsigned char tlsext_sni_serverhello[] = {
|
||||||
@@ -39,3 +39,73 @@
|
|||||||
if (!tlsext_sni_serverhello_parse(ssl, &cbs, &alert)) {
|
if (!tlsext_sni_serverhello_parse(ssl, &cbs, &alert)) {
|
||||||
FAIL("failed to parse serverhello SNI\n");
|
FAIL("failed to parse serverhello SNI\n");
|
||||||
goto err;
|
goto err;
|
||||||
|
@@ -2741,7 +2743,10 @@ unsigned char tlsext_clienthello_default
|
||||||
|
0x03, 0x01, 0x03, 0x03, 0x02, 0x01, 0x02, 0x03,
|
||||||
|
};
|
||||||
|
|
||||||
|
-unsigned char tlsext_clienthello_disabled[] = {};
|
||||||
|
+unsigned char tlsext_clienthello_disabled[] = {
|
||||||
|
+ 0x00
|
||||||
|
+};
|
||||||
|
+const size_t sizeof_tlsext_clienthello_disabled = 0;
|
||||||
|
|
||||||
|
static int
|
||||||
|
test_tlsext_clienthello_build(void)
|
||||||
|
@@ -2806,18 +2811,18 @@ test_tlsext_clienthello_build(void)
|
||||||
|
if (!CBB_finish(&cbb, &data, &dlen))
|
||||||
|
errx(1, "failed to finish CBB");
|
||||||
|
|
||||||
|
- if (dlen != sizeof(tlsext_clienthello_disabled)) {
|
||||||
|
+ if (dlen != sizeof_tlsext_clienthello_disabled) {
|
||||||
|
FAIL("got clienthello extensions with length %zu, "
|
||||||
|
"want length %zu\n", dlen,
|
||||||
|
- sizeof(tlsext_clienthello_disabled));
|
||||||
|
+ sizeof_tlsext_clienthello_disabled);
|
||||||
|
compare_data(data, dlen, tlsext_clienthello_disabled,
|
||||||
|
- sizeof(tlsext_clienthello_disabled));
|
||||||
|
+ sizeof_tlsext_clienthello_disabled);
|
||||||
|
goto err;
|
||||||
|
}
|
||||||
|
if (memcmp(data, tlsext_clienthello_disabled, dlen) != 0) {
|
||||||
|
FAIL("clienthello extensions differs:\n");
|
||||||
|
compare_data(data, dlen, tlsext_clienthello_disabled,
|
||||||
|
- sizeof(tlsext_clienthello_disabled));
|
||||||
|
+ sizeof_tlsext_clienthello_disabled);
|
||||||
|
goto err;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -2832,7 +2837,10 @@ test_tlsext_clienthello_build(void)
|
||||||
|
return (failure);
|
||||||
|
}
|
||||||
|
|
||||||
|
-unsigned char tlsext_serverhello_default[] = {};
|
||||||
|
+unsigned char tlsext_serverhello_default[] = {
|
||||||
|
+ 0x00
|
||||||
|
+};
|
||||||
|
+const size_t sizeof_tlsext_serverhello_default = 0;
|
||||||
|
|
||||||
|
unsigned char tlsext_serverhello_enabled[] = {
|
||||||
|
0x00, 0x13, 0xff, 0x01, 0x00, 0x01, 0x00, 0x00,
|
||||||
|
@@ -2872,18 +2880,18 @@ test_tlsext_serverhello_build(void)
|
||||||
|
if (!CBB_finish(&cbb, &data, &dlen))
|
||||||
|
errx(1, "failed to finish CBB");
|
||||||
|
|
||||||
|
- if (dlen != sizeof(tlsext_serverhello_default)) {
|
||||||
|
+ if (dlen != sizeof_tlsext_serverhello_default) {
|
||||||
|
FAIL("got serverhello extensions with length %zu, "
|
||||||
|
"want length %zu\n", dlen,
|
||||||
|
- sizeof(tlsext_serverhello_default));
|
||||||
|
+ sizeof_tlsext_serverhello_default);
|
||||||
|
compare_data(data, dlen, tlsext_serverhello_default,
|
||||||
|
- sizeof(tlsext_serverhello_default));
|
||||||
|
+ sizeof_tlsext_serverhello_default);
|
||||||
|
goto err;
|
||||||
|
}
|
||||||
|
if (memcmp(data, tlsext_serverhello_default, dlen) != 0) {
|
||||||
|
FAIL("serverhello extensions differs:\n");
|
||||||
|
compare_data(data, dlen, tlsext_serverhello_default,
|
||||||
|
- sizeof(tlsext_serverhello_default));
|
||||||
|
+ sizeof_tlsext_serverhello_default);
|
||||||
|
goto err;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -41,6 +41,11 @@ if(NOT CMAKE_HOST_WIN32 AND NOT CMAKE_SYSTEM_NAME MATCHES "MINGW")
|
|||||||
add_test(arc4randomforktest ${CMAKE_CURRENT_SOURCE_DIR}/arc4randomforktest.sh)
|
add_test(arc4randomforktest ${CMAKE_CURRENT_SOURCE_DIR}/arc4randomforktest.sh)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# asn1evp
|
||||||
|
add_executable(asn1evp asn1evp.c)
|
||||||
|
target_link_libraries(asn1evp ${TESTS_LIBS})
|
||||||
|
add_test(asn1evp asn1evp)
|
||||||
|
|
||||||
# asn1test
|
# asn1test
|
||||||
add_executable(asn1test asn1test.c)
|
add_executable(asn1test asn1test.c)
|
||||||
target_link_libraries(asn1test ${TESTS_LIBS})
|
target_link_libraries(asn1test ${TESTS_LIBS})
|
||||||
@@ -105,6 +110,11 @@ add_executable(clienttest clienttest.c)
|
|||||||
target_link_libraries(clienttest ${TESTS_LIBS})
|
target_link_libraries(clienttest ${TESTS_LIBS})
|
||||||
add_test(clienttest clienttest)
|
add_test(clienttest clienttest)
|
||||||
|
|
||||||
|
# configtest
|
||||||
|
add_executable(configtest configtest.c)
|
||||||
|
target_link_libraries(configtest ${TESTS_LIBS})
|
||||||
|
add_test(configtest configtest)
|
||||||
|
|
||||||
# cts128test
|
# cts128test
|
||||||
add_executable(cts128test cts128test.c)
|
add_executable(cts128test cts128test.c)
|
||||||
target_link_libraries(cts128test ${TESTS_LIBS})
|
target_link_libraries(cts128test ${TESTS_LIBS})
|
||||||
|
@@ -43,6 +43,11 @@ arc4randomforktest_SOURCES = arc4randomforktest.c
|
|||||||
endif
|
endif
|
||||||
EXTRA_DIST += arc4randomforktest.sh
|
EXTRA_DIST += arc4randomforktest.sh
|
||||||
|
|
||||||
|
# asn1evp
|
||||||
|
TESTS += asn1evp
|
||||||
|
check_PROGRAMS += asn1evp
|
||||||
|
asn1evp_SOURCES = asn1evp.c
|
||||||
|
|
||||||
# asn1test
|
# asn1test
|
||||||
TESTS += asn1test
|
TESTS += asn1test
|
||||||
check_PROGRAMS += asn1test
|
check_PROGRAMS += asn1test
|
||||||
@@ -108,6 +113,11 @@ TESTS += clienttest
|
|||||||
check_PROGRAMS += clienttest
|
check_PROGRAMS += clienttest
|
||||||
clienttest_SOURCES = clienttest.c
|
clienttest_SOURCES = clienttest.c
|
||||||
|
|
||||||
|
# configtest
|
||||||
|
TESTS += configtest
|
||||||
|
check_PROGRAMS += configtest
|
||||||
|
configtest_SOURCES = configtest.c
|
||||||
|
|
||||||
# cts128test
|
# cts128test
|
||||||
TESTS += cts128test
|
TESTS += cts128test
|
||||||
check_PROGRAMS += cts128test
|
check_PROGRAMS += cts128test
|
||||||
@@ -177,7 +187,6 @@ exptest_SOURCES = exptest.c
|
|||||||
# freenull
|
# freenull
|
||||||
TESTS += freenull
|
TESTS += freenull
|
||||||
check_PROGRAMS += freenull
|
check_PROGRAMS += freenull
|
||||||
freenull_CPPFLAGS = $(AM_CPPFLAGS) -ULIBRESSL_INTERNAL
|
|
||||||
freenull_SOURCES = freenull.c
|
freenull_SOURCES = freenull.c
|
||||||
|
|
||||||
# gcm128test
|
# gcm128test
|
||||||
@@ -359,7 +368,6 @@ timingsafe_SOURCES = timingsafe.c
|
|||||||
# tlsexttest
|
# tlsexttest
|
||||||
TESTS += tlsexttest
|
TESTS += tlsexttest
|
||||||
check_PROGRAMS += tlsexttest
|
check_PROGRAMS += tlsexttest
|
||||||
tlsexttest_CPPFLAGS = $(AM_CPPFLAGS) -ULIBRESSL_INTERNAL
|
|
||||||
tlsexttest_SOURCES = tlsexttest.c
|
tlsexttest_SOURCES = tlsexttest.c
|
||||||
|
|
||||||
# tlstest
|
# tlstest
|
||||||
|
18
update.sh
18
update.sh
@@ -13,6 +13,7 @@ if [ ! -d openbsd ]; then
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
(cd openbsd
|
(cd openbsd
|
||||||
|
git fetch
|
||||||
git checkout $openbsd_branch
|
git checkout $openbsd_branch
|
||||||
git pull --rebase)
|
git pull --rebase)
|
||||||
|
|
||||||
@@ -338,25 +339,32 @@ done
|
|||||||
# copy manpages
|
# copy manpages
|
||||||
echo "copying manpages"
|
echo "copying manpages"
|
||||||
echo EXTRA_DIST = CMakeLists.txt > man/Makefile.am
|
echo EXTRA_DIST = CMakeLists.txt > man/Makefile.am
|
||||||
echo dist_man_MANS = >> man/Makefile.am
|
echo dist_man3_MANS = >> man/Makefile.am
|
||||||
|
echo dist_man5_MANS = >> man/Makefile.am
|
||||||
|
|
||||||
(cd man
|
(cd man
|
||||||
for i in `ls -1 $libssl_src/man/*.3 | sort`; do
|
for i in `ls -1 $libssl_src/man/*.3 | sort`; do
|
||||||
NAME=`basename "$i"`
|
NAME=`basename "$i"`
|
||||||
$CP $i .
|
$CP $i .
|
||||||
echo "dist_man_MANS += $NAME" >> Makefile.am
|
echo "dist_man3_MANS += $NAME" >> Makefile.am
|
||||||
done
|
done
|
||||||
|
|
||||||
for i in `ls -1 $libcrypto_src/man/*.[35] | sort`; do
|
for i in `ls -1 $libcrypto_src/man/*.3 | sort`; do
|
||||||
NAME=`basename "$i"`
|
NAME=`basename "$i"`
|
||||||
$CP $i .
|
$CP $i .
|
||||||
echo "dist_man_MANS += $NAME" >> Makefile.am
|
echo "dist_man3_MANS += $NAME" >> Makefile.am
|
||||||
done
|
done
|
||||||
|
|
||||||
for i in `ls -1 $libtls_src/man/*.3 | sort`; do
|
for i in `ls -1 $libtls_src/man/*.3 | sort`; do
|
||||||
NAME=`basename "$i"`
|
NAME=`basename "$i"`
|
||||||
$CP $i .
|
$CP $i .
|
||||||
echo "dist_man_MANS += $NAME" >> Makefile.am
|
echo "dist_man3_MANS += $NAME" >> Makefile.am
|
||||||
|
done
|
||||||
|
|
||||||
|
for i in `ls -1 $libcrypto_src/man/*.5 | sort`; do
|
||||||
|
NAME=`basename "$i"`
|
||||||
|
$CP $i .
|
||||||
|
echo "dist_man5_MANS += $NAME" >> Makefile.am
|
||||||
done
|
done
|
||||||
)
|
)
|
||||||
add_man_links . man/Makefile.am
|
add_man_links . man/Makefile.am
|
||||||
|
Reference in New Issue
Block a user