Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ell for openSUSE:Factory checked in at 2023-01-26 13:56:48 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ell (Old) and /work/SRC/openSUSE:Factory/.ell.new.32243 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ell" Thu Jan 26 13:56:48 2023 rev:34 rq:1060787 version:0.56 Changes: -------- --- /work/SRC/openSUSE:Factory/ell/ell.changes 2022-12-25 15:14:38.661302246 +0100 +++ /work/SRC/openSUSE:Factory/.ell.new.32243/ell.changes 2023-01-26 13:59:15.544412181 +0100 @@ -1,0 +2,6 @@ +Wed Jan 25 08:11:01 UTC 2023 - Paolo Stivanin <i...@paolostivanin.com> + +- update to 0.56: + * Add support for TLS session resume interfaces. + +------------------------------------------------------------------- Old: ---- ell-0.55.tar.sign ell-0.55.tar.xz New: ---- ell-0.56.tar.sign ell-0.56.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ell.spec ++++++ --- /var/tmp/diff_new_pack.DIgFaF/_old 2023-01-26 13:59:15.948414360 +0100 +++ /var/tmp/diff_new_pack.DIgFaF/_new 2023-01-26 13:59:15.952414381 +0100 @@ -1,7 +1,7 @@ # # spec file for package ell # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,7 +18,7 @@ %define lname libell0 Name: ell -Version: 0.55 +Version: 0.56 Release: 0 Summary: Wireless setup and cryptography library License: LGPL-2.1-or-later ++++++ ell-0.55.tar.xz -> ell-0.56.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.55/ChangeLog new/ell-0.56/ChangeLog --- old/ell-0.55/ChangeLog 2022-12-18 20:40:29.000000000 +0100 +++ new/ell-0.56/ChangeLog 2023-01-23 19:26:15.000000000 +0100 @@ -1,3 +1,6 @@ +ver 0.56: + Add support for TLS session resume interfaces. + ver 0.55: Fix issue with DHCP and blocked unicast requests. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.55/configure new/ell-0.56/configure --- old/ell-0.55/configure 2022-12-18 20:42:13.000000000 +0100 +++ new/ell-0.56/configure 2023-01-23 19:27:51.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for ell 0.55. +# Generated by GNU Autoconf 2.71 for ell 0.56. # # # Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation, @@ -618,8 +618,8 @@ # Identity of this package. PACKAGE_NAME='ell' PACKAGE_TARNAME='ell' -PACKAGE_VERSION='0.55' -PACKAGE_STRING='ell 0.55' +PACKAGE_VERSION='0.56' +PACKAGE_STRING='ell 0.56' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1380,7 +1380,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures ell 0.55 to adapt to many kinds of systems. +\`configure' configures ell 0.56 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1451,7 +1451,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of ell 0.55:";; + short | recursive ) echo "Configuration of ell 0.56:";; esac cat <<\_ACEOF @@ -1578,7 +1578,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -ell configure 0.55 +ell configure 0.56 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -1839,7 +1839,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by ell $as_me 0.55, which was +It was created by ell $as_me 0.56, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -3114,7 +3114,7 @@ # Define the identity of the package. PACKAGE='ell' - VERSION='0.55' + VERSION='0.56' printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h @@ -14344,7 +14344,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by ell $as_me 0.55, which was +This file was extended by ell $as_me 0.56, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -14412,7 +14412,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -ell config.status 0.55 +ell config.status 0.56 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.55/configure.ac new/ell-0.56/configure.ac --- old/ell-0.55/configure.ac 2022-12-18 20:40:29.000000000 +0100 +++ new/ell-0.56/configure.ac 2023-01-23 19:26:15.000000000 +0100 @@ -1,5 +1,5 @@ AC_PREREQ([2.69]) -AC_INIT([ell],[0.55]) +AC_INIT([ell],[0.56]) AC_CONFIG_HEADERS(config.h) AC_CONFIG_AUX_DIR(build-aux) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.55/ell/ell.sym new/ell-0.56/ell/ell.sym --- old/ell-0.55/ell/ell.sym 2022-11-18 10:08:38.000000000 +0100 +++ new/ell-0.56/ell/ell.sym 2023-01-23 19:26:15.000000000 +0100 @@ -15,6 +15,8 @@ l_streq0; l_util_hexstring; l_util_hexstring_upper; + l_util_hexstringv; + l_util_hexstringv_upper; l_util_from_hexstring; l_util_hexdump; l_util_hexdump_two; @@ -519,6 +521,7 @@ l_tls_set_version_range; l_tls_set_domain_mask; l_tls_set_session_cache; + l_tls_get_session_resumed; l_tls_alert_to_str; l_tls_set_debug; l_tls_set_cert_dump_path; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.55/ell/tls-private.h new/ell-0.56/ell/tls-private.h --- old/ell-0.55/ell/tls-private.h 2022-11-18 10:08:38.000000000 +0100 +++ new/ell-0.56/ell/tls-private.h 2023-01-23 19:26:15.000000000 +0100 @@ -266,6 +266,7 @@ uint8_t session_cipher_suite_id[2]; uint8_t session_compression_method_id; char *session_peer_identity; + bool session_resumed; struct { bool secure_renegotiation; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.55/ell/tls.c new/ell-0.56/ell/tls.c --- old/ell-0.55/ell/tls.c 2022-11-18 10:08:38.000000000 +0100 +++ new/ell-0.56/ell/tls.c 2023-01-23 19:26:15.000000000 +0100 @@ -213,6 +213,7 @@ tls->session_id_size_replaced = 0; tls->session_id_new = false; l_free(l_steal_ptr(tls->session_peer_identity)); + tls->session_resumed = false; } static void tls_cleanup_handshake(struct l_tls *tls) @@ -3058,6 +3059,7 @@ TLS_SET_STATE(TLS_HANDSHAKE_DONE); tls->ready = true; + tls->session_resumed = resuming; if (session_update && tls->session_update_cb) { tls->in_callback = true; @@ -3841,6 +3843,14 @@ tls->session_prefix = l_strdup(group_prefix); } +LIB_EXPORT bool l_tls_get_session_resumed(struct l_tls *tls) +{ + if (unlikely(!tls || !tls->ready)) + return false; + + return tls->session_resumed; +} + LIB_EXPORT const char *l_tls_alert_to_str(enum l_tls_alert_desc desc) { switch (desc) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.55/ell/tls.h new/ell-0.56/ell/tls.h --- old/ell-0.55/ell/tls.h 2022-11-18 10:08:38.000000000 +0100 +++ new/ell-0.56/ell/tls.h 2023-01-23 19:26:15.000000000 +0100 @@ -134,6 +134,7 @@ unsigned int max_sessions, l_tls_session_update_cb_t update_cb, void *user_data); +bool l_tls_get_session_resumed(struct l_tls *tls); const char *l_tls_alert_to_str(enum l_tls_alert_desc desc); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.55/ell/util.c new/ell-0.56/ell/util.c --- old/ell-0.55/ell/util.c 2021-08-01 21:49:37.000000000 +0200 +++ new/ell-0.56/ell/util.c 2023-01-23 19:26:15.000000000 +0100 @@ -376,6 +376,36 @@ return str; } +static char *hexstringv_common(const struct iovec *iov, size_t n_iov, + const char hexdigits[static 16]) +{ + char *str; + size_t i, j, c; + size_t len; + + if (unlikely(!iov || !n_iov)) + return NULL; + + for (i = 0, len = 0; i < n_iov; i++) + len += iov[i].iov_len; + + str = l_malloc(len * 2 + 1); + c = 0; + + for (i = 0; i < n_iov; i++) { + const uint8_t *buf = iov[i].iov_base; + + for (j = 0; j < iov[i].iov_len; j++) { + str[c++] = hexdigits[buf[j] >> 4]; + str[c++] = hexdigits[buf[j] & 0xf]; + } + } + + str[len * 2] = '\0'; + + return str; +} + /** * l_util_hexstring: * @buf: buffer pointer @@ -407,6 +437,36 @@ } /** + * l_util_hexstringv: + * @iov: iovec + * @n_iov: length of the iovec + * + * Returns: a newly allocated hex string. Note that the string will contain + * lower case hex digits a-f. If you require upper case hex digits, use + * @l_util_hexstringv_upper + **/ +LIB_EXPORT char *l_util_hexstringv(const struct iovec *iov, size_t n_iov) +{ + static const char hexdigits[] = "0123456789abcdef"; + return hexstringv_common(iov, n_iov, hexdigits); +} + +/** + * l_util_hexstringv_upper: + * @iov: iovec + * @n_iov: length of the iovec + * + * Returns: a newly allocated hex string. Note that the string will contain + * upper case hex digits a-f. If you require lower case hex digits, use + * @l_util_hexstringv + **/ +LIB_EXPORT char *l_util_hexstringv_upper(const struct iovec *iov, size_t n_iov) +{ + static const char hexdigits[] = "0123456789ABCDEF"; + return hexstringv_common(iov, n_iov, hexdigits); +} + +/** * l_util_from_hexstring: * @str: Null-terminated string containing the hex-encoded bytes * @out_len: Number of bytes decoded diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.55/ell/util.h new/ell-0.56/ell/util.h --- old/ell-0.55/ell/util.h 2022-07-15 18:22:44.000000000 +0200 +++ new/ell-0.56/ell/util.h 2023-01-23 19:26:15.000000000 +0100 @@ -282,6 +282,8 @@ char *l_util_hexstring(const void *buf, size_t len); char *l_util_hexstring_upper(const void *buf, size_t len); +char *l_util_hexstringv(const struct iovec *iov, size_t n_iov); +char *l_util_hexstringv_upper(const struct iovec *iov, size_t n_iov); unsigned char *l_util_from_hexstring(const char *str, size_t *out_len); typedef void (*l_util_hexdump_func_t) (const char *str, void *user_data); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.55/unit/test-util.c new/ell-0.56/unit/test-util.c --- old/ell-0.55/unit/test-util.c 2021-02-04 17:11:59.000000000 +0100 +++ new/ell-0.56/unit/test-util.c 2023-01-23 19:26:15.000000000 +0100 @@ -39,6 +39,24 @@ l_free(hex); } +static void test_hexstringv(const void *test_data) +{ + unsigned char test1[] = { 0x74, 0x65, 0x73, 0x74, 0x00 }; + unsigned char test2[] = { 0x74, 0x65, 0x73 }; + struct iovec iov[2]; + char *hex; + + iov[0].iov_base = test1; + iov[0].iov_len = 5; + iov[1].iov_base = test2; + iov[1].iov_len = 3; + + hex = l_util_hexstringv(iov, 2); + assert(hex); + assert(!strcmp(hex, "7465737400746573")); + l_free(hex); +} + static void test_hexstring_upper(const void *test_data) { unsigned char test[] = { 0x0a, 0x0b, 0x0c, 0xde, 0xf2 }; @@ -151,6 +169,7 @@ l_test_add("l_util_hexstring", test_hexstring, NULL); l_test_add("l_util_hexstring_upper", test_hexstring_upper, NULL); + l_test_add("l_util_hexstringv", test_hexstringv, NULL); l_test_add("l_util_from_hexstring", test_from_hexstring, NULL); l_test_add("l_util_has_suffix", test_has_suffix, NULL);