Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ell for openSUSE:Factory checked in at 2024-04-02 16:38:23 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ell (Old) and /work/SRC/openSUSE:Factory/.ell.new.1905 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ell" Tue Apr 2 16:38:23 2024 rev:42 rq:1163985 version:0.64 Changes: -------- --- /work/SRC/openSUSE:Factory/ell/ell.changes 2024-03-25 21:08:03.452873166 +0100 +++ /work/SRC/openSUSE:Factory/.ell.new.1905/ell.changes 2024-04-02 16:38:39.084914986 +0200 @@ -1,0 +2,7 @@ +Mon Apr 1 17:31:28 UTC 2024 - Luigi Baldoni <aloi...@gmx.com> + +- Update to version 0.64 + * Fix issue with casting in C++ environment. + * Fix issue with ASCII string upper and lower helpers. + +------------------------------------------------------------------- Old: ---- ell-0.63.tar.sign ell-0.63.tar.xz New: ---- ell-0.64.tar.sign ell-0.64.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ell.spec ++++++ --- /var/tmp/diff_new_pack.AbX3fE/_old 2024-04-02 16:38:39.684937098 +0200 +++ /var/tmp/diff_new_pack.AbX3fE/_new 2024-04-02 16:38:39.684937098 +0200 @@ -18,7 +18,7 @@ %define lname libell0 Name: ell -Version: 0.63 +Version: 0.64 Release: 0 Summary: Wireless setup and cryptography library License: LGPL-2.1-or-later ++++++ ell-0.63.tar.xz -> ell-0.64.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/ChangeLog new/ell-0.64/ChangeLog --- old/ell-0.63/ChangeLog 2024-02-26 20:31:30.000000000 +0100 +++ new/ell-0.64/ChangeLog 2024-03-29 00:14:53.000000000 +0100 @@ -1,3 +1,7 @@ +ver 0.64: + Fix issue with casting in C++ environment. + Fix issue with ASCII string upper and lower helpers. + ver 0.63: Fix issue with handling ending boundary of the PEM. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/configure new/ell-0.64/configure --- old/ell-0.63/configure 2024-02-26 20:33:12.000000000 +0100 +++ new/ell-0.64/configure 2024-03-29 00:16:30.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.63. +# Generated by GNU Autoconf 2.71 for ell 0.64. # # # 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.63' -PACKAGE_STRING='ell 0.63' +PACKAGE_VERSION='0.64' +PACKAGE_STRING='ell 0.64' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1389,7 +1389,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.63 to adapt to many kinds of systems. +\`configure' configures ell 0.64 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1460,7 +1460,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of ell 0.63:";; + short | recursive ) echo "Configuration of ell 0.64:";; esac cat <<\_ACEOF @@ -1590,7 +1590,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -ell configure 0.63 +ell configure 0.64 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -1851,7 +1851,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.63, which was +It was created by ell $as_me 0.64, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -3126,7 +3126,7 @@ # Define the identity of the package. PACKAGE='ell' - VERSION='0.63' + VERSION='0.64' printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h @@ -14419,7 +14419,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.63, which was +This file was extended by ell $as_me 0.64, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -14487,7 +14487,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -ell config.status 0.63 +ell config.status 0.64 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.63/configure.ac new/ell-0.64/configure.ac --- old/ell-0.63/configure.ac 2024-02-26 20:31:30.000000000 +0100 +++ new/ell-0.64/configure.ac 2024-03-29 00:14:53.000000000 +0100 @@ -1,5 +1,5 @@ AC_PREREQ([2.69]) -AC_INIT([ell],[0.63]) +AC_INIT([ell],[0.64]) AC_CONFIG_HEADERS(config.h) AC_CONFIG_AUX_DIR(build-aux) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/ell/cert.c new/ell-0.64/ell/cert.c --- old/ell-0.63/ell/cert.c 2023-09-27 11:03:04.000000000 +0200 +++ new/ell-0.64/ell/cert.c 2024-03-29 00:14:53.000000000 +0100 @@ -1658,7 +1658,6 @@ { const uint8_t *seq; size_t seq_len; - const uint8_t *elem_data; size_t elem_len; uint8_t tag; @@ -1674,8 +1673,7 @@ * to add any more formats we'll probably need to start guessing * from the filename suffix. */ - if (!(elem_data = asn1_der_find_elem(seq, seq_len, - 0, &tag, &elem_len))) + if (!asn1_der_find_elem(seq, seq_len,0, &tag, &elem_len)) return -ENOMSG; if (tag == ASN1_ID_SEQUENCE) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/ell/dbus.c new/ell-0.64/ell/dbus.c --- old/ell-0.63/ell/dbus.c 2023-09-27 11:03:04.000000000 +0200 +++ new/ell-0.64/ell/dbus.c 2024-03-29 00:14:53.000000000 +0100 @@ -1689,8 +1689,7 @@ va_start(args, member); rule_len = 0; - while ((type = va_arg(args, enum l_dbus_match_type)) != - L_DBUS_MATCH_NONE) + while (va_arg(args, enum l_dbus_match_type) != L_DBUS_MATCH_NONE) rule_len++; va_end(args); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/ell/ecc.c new/ell-0.64/ell/ecc.c --- old/ell-0.63/ell/ecc.c 2024-02-06 18:44:14.000000000 +0100 +++ new/ell-0.64/ell/ecc.c 2024-03-29 00:14:53.000000000 +0100 @@ -806,6 +806,14 @@ return NULL; } +LIB_EXPORT struct l_ecc_scalar *l_ecc_scalar_clone(const struct l_ecc_scalar *s) +{ + if (!s) + return NULL; + + return l_memdup(s, sizeof(*s)); +} + /* * Build a scalar = value modulo p where p is the prime number for a given * curve. bytes can contain a number with up to 2x number of digits as the diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/ell/ecc.h new/ell-0.64/ell/ecc.h --- old/ell-0.63/ell/ecc.h 2023-11-19 18:31:06.000000000 +0100 +++ new/ell-0.64/ell/ecc.h 2024-03-29 00:14:53.000000000 +0100 @@ -62,6 +62,7 @@ struct l_ecc_scalar *l_ecc_scalar_new(const struct l_ecc_curve *curve, const void *buf, size_t len); +struct l_ecc_scalar *l_ecc_scalar_clone(const struct l_ecc_scalar *s); struct l_ecc_scalar *l_ecc_scalar_new_random( const struct l_ecc_curve *curve); struct l_ecc_scalar *l_ecc_scalar_new_modp(const struct l_ecc_curve *curve, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/ell/ecdh.c new/ell-0.64/ell/ecdh.c --- old/ell-0.63/ell/ecdh.c 2023-09-27 11:03:04.000000000 +0200 +++ new/ell-0.64/ell/ecdh.c 2024-03-29 00:14:53.000000000 +0100 @@ -16,6 +16,7 @@ #include "ecc.h" #include "ecdh.h" #include "random.h" +#include "useful.h" /* * Some sane maximum for calculating the public key. @@ -41,6 +42,9 @@ int iter = 0; uint64_t p2[L_ECC_MAX_DIGITS]; + if (unlikely(!curve || !out_private || !out_public)) + return false; + _ecc_calculate_p2(curve, p2); *out_public = l_ecc_point_new(curve); @@ -77,6 +81,9 @@ struct l_ecc_scalar *z; struct l_ecc_point *product; + if (unlikely(!private_key || !other_public || !secret)) + return false; + z = l_ecc_scalar_new_random(curve); product = l_ecc_point_new(curve); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/ell/ell.sym new/ell-0.64/ell/ell.sym --- old/ell-0.63/ell/ell.sym 2024-02-06 18:44:14.000000000 +0100 +++ new/ell-0.64/ell/ell.sym 2024-03-29 00:14:53.000000000 +0100 @@ -611,6 +611,7 @@ l_ecc_scalar_legendre; l_ecc_scalar_multiply; l_ecc_scalar_new; + l_ecc_scalar_clone; l_ecc_scalar_new_random; l_ecc_scalar_new_modp; l_ecc_scalar_new_modn; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/ell/gvariant-util.c new/ell-0.64/ell/gvariant-util.c --- old/ell-0.63/ell/gvariant-util.c 2023-09-27 11:03:04.000000000 +0200 +++ new/ell-0.64/ell/gvariant-util.c 2024-03-29 00:14:53.000000000 +0100 @@ -843,7 +843,6 @@ offset_size = offset_length(builder->body_pos, container->offset_index); - i = container->offset_index - 1; start = grow_body(builder, offset_size * container->offset_index, 1); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/ell/queue.c new/ell-0.64/ell/queue.c --- old/ell-0.63/ell/queue.c 2024-02-06 18:44:14.000000000 +0100 +++ new/ell-0.64/ell/queue.c 2024-03-29 00:14:53.000000000 +0100 @@ -511,8 +511,6 @@ if (!entry->next) queue->tail = prev; - entry = entry->next; - data = tmp->data; l_free(tmp); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/ell/utf8.c new/ell-0.64/ell/utf8.c --- old/ell-0.63/ell/utf8.c 2024-02-06 18:44:14.000000000 +0100 +++ new/ell-0.64/ell/utf8.c 2024-03-29 00:14:53.000000000 +0100 @@ -63,11 +63,11 @@ if (len < 0) slen = strlen(str); else - slen = minsize(strlen(str), (size_t) len); + slen = len; ret = l_malloc(slen + 1); - for (i = 0; i < slen; i++) + for (i = 0; i < slen && str[i]; i++) ret[i] = l_ascii_tolower(str[i]); ret[i] = '\0'; @@ -95,11 +95,11 @@ if (len < 0) slen = strlen(str); else - slen = minsize(strlen(str), (size_t) len); + slen = len; ret = l_malloc(slen + 1); - for (i = 0; i < slen; i++) + for (i = 0; i < slen && str[i]; i++) ret[i] = l_ascii_toupper(str[i]); ret[i] = '\0'; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/ell/util.h new/ell-0.64/ell/util.h --- old/ell-0.63/ell/util.h 2024-02-06 18:44:14.000000000 +0100 +++ new/ell-0.64/ell/util.h 2024-03-29 00:14:53.000000000 +0100 @@ -43,6 +43,27 @@ r; \ }) +/* + * If ELL headers and iterfaces end up getting compiled in a C++ + * environment, even though ELL itself is a C source based and is + * compiled as such, certain assignments may be flagged by the C++ + * compiler as errors or warnings. The following portable casts should + * be used in such cases, with a preference towards L_PERMISSIVE_CAST + * where possible since it is not a cast in C and, therefore, will not + * mask otherwise-legitimate warnings in that environment. + */ +#ifdef __cplusplus +#define L_CONST_CAST(t, v) const_cast<t>(v) +#define L_REINTERPRET_CAST(t, v) reinterpret_cast<t>(v) +#define L_STATIC_CAST(t, v) static_cast<t>(v) +#define L_PERMISSIVE_CAST(t, v) L_STATIC_CAST(t, v) +#else +#define L_CONST_CAST(t, v) ((t)(v)) +#define L_REINTERPRET_CAST(t, v) ((t)(v)) +#define L_STATIC_CAST(t, v) ((t)(v)) +#define L_PERMISSIVE_CAST(t, v) (v) +#endif + #define L_PTR_TO_UINT(p) ((unsigned int) ((uintptr_t) (p))) #define L_UINT_TO_PTR(u) ((void *) ((uintptr_t) (u))) @@ -381,8 +402,10 @@ static inline int l_secure_memcmp(const void *a, const void *b, size_t size) { - const volatile uint8_t *aa = a; - const volatile uint8_t *bb = b; + const volatile uint8_t *aa = + L_PERMISSIVE_CAST(const volatile uint8_t *, a); + const volatile uint8_t *bb = + L_PERMISSIVE_CAST(const volatile uint8_t *, b); int res = 0, diff, mask; /* @@ -433,9 +456,9 @@ const void *left, const void *right, void *out, size_t len) { - const uint8_t *l = left; - const uint8_t *r = right; - uint8_t *o = out; + const uint8_t *l = L_PERMISSIVE_CAST(const uint8_t *, left); + const uint8_t *r = L_PERMISSIVE_CAST(const uint8_t *, right); + uint8_t *o = L_PERMISSIVE_CAST(uint8_t *, out); uint8_t mask = -(!!select_left); size_t i; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/unit/test-gvariant-util.c new/ell-0.64/unit/test-gvariant-util.c --- old/ell-0.63/unit/test-gvariant-util.c 2023-09-27 11:03:04.000000000 +0200 +++ new/ell-0.64/unit/test-gvariant-util.c 2024-03-29 00:14:53.000000000 +0100 @@ -644,6 +644,7 @@ assert(ret); ret = _gvariant_iter_enter_struct(&variant, &structure); + assert(ret); ret = _gvariant_iter_next_entry_basic(&structure, 's', &s); assert(ret); @@ -1047,6 +1048,7 @@ ret = _gvariant_iter_init(&iter, NULL, "a(yv)", NULL, test->data + 16, u); + assert(ret); ret = _gvariant_iter_enter_array(&iter, &array); assert(ret); @@ -1308,6 +1310,7 @@ assert(ret); ret = _gvariant_builder_append_basic(builder, 't', &t); + assert(ret); ret = _gvariant_builder_leave_struct(builder); assert(ret); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ell-0.63/unit/test-uintset.c new/ell-0.64/unit/test-uintset.c --- old/ell-0.63/unit/test-uintset.c 2023-09-27 11:03:04.000000000 +0200 +++ new/ell-0.64/unit/test-uintset.c 2024-03-29 00:14:53.000000000 +0100 @@ -411,7 +411,7 @@ assert(!l_uintset_contains(sub, 64)); l_uintset_free(sub); - l_uintset_take(set_b, 64); + assert(l_uintset_take(set_b, 64)); /* (64) - (65, 63) = (64) */ sub = l_uintset_subtract(set_a, set_b); @@ -424,6 +424,9 @@ assert(!l_uintset_contains(sub, 64)); assert(l_uintset_contains(sub, 63)); l_uintset_free(sub); + + l_uintset_free(set_b); + l_uintset_free(set_a); } int main(int argc, char *argv[])