Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package netcontrol for openSUSE:Factory checked in at 2023-07-24 18:11:52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/netcontrol (Old) and /work/SRC/openSUSE:Factory/.netcontrol.new.1467 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "netcontrol" Mon Jul 24 18:11:52 2023 rev:21 rq:1099929 version:0.3.2 Changes: -------- --- /work/SRC/openSUSE:Factory/netcontrol/netcontrol.changes 2021-06-18 10:13:38.525982810 +0200 +++ /work/SRC/openSUSE:Factory/.netcontrol.new.1467/netcontrol.changes 2023-07-24 18:11:59.705221496 +0200 @@ -1,0 +2,8 @@ +Fri Jul 21 15:06:25 UTC 2023 - Clemens Famulla-Conrad <cfamullacon...@suse.com> + +- Fix EOF handling in xml-reader to avoid `virsh iface-*` commands + hang on aarch64 (bsc#1213349) + [+ 0001-xml-reader-fix-xml_getc-and-xml_ungetc.patch, + + 0002-xml-reader-allow-uppercase-for-lt-gt-and-amp-expansi.patch] + +------------------------------------------------------------------- New: ---- 0001-xml-reader-fix-xml_getc-and-xml_ungetc.patch 0002-xml-reader-allow-uppercase-for-lt-gt-and-amp-expansi.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ netcontrol.spec ++++++ --- /var/tmp/diff_new_pack.ptmrFD/_old 2023-07-24 18:12:01.133229900 +0200 +++ /var/tmp/diff_new_pack.ptmrFD/_new 2023-07-24 18:12:01.181230182 +0200 @@ -1,7 +1,7 @@ # # spec file for package netcontrol # -# Copyright (c) 2021 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 @@ -31,6 +31,8 @@ Group: Productivity/Networking/System Source0: %{name}-%{version}.tar.bz2 Source1: baselibs.conf +Patch1: 0001-xml-reader-fix-xml_getc-and-xml_ungetc.patch +Patch2: 0002-xml-reader-allow-uppercase-for-lt-gt-and-amp-expansi.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %if 0%{?suse_version} >= 1310 BuildRequires: autoconf @@ -102,6 +104,8 @@ %prep %setup -q +%patch1 -p1 +%patch2 -p1 %build export CFLAGS="-W -Wall $RPM_OPT_FLAGS" ++++++ 0001-xml-reader-fix-xml_getc-and-xml_ungetc.patch ++++++ >From ad6ac1b9685d6340ee1f430eeec0bf800b4e5fa1 Mon Sep 17 00:00:00 2001 From: Clemens Famulla-Conrad <cfamullacon...@suse.de> Date: Fri, 21 Jul 2023 15:57:42 +0200 Subject: [PATCH 1/2] xml-reader: fix xml_getc() and xml_ungetc() References: bsc#1213349 Upstream: yes diff --git a/src/xml-reader.c b/src/xml-reader.c index ca7f820..e5e9587 100644 --- a/src/xml-reader.c +++ b/src/xml-reader.c @@ -70,7 +70,7 @@ typedef enum { typedef struct xml_reader { const char * filename; FILE * file; - char * buffer; + unsigned char * buffer; unsigned int no_close : 1; @@ -107,8 +107,8 @@ static void xml_debug(const char *, ...); static int xml_reader_init_file(xml_reader_t *xr, FILE *fp); static int xml_reader_open(xml_reader_t *xr, const char *filename); static int xml_reader_destroy(xml_reader_t *xr); -static char xml_getc(xml_reader_t *xr); -static void xml_ungetc(xml_reader_t *xr, char cc); +static int xml_getc(xml_reader_t *xr); +static void xml_ungetc(xml_reader_t *xr, int cc); /* * Document reader implementation @@ -463,7 +463,7 @@ xml_token_type_t xml_get_token_initial(xml_reader_t *xr, nc_stringbuf_t *res) { xml_token_type_t token; - char cc; + int cc; restart: /* Eat initial white space and store it in @res */ @@ -551,7 +551,7 @@ restart: xml_token_type_t xml_get_token_tag(xml_reader_t *xr, nc_stringbuf_t *res) { - char cc, oc; + int cc, oc; xml_skip_space(xr, NULL); @@ -632,8 +632,7 @@ error: xml_token_type_t xml_skip_comment(xml_reader_t *xr) { - int match = 0; - char cc; + int match = 0, cc; if (xml_getc(xr) != '-') { xml_parse_error(xr, "Unexpected <!-...> element"); @@ -668,7 +667,7 @@ int xml_expand_entity(xml_reader_t *xr, nc_stringbuf_t *res) { nc_stringbuf_t entity = NC_STRINGBUF_INIT; - char cc, expanded; + int cc, expanded; if(nc_stringbuf_grow(&entity, 128) < 0) { xml_parse_error(xr, "Unable to allocate entity buffer"); @@ -680,7 +679,7 @@ xml_expand_entity(xml_reader_t *xr, nc_stringbuf_t *res) xml_parse_error(xr, "Unexpenced EOF in entity"); return 0; } - if (isspace(cc)) + if (isspace((unsigned int)cc)) continue; nc_stringbuf_putc(&entity, cc); } @@ -720,7 +719,7 @@ good: void xml_skip_space(xml_reader_t *xr, nc_stringbuf_t *result) { - char cc; + int cc; while ((cc = xml_getc(xr)) != EOF) { if (!isspace(cc)) { @@ -863,10 +862,10 @@ xml_reader_destroy(xml_reader_t *xr) return rv; } -char +int xml_getc(xml_reader_t *xr) { - char cc; + int cc; while (1) { if (xr->pos) { @@ -883,17 +882,17 @@ xml_getc(xml_reader_t *xr) break; } - if (fgets(xr->buffer, XML_READER_BUFSZ, xr->file) == NULL) + if (fgets((char *)xr->buffer, XML_READER_BUFSZ, xr->file) == NULL) break; - xr->pos = (unsigned char *) xr->buffer; + xr->pos = xr->buffer; } return EOF; } void -xml_ungetc(xml_reader_t *xr, char cc) +xml_ungetc(xml_reader_t *xr, int cc) { if (xr->pos == NULL || xr->pos == (unsigned char *) xr->buffer -- 2.35.3 ++++++ 0002-xml-reader-allow-uppercase-for-lt-gt-and-amp-expansi.patch ++++++ >From 9a38e053226d01721126a21ee80396488782995d Mon Sep 17 00:00:00 2001 From: Clemens Famulla-Conrad <cfamullacon...@suse.de> Date: Fri, 21 Jul 2023 15:59:00 +0200 Subject: [PATCH 2/2] xml-reader: allow uppercase for <, > and & expansion References: bsc#1213349 Upstream: yes diff --git a/src/xml-reader.c b/src/xml-reader.c index e5e9587..1ab16ea 100644 --- a/src/xml-reader.c +++ b/src/xml-reader.c @@ -689,11 +689,11 @@ xml_expand_entity(xml_reader_t *xr, nc_stringbuf_t *res) return 0; } - if (!strcmp(entity.string, "lt")) + if (!strcasecmp(entity.string, "lt")) expanded = '<'; - else if (!strcmp(entity.string, "gt")) + else if (!strcasecmp(entity.string, "gt")) expanded = '>'; - else if (!strcmp(entity.string, "amp")) + else if (!strcasecmp(entity.string, "amp")) expanded = '&'; else { const char *es = entity.string; -- 2.35.3