Loading CMakeLists.txt +4 −0 Original line number Original line Diff line number Diff line Loading @@ -179,6 +179,9 @@ endif() option(CURL_DISABLE_COOKIES "to disable cookies support" OFF) option(CURL_DISABLE_COOKIES "to disable cookies support" OFF) mark_as_advanced(CURL_DISABLE_COOKIES) mark_as_advanced(CURL_DISABLE_COOKIES) option(CURL_DISABLE_TLMSP "to disable TLMSP support" OFF) mark_as_advanced(CURL_DISABLE_TLMSP) option(CURL_DISABLE_CRYPTO_AUTH "to disable cryptographic authentication" OFF) option(CURL_DISABLE_CRYPTO_AUTH "to disable cryptographic authentication" OFF) mark_as_advanced(CURL_DISABLE_CRYPTO_AUTH) mark_as_advanced(CURL_DISABLE_CRYPTO_AUTH) option(CURL_DISABLE_VERBOSE_STRINGS "to disable verbose strings" OFF) option(CURL_DISABLE_VERBOSE_STRINGS "to disable verbose strings" OFF) Loading Loading @@ -366,6 +369,7 @@ if(CMAKE_USE_OPENSSL) check_include_file("openssl/pem.h" HAVE_OPENSSL_PEM_H) check_include_file("openssl/pem.h" HAVE_OPENSSL_PEM_H) check_include_file("openssl/rsa.h" HAVE_OPENSSL_RSA_H) check_include_file("openssl/rsa.h" HAVE_OPENSSL_RSA_H) check_include_file("openssl/ssl.h" HAVE_OPENSSL_SSL_H) check_include_file("openssl/ssl.h" HAVE_OPENSSL_SSL_H) check_include_file("openssl/tlmsp.h" HAVE_TLMSP) check_include_file("openssl/x509.h" HAVE_OPENSSL_X509_H) check_include_file("openssl/x509.h" HAVE_OPENSSL_X509_H) check_include_file("openssl/rand.h" HAVE_OPENSSL_RAND_H) check_include_file("openssl/rand.h" HAVE_OPENSSL_RAND_H) check_symbol_exists(RAND_status "${CURL_INCLUDES}" HAVE_RAND_STATUS) check_symbol_exists(RAND_status "${CURL_INCLUDES}" HAVE_RAND_STATUS) Loading LICENSE +0 −1 Original line number Original line Diff line number Diff line Loading @@ -23,4 +23,3 @@ source code, under the following conditions: The present ETSI Source Code license shall be included in all copies of whole The present ETSI Source Code license shall be included in all copies of whole or part of this source code and shall not imply any sub-license right. or part of this source code and shall not imply any sub-license right. README.md +0 −13 Original line number Original line Diff line number Diff line # TLSMP curl curl modified to support TLMSP (ETSI TS 103 523-2) ## Licensing information Contributions to this repositories are licensed according to the ETSI Software License (see LICENSE). The original implementation of curl is released under its own terms (see below and COPYING).   [](https://bestpractices.coreinfrastructure.org/projects/63) [](https://bestpractices.coreinfrastructure.org/projects/63) Loading configure.ac +89 −1 Original line number Original line Diff line number Diff line Loading @@ -156,6 +156,7 @@ AC_SUBST(PKGADD_VENDOR) dnl dnl dnl initialize all the info variables dnl initialize all the info variables curl_ssl_msg="no (--with-{ssl,gnutls,nss,mbedtls,cyassl,schannel,secure-transport,mesalink,amissl} )" curl_ssl_msg="no (--with-{ssl,gnutls,nss,mbedtls,cyassl,schannel,secure-transport,mesalink,amissl} )" curl_tlmsp_msg="no (--with-tlmsp-tools)" curl_ssh_msg="no (--with-libssh2)" curl_ssh_msg="no (--with-libssh2)" curl_zlib_msg="no (--with-zlib)" curl_zlib_msg="no (--with-zlib)" curl_brotli_msg="no (--with-brotli)" curl_brotli_msg="no (--with-brotli)" Loading Loading @@ -4037,6 +4038,89 @@ AC_HELP_STRING([--disable-cookies],[Disable cookies support]), AC_MSG_RESULT(yes) AC_MSG_RESULT(yes) ) ) dnl ********************************************************************** dnl Check for the presence of TLMSP libraries and headers dnl ********************************************************************** dnl Check for & handle argument to --with-tlmsp-tools. clean_CPPFLAGS=$CPPFLAGS clean_LDFLAGS=$LDFLAGS TLMSP_ENABLED= AC_ARG_WITH(tlmsp-tools, AC_HELP_STRING([--with-tlmsp-tools=PATH],[enabled TLMSP and search for tlmsp-tools in PATH]) AC_HELP_STRING([--without-tlmsp-tools],[disable use of TLMSP]), [OPT_TLMSP="$withval"]) if test "$OPT_TLMSP" = "no" ; then AC_MSG_WARN([TLMSP disabled]) else dnl Add a nonempty path to the compiler flags if test -n "$OPT_TLMSP"; then CPPFLAGS="-I$OPT_TLMSP/include $CPPFLAGS" LDFLAGS="-L$OPT_TLMSP/lib$libsuff $LDFLAGS" fi AC_CHECK_HEADER(ucl.h, [ dnl ucl.h was found HAVE_UCL_H="1" AC_CHECK_LIB(ucl, ucl_parser_new, [ dnl the lib was found! HAVE_LIBUCL="1" ]) ]) AC_CHECK_HEADER(tlmsp-tools/libtlmsp-cfg.h, [ dnl libtlmsp-cfg.h was found HAVE_LIBTLMSP_CFG_H="1" AC_CHECK_LIB(tlmsp-cfg, tlmsp_cfg_parse_file, [ dnl the lib was found! HAVE_LIBTLMSP_CFG="1" ], [], [ -lucl ]) ]) AC_CHECK_HEADER(tlmsp-tools/libtlmsp-util.h, [ dnl libtlmsp-util.h was found HAVE_LIBTLMSP_UTIL_H="1" AC_CHECK_LIB(tlmsp-util, tlmsp_util_address_type, [ dnl the lib was found! HAVE_LIBTLMSP_UTIL="1" ]) ]) CPPFLAGS="$clean_CPPFLAGS" LDFLAGS="$clean_LDFLAGS" if test "$HAVE_LIBTLMSP_CFG_H" != "1" || test "$HAVE_LIBTLMSP_CFG" != "1" then AC_MSG_WARN([libtlmsp-cfg header and library are not both present!]) elif test "$HAVE_LIBTLMSP_UTIL_H" != "1" || test "$HAVE_LIBTLMSP_UTIL" != "1" then AC_MSG_WARN([libtlmsp-util header and library are not both present!]) elif test "$HAVE_UCL_H" != "1" || test "$HAVE_LIBUCL" != "1" then AC_MSG_WARN([libucl header and library are not both present!]) else dnl All headers and libraries were found! AC_MSG_NOTICE([found all required TLMSP headers and libraries]) AC_DEFINE(USE_TLMSP, 1, [to enable tlmsp]) TLMSP_ENABLED=1 curl_tlmsp_msg="enabled" CPPFLAGS="-I$OPT_TLMSP/include $CPPFLAGS" LDFLAGS="-L$OPT_TLMSP/lib$libsuff $LDFLAGS" LIBS="-ltlmsp-cfg -ltlmsp-util -lucl $LIBS" fi fi dnl ************************************************************ dnl ************************************************************ dnl switch on/off alt-svc dnl switch on/off alt-svc dnl dnl Loading Loading @@ -4105,6 +4189,9 @@ if test "x$OPENSSL_ENABLED" = "x1"; then elif test -n "$SSL_ENABLED"; then elif test -n "$SSL_ENABLED"; then SUPPORT_FEATURES="$SUPPORT_FEATURES SSL" SUPPORT_FEATURES="$SUPPORT_FEATURES SSL" fi fi if test "x$TLMSP_ENABLED" = "x1"; then SUPPORT_FEATURES="$SUPPORT_FEATURES TLMSP" fi if test "x$IPV6_ENABLED" = "x1"; then if test "x$IPV6_ENABLED" = "x1"; then SUPPORT_FEATURES="$SUPPORT_FEATURES IPv6" SUPPORT_FEATURES="$SUPPORT_FEATURES IPv6" fi fi Loading Loading @@ -4322,7 +4409,7 @@ AC_OUTPUT CURL_GENERATE_CONFIGUREHELP_PM CURL_GENERATE_CONFIGUREHELP_PM XC_AMEND_DISTCLEAN([lib src tests/unit tests/server tests/libtest docs/examples]) #XC_AMEND_DISTCLEAN([lib src tests/unit tests/server tests/libtest docs/examples]) AC_MSG_NOTICE([Configured to build curl/libcurl: AC_MSG_NOTICE([Configured to build curl/libcurl: Loading @@ -4336,6 +4423,7 @@ AC_MSG_NOTICE([Configured to build curl/libcurl: curl version: ${CURLVERSION} curl version: ${CURLVERSION} SSL: ${curl_ssl_msg} SSL: ${curl_ssl_msg} TLMSP: ${curl_tlmsp_msg} SSH: ${curl_ssh_msg} SSH: ${curl_ssh_msg} zlib: ${curl_zlib_msg} zlib: ${curl_zlib_msg} brotli: ${curl_brotli_msg} brotli: ${curl_brotli_msg} Loading include/curl/curl.h +17 −0 Original line number Original line Diff line number Diff line Loading @@ -21,6 +21,11 @@ * KIND, either express or implied. * KIND, either express or implied. * * ***************************************************************************/ ***************************************************************************/ /* * Copyright (c) 2019 Not for Radio, LLC * * Released under the ETSI Software License (see LICENSE) */ /* /* * If you have libcurl problems, all docs and details are found here: * If you have libcurl problems, all docs and details are found here: Loading Loading @@ -603,6 +608,10 @@ typedef enum { */ */ CURLE_RECURSIVE_API_CALL, /* 93 - an api function was called from CURLE_RECURSIVE_API_CALL, /* 93 - an api function was called from inside a callback */ inside a callback */ CURLE_UNKNOWN_DATACONTEXT, /* 94 - backend does not recognize given datacontext */ CURLE_TRANSPORT_RECONNECT, /* 95 - transport requires new connection attempt */ CURL_LAST /* never use! */ CURL_LAST /* never use! */ } CURLcode; } CURLcode; Loading Loading @@ -1924,6 +1933,13 @@ typedef enum { /* maximum age of a connection to consider it for reuse (in seconds) */ /* maximum age of a connection to consider it for reuse (in seconds) */ CINIT(MAXAGE_CONN, LONG, 288), CINIT(MAXAGE_CONN, LONG, 288), /* Set this option to the name of the TLMSP config file to use. If no config file is specified, a default protocol version range will be used, no initial middleboxes will be configured, no discovered middleboxes will be accepted, and all application data will be placed in a single context with ID 1. */ CINIT(TLMSP_CFG_FILE, STRINGPOINT, 286), CURLOPT_LASTENTRY /* the last unused */ CURLOPT_LASTENTRY /* the last unused */ } CURLoption; } CURLoption; Loading Loading @@ -2787,6 +2803,7 @@ typedef struct { #define CURL_VERSION_MULTI_SSL (1<<22) /* Multiple SSL backends available */ #define CURL_VERSION_MULTI_SSL (1<<22) /* Multiple SSL backends available */ #define CURL_VERSION_BROTLI (1<<23) /* Brotli features are present. */ #define CURL_VERSION_BROTLI (1<<23) /* Brotli features are present. */ #define CURL_VERSION_ALTSVC (1<<24) /* Alt-Svc handling built-in */ #define CURL_VERSION_ALTSVC (1<<24) /* Alt-Svc handling built-in */ #define CURL_VERSION_TLMSP (1<<25) /* TLMSP is supported */ /* /* * NAME curl_version_info() * NAME curl_version_info() Loading Loading
CMakeLists.txt +4 −0 Original line number Original line Diff line number Diff line Loading @@ -179,6 +179,9 @@ endif() option(CURL_DISABLE_COOKIES "to disable cookies support" OFF) option(CURL_DISABLE_COOKIES "to disable cookies support" OFF) mark_as_advanced(CURL_DISABLE_COOKIES) mark_as_advanced(CURL_DISABLE_COOKIES) option(CURL_DISABLE_TLMSP "to disable TLMSP support" OFF) mark_as_advanced(CURL_DISABLE_TLMSP) option(CURL_DISABLE_CRYPTO_AUTH "to disable cryptographic authentication" OFF) option(CURL_DISABLE_CRYPTO_AUTH "to disable cryptographic authentication" OFF) mark_as_advanced(CURL_DISABLE_CRYPTO_AUTH) mark_as_advanced(CURL_DISABLE_CRYPTO_AUTH) option(CURL_DISABLE_VERBOSE_STRINGS "to disable verbose strings" OFF) option(CURL_DISABLE_VERBOSE_STRINGS "to disable verbose strings" OFF) Loading Loading @@ -366,6 +369,7 @@ if(CMAKE_USE_OPENSSL) check_include_file("openssl/pem.h" HAVE_OPENSSL_PEM_H) check_include_file("openssl/pem.h" HAVE_OPENSSL_PEM_H) check_include_file("openssl/rsa.h" HAVE_OPENSSL_RSA_H) check_include_file("openssl/rsa.h" HAVE_OPENSSL_RSA_H) check_include_file("openssl/ssl.h" HAVE_OPENSSL_SSL_H) check_include_file("openssl/ssl.h" HAVE_OPENSSL_SSL_H) check_include_file("openssl/tlmsp.h" HAVE_TLMSP) check_include_file("openssl/x509.h" HAVE_OPENSSL_X509_H) check_include_file("openssl/x509.h" HAVE_OPENSSL_X509_H) check_include_file("openssl/rand.h" HAVE_OPENSSL_RAND_H) check_include_file("openssl/rand.h" HAVE_OPENSSL_RAND_H) check_symbol_exists(RAND_status "${CURL_INCLUDES}" HAVE_RAND_STATUS) check_symbol_exists(RAND_status "${CURL_INCLUDES}" HAVE_RAND_STATUS) Loading
LICENSE +0 −1 Original line number Original line Diff line number Diff line Loading @@ -23,4 +23,3 @@ source code, under the following conditions: The present ETSI Source Code license shall be included in all copies of whole The present ETSI Source Code license shall be included in all copies of whole or part of this source code and shall not imply any sub-license right. or part of this source code and shall not imply any sub-license right.
README.md +0 −13 Original line number Original line Diff line number Diff line # TLSMP curl curl modified to support TLMSP (ETSI TS 103 523-2) ## Licensing information Contributions to this repositories are licensed according to the ETSI Software License (see LICENSE). The original implementation of curl is released under its own terms (see below and COPYING).   [](https://bestpractices.coreinfrastructure.org/projects/63) [](https://bestpractices.coreinfrastructure.org/projects/63) Loading
configure.ac +89 −1 Original line number Original line Diff line number Diff line Loading @@ -156,6 +156,7 @@ AC_SUBST(PKGADD_VENDOR) dnl dnl dnl initialize all the info variables dnl initialize all the info variables curl_ssl_msg="no (--with-{ssl,gnutls,nss,mbedtls,cyassl,schannel,secure-transport,mesalink,amissl} )" curl_ssl_msg="no (--with-{ssl,gnutls,nss,mbedtls,cyassl,schannel,secure-transport,mesalink,amissl} )" curl_tlmsp_msg="no (--with-tlmsp-tools)" curl_ssh_msg="no (--with-libssh2)" curl_ssh_msg="no (--with-libssh2)" curl_zlib_msg="no (--with-zlib)" curl_zlib_msg="no (--with-zlib)" curl_brotli_msg="no (--with-brotli)" curl_brotli_msg="no (--with-brotli)" Loading Loading @@ -4037,6 +4038,89 @@ AC_HELP_STRING([--disable-cookies],[Disable cookies support]), AC_MSG_RESULT(yes) AC_MSG_RESULT(yes) ) ) dnl ********************************************************************** dnl Check for the presence of TLMSP libraries and headers dnl ********************************************************************** dnl Check for & handle argument to --with-tlmsp-tools. clean_CPPFLAGS=$CPPFLAGS clean_LDFLAGS=$LDFLAGS TLMSP_ENABLED= AC_ARG_WITH(tlmsp-tools, AC_HELP_STRING([--with-tlmsp-tools=PATH],[enabled TLMSP and search for tlmsp-tools in PATH]) AC_HELP_STRING([--without-tlmsp-tools],[disable use of TLMSP]), [OPT_TLMSP="$withval"]) if test "$OPT_TLMSP" = "no" ; then AC_MSG_WARN([TLMSP disabled]) else dnl Add a nonempty path to the compiler flags if test -n "$OPT_TLMSP"; then CPPFLAGS="-I$OPT_TLMSP/include $CPPFLAGS" LDFLAGS="-L$OPT_TLMSP/lib$libsuff $LDFLAGS" fi AC_CHECK_HEADER(ucl.h, [ dnl ucl.h was found HAVE_UCL_H="1" AC_CHECK_LIB(ucl, ucl_parser_new, [ dnl the lib was found! HAVE_LIBUCL="1" ]) ]) AC_CHECK_HEADER(tlmsp-tools/libtlmsp-cfg.h, [ dnl libtlmsp-cfg.h was found HAVE_LIBTLMSP_CFG_H="1" AC_CHECK_LIB(tlmsp-cfg, tlmsp_cfg_parse_file, [ dnl the lib was found! HAVE_LIBTLMSP_CFG="1" ], [], [ -lucl ]) ]) AC_CHECK_HEADER(tlmsp-tools/libtlmsp-util.h, [ dnl libtlmsp-util.h was found HAVE_LIBTLMSP_UTIL_H="1" AC_CHECK_LIB(tlmsp-util, tlmsp_util_address_type, [ dnl the lib was found! HAVE_LIBTLMSP_UTIL="1" ]) ]) CPPFLAGS="$clean_CPPFLAGS" LDFLAGS="$clean_LDFLAGS" if test "$HAVE_LIBTLMSP_CFG_H" != "1" || test "$HAVE_LIBTLMSP_CFG" != "1" then AC_MSG_WARN([libtlmsp-cfg header and library are not both present!]) elif test "$HAVE_LIBTLMSP_UTIL_H" != "1" || test "$HAVE_LIBTLMSP_UTIL" != "1" then AC_MSG_WARN([libtlmsp-util header and library are not both present!]) elif test "$HAVE_UCL_H" != "1" || test "$HAVE_LIBUCL" != "1" then AC_MSG_WARN([libucl header and library are not both present!]) else dnl All headers and libraries were found! AC_MSG_NOTICE([found all required TLMSP headers and libraries]) AC_DEFINE(USE_TLMSP, 1, [to enable tlmsp]) TLMSP_ENABLED=1 curl_tlmsp_msg="enabled" CPPFLAGS="-I$OPT_TLMSP/include $CPPFLAGS" LDFLAGS="-L$OPT_TLMSP/lib$libsuff $LDFLAGS" LIBS="-ltlmsp-cfg -ltlmsp-util -lucl $LIBS" fi fi dnl ************************************************************ dnl ************************************************************ dnl switch on/off alt-svc dnl switch on/off alt-svc dnl dnl Loading Loading @@ -4105,6 +4189,9 @@ if test "x$OPENSSL_ENABLED" = "x1"; then elif test -n "$SSL_ENABLED"; then elif test -n "$SSL_ENABLED"; then SUPPORT_FEATURES="$SUPPORT_FEATURES SSL" SUPPORT_FEATURES="$SUPPORT_FEATURES SSL" fi fi if test "x$TLMSP_ENABLED" = "x1"; then SUPPORT_FEATURES="$SUPPORT_FEATURES TLMSP" fi if test "x$IPV6_ENABLED" = "x1"; then if test "x$IPV6_ENABLED" = "x1"; then SUPPORT_FEATURES="$SUPPORT_FEATURES IPv6" SUPPORT_FEATURES="$SUPPORT_FEATURES IPv6" fi fi Loading Loading @@ -4322,7 +4409,7 @@ AC_OUTPUT CURL_GENERATE_CONFIGUREHELP_PM CURL_GENERATE_CONFIGUREHELP_PM XC_AMEND_DISTCLEAN([lib src tests/unit tests/server tests/libtest docs/examples]) #XC_AMEND_DISTCLEAN([lib src tests/unit tests/server tests/libtest docs/examples]) AC_MSG_NOTICE([Configured to build curl/libcurl: AC_MSG_NOTICE([Configured to build curl/libcurl: Loading @@ -4336,6 +4423,7 @@ AC_MSG_NOTICE([Configured to build curl/libcurl: curl version: ${CURLVERSION} curl version: ${CURLVERSION} SSL: ${curl_ssl_msg} SSL: ${curl_ssl_msg} TLMSP: ${curl_tlmsp_msg} SSH: ${curl_ssh_msg} SSH: ${curl_ssh_msg} zlib: ${curl_zlib_msg} zlib: ${curl_zlib_msg} brotli: ${curl_brotli_msg} brotli: ${curl_brotli_msg} Loading
include/curl/curl.h +17 −0 Original line number Original line Diff line number Diff line Loading @@ -21,6 +21,11 @@ * KIND, either express or implied. * KIND, either express or implied. * * ***************************************************************************/ ***************************************************************************/ /* * Copyright (c) 2019 Not for Radio, LLC * * Released under the ETSI Software License (see LICENSE) */ /* /* * If you have libcurl problems, all docs and details are found here: * If you have libcurl problems, all docs and details are found here: Loading Loading @@ -603,6 +608,10 @@ typedef enum { */ */ CURLE_RECURSIVE_API_CALL, /* 93 - an api function was called from CURLE_RECURSIVE_API_CALL, /* 93 - an api function was called from inside a callback */ inside a callback */ CURLE_UNKNOWN_DATACONTEXT, /* 94 - backend does not recognize given datacontext */ CURLE_TRANSPORT_RECONNECT, /* 95 - transport requires new connection attempt */ CURL_LAST /* never use! */ CURL_LAST /* never use! */ } CURLcode; } CURLcode; Loading Loading @@ -1924,6 +1933,13 @@ typedef enum { /* maximum age of a connection to consider it for reuse (in seconds) */ /* maximum age of a connection to consider it for reuse (in seconds) */ CINIT(MAXAGE_CONN, LONG, 288), CINIT(MAXAGE_CONN, LONG, 288), /* Set this option to the name of the TLMSP config file to use. If no config file is specified, a default protocol version range will be used, no initial middleboxes will be configured, no discovered middleboxes will be accepted, and all application data will be placed in a single context with ID 1. */ CINIT(TLMSP_CFG_FILE, STRINGPOINT, 286), CURLOPT_LASTENTRY /* the last unused */ CURLOPT_LASTENTRY /* the last unused */ } CURLoption; } CURLoption; Loading Loading @@ -2787,6 +2803,7 @@ typedef struct { #define CURL_VERSION_MULTI_SSL (1<<22) /* Multiple SSL backends available */ #define CURL_VERSION_MULTI_SSL (1<<22) /* Multiple SSL backends available */ #define CURL_VERSION_BROTLI (1<<23) /* Brotli features are present. */ #define CURL_VERSION_BROTLI (1<<23) /* Brotli features are present. */ #define CURL_VERSION_ALTSVC (1<<24) /* Alt-Svc handling built-in */ #define CURL_VERSION_ALTSVC (1<<24) /* Alt-Svc handling built-in */ #define CURL_VERSION_TLMSP (1<<25) /* TLMSP is supported */ /* /* * NAME curl_version_info() * NAME curl_version_info() Loading