diff --git a/0001-fcoemon-add-snprintf-string-precision-modifiers-in-f.patch b/0001-fcoemon-add-snprintf-string-precision-modifiers-in-f.patch deleted file mode 100644 index 1c9e3b3..0000000 --- a/0001-fcoemon-add-snprintf-string-precision-modifiers-in-f.patch +++ /dev/null @@ -1,95 +0,0 @@ -From c54147b3ada8c37a536a4df90e8707538021ed20 Mon Sep 17 00:00:00 2001 -From: Chris Leech -Date: Fri, 4 Feb 2022 09:21:47 -0800 -Subject: [PATCH 1/1] fcoemon: add snprintf string precision modifiers in - fcm_netif_advance - -GCC 12 is warning of potential snprintf truncations - -fcm_netif.ifname is an IFNAMSIZ array, but formating with %s doesn't -understand that, so add a precision modifier every time we print it to -limit the output. This allows the compiler to verify that the output -buffer is of sufficient length to never truncate. - -Signed-off-by: Chris Leech ---- - fcoemon.c | 28 ++++++++++++++-------------- - 1 file changed, 14 insertions(+), 14 deletions(-) - -diff --git a/fcoemon.c b/fcoemon.c -index 8c08bc5a032..b85f276c7df 100644 ---- a/fcoemon.c -+++ b/fcoemon.c -@@ -3135,55 +3135,55 @@ static void fcm_netif_advance(struct fcm_netif *ff) - case FCD_ERROR: - break; - case FCD_GET_DCB_STATE: -- snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%s", -+ snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%.*s", - DCB_CMD, CLIF_RSP_VERSION, - CMD_GET_CONFIG, FEATURE_DCB, 0, -- (u_int) strlen(ff->ifname), ff->ifname); -+ (u_int) strlen(ff->ifname), IFNAMSIZ, ff->ifname); - ff->response_pending = fcm_dcbd_request(buf); - break; - case FCD_SEND_CONF: - snprintf(params, sizeof(params), "%x1%x02", - ff->ff_app_info.enable, - ff->ff_app_info.willing); -- snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%s%s", -+ snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%.*s%s", - DCB_CMD, CLIF_RSP_VERSION, - CMD_SET_CONFIG, FEATURE_APP, APP_FCOE_STYPE, -- (u_int) strlen(ff->ifname), ff->ifname, params); -+ (u_int) strlen(ff->ifname), IFNAMSIZ, ff->ifname, params); - ff->response_pending = fcm_dcbd_request(buf); - break; - case FCD_GET_PFC_CONFIG: -- snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%s%s", -+ snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%.*s%s", - DCB_CMD, CLIF_RSP_VERSION, - CMD_GET_CONFIG, FEATURE_PFC, 0, -- (u_int) strlen(ff->ifname), ff->ifname, ""); -+ (u_int) strlen(ff->ifname), IFNAMSIZ, ff->ifname, ""); - ff->response_pending = fcm_dcbd_request(buf); - break; - case FCD_GET_APP_CONFIG: -- snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%s%s", -+ snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%.*s%s", - DCB_CMD, CLIF_RSP_VERSION, - CMD_GET_CONFIG, FEATURE_APP, APP_FCOE_STYPE, -- (u_int) strlen(ff->ifname), ff->ifname, ""); -+ (u_int) strlen(ff->ifname), IFNAMSIZ, ff->ifname, ""); - ff->response_pending = fcm_dcbd_request(buf); - break; - case FCD_GET_PFC_OPER: -- snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%s%s", -+ snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%.*s%s", - DCB_CMD, CLIF_RSP_VERSION, - CMD_GET_OPER, FEATURE_PFC, 0, -- (u_int) strlen(ff->ifname), ff->ifname, ""); -+ (u_int) strlen(ff->ifname), IFNAMSIZ, ff->ifname, ""); - ff->response_pending = fcm_dcbd_request(buf); - break; - case FCD_GET_APP_OPER: -- snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%s%s", -+ snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%.*s%s", - DCB_CMD, CLIF_RSP_VERSION, - CMD_GET_OPER, FEATURE_APP, APP_FCOE_STYPE, -- (u_int) strlen(ff->ifname), ff->ifname, ""); -+ (u_int) strlen(ff->ifname), IFNAMSIZ, ff->ifname, ""); - ff->response_pending = fcm_dcbd_request(buf); - break; - case FCD_GET_PEER: -- snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%s%s", -+ snprintf(buf, sizeof(buf), "%c%x%2.2x%2.2x%2.2x%2.2x%.*s%s", - DCB_CMD, CLIF_RSP_VERSION, - CMD_GET_PEER, FEATURE_APP, APP_FCOE_STYPE, -- (u_int) strlen(ff->ifname), ff->ifname, ""); -+ (u_int) strlen(ff->ifname), IFNAMSIZ, ff->ifname, ""); - ff->response_pending = fcm_dcbd_request(buf); - break; - case FCD_DONE: --- -2.34.1 - diff --git a/0002-Don-t-attempt-to-memcpy-zero-bytes.patch b/0002-Don-t-attempt-to-memcpy-zero-bytes.patch deleted file mode 100644 index fa45a14..0000000 --- a/0002-Don-t-attempt-to-memcpy-zero-bytes.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 78a5e2e17bba531b41101ca036a5bb1a0d5caca5 Mon Sep 17 00:00:00 2001 -From: Stephen Gallagher -Date: Tue, 6 Feb 2024 21:15:33 -0500 -Subject: [PATCH 2/2] Don't attempt to memcpy() zero bytes - -add_rtattr_nest() is called in several places in the code. As part of -its operation, it calls add_rtattr(nm type, NULL, 0) which results in -NULL and 0 being passed to memcpy(). This fails with -Werror=nonnull -on recent GCC. - -Signed-off-by: Stephen Gallagher ---- - lib/rtnetlink.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/lib/rtnetlink.c b/lib/rtnetlink.c -index 3b8413718997568a20752791807b19c1f299955e..faa60d7c12f68af175d223b6c3c3257a982e4f37 100644 ---- a/lib/rtnetlink.c -+++ b/lib/rtnetlink.c -@@ -172,7 +172,10 @@ static void add_rtattr(struct nlmsghdr *n, int type, const void *data, int alen) - - rta->rta_type = type; - rta->rta_len = len; -- memcpy(RTA_DATA(rta), data, alen); -+ if (alen > 0) -+ { -+ memcpy(RTA_DATA(rta), data, alen); -+ } - n->nlmsg_len = NLMSG_ALIGN(n->nlmsg_len) + RTA_ALIGN(len); - } - --- -2.43.0 - diff --git a/0003-initialization-discards-const-qualifier-from-pointer.patch b/0003-initialization-discards-const-qualifier-from-pointer.patch deleted file mode 100644 index 39fc30e..0000000 --- a/0003-initialization-discards-const-qualifier-from-pointer.patch +++ /dev/null @@ -1,44 +0,0 @@ -From dfadd3fd53860a8f44871e479bf602a2fa3bae53 Mon Sep 17 00:00:00 2001 -From: Chris Leech -Date: Tue, 6 Jan 2026 16:20:49 -0800 -Subject: [PATCH 1/1] =?UTF-8?q?initialization=20discards=20=E2=80=98const?= - =?UTF-8?q?=E2=80=99=20qualifier=20from=20pointer=20target=20type?= -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Chris Leech ---- - lib/fcoe_utils.c | 2 +- - lib/sysfs_hba.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/lib/fcoe_utils.c b/lib/fcoe_utils.c -index 4d13dd7ecf9..5ea713679a5 100644 ---- a/lib/fcoe_utils.c -+++ b/lib/fcoe_utils.c -@@ -161,7 +161,7 @@ int fcoe_checkdir(char *dir) - */ - char *get_ifname_from_symbolic_name(const char *symbolic_name) - { -- char *last_space = strrchr(symbolic_name, ' '); -+ const char *last_space = strrchr(symbolic_name, ' '); - - if (!last_space || strlen(last_space) == 1) - return NULL; -diff --git a/lib/sysfs_hba.c b/lib/sysfs_hba.c -index 381f335d7ea..302ce634954 100644 ---- a/lib/sysfs_hba.c -+++ b/lib/sysfs_hba.c -@@ -441,7 +441,7 @@ char *get_pci_dev_from_netdev(const char *netdev) - free(path); - if (ret == -1) { - char realdev[256]; -- char *subif; -+ const char *subif; - size_t len; - - subif = strchr(netdev, '.'); --- -2.52.0 - diff --git a/fcoe-utils-gcc11.patch b/fcoe-utils-gcc11.patch new file mode 100644 index 0000000..3614194 --- /dev/null +++ b/fcoe-utils-gcc11.patch @@ -0,0 +1,28 @@ +diff --git a/Makefile.am b/Makefile.am +index 2f323e4..d6bc3c3 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -25,6 +25,10 @@ fcping_CFLAGS = $(AM_CFLAGS) + ## rules for building fipvlan + fipvlan_SOURCES = fipvlan.c + fipvlan_LDADD = lib/libutil.a ++# These look like valid warnings, but the code may be fine in practice. Someone ++# with a deeper understanding of the source needs to chime in ++fipvlan_CFLAGS = $(AM_CFLAGS) -Wno-error=array-bounds -Wno-stringop-overread ++ + + AUTOMAKE_OPTIONS=subdir-objects + noinst_LIBRARIES = lib/libutil.a libopenfcoe.a +diff --git a/Makefile.am b/Makefile.am +index 11262ec..08bc207 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -20,7 +20,7 @@ fcoemon_CFLAGS = $(AM_CFLAGS) $(DCBD_CFLAGS) + ## rules for building fcping + fcping_SOURCES = fcping.c + fcping_LDADD = lib/libutil.a libopenfcoe.a $(PCIACCESS_LIBS) -lrt +-fcping_CFLAGS = $(AM_CFLAGS) ++fcping_CFLAGS = $(AM_CFLAGS) -Wno-error=stringop-overflow + + ## rules for building fipvlan + fipvlan_SOURCES = fipvlan.c diff --git a/fcoe-utils.spec b/fcoe-utils.spec index 1794653..e4f2469 100644 --- a/fcoe-utils.spec +++ b/fcoe-utils.spec @@ -1,18 +1,19 @@ # https://fedoraproject.org/wiki/Packaging:Guidelines#Compiler_flags %global _hardened_build 1 -# v1.0.34-2 -%global commit0 b233050792cc5fa54ba1da257706ca2b5ef3c987 +# v1.0.33-9-g848bcc6ba8c +%global commit0 848bcc6ba8cda1f344663b4e73f1bc4857bcb4e3 %global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) Name: fcoe-utils -Version: 1.0.34 -Release: 13.git%{shortcommit0}%{?dist} +Version: 1.0.33 +Release: 5.git%{shortcommit0}%{?dist} Summary: Fibre Channel over Ethernet utilities -License: GPL-2.0-only +License: GPLv2 URL: http://www.open-fcoe.org Source0: https://github.com/openSUSE/fcoe-utils/archive/%{commit0}.tar.gz#/%{name}-%{version}-%{shortcommit0}.tar.gz ExcludeArch: ppc s390 +Patch3: %{name}-gcc11.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: libtool @@ -27,16 +28,6 @@ Requires(post): systemd Requires(preun): systemd Requires(postun): systemd -Patch1: 0001-fcoemon-add-snprintf-string-precision-modifiers-in-f.patch - -# https://github.com/openSUSE/fcoe-utils/pull/25 -Patch2: 0002-Don-t-attempt-to-memcpy-zero-bytes.patch - -Patch3: 0003-initialization-discards-const-qualifier-from-pointer.patch - -# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval -ExcludeArch: %{ix86} - %description Fibre Channel over Ethernet utilities fcoeadm - command line tool for configuring FCoE interfaces @@ -88,59 +79,6 @@ done %{_libexecdir}/fcoe/ %changelog -* Wed Jan 07 2026 Chris Leech - 1.0.34-13.gitb233050 -- FTBFS: GCC 16 -Werror=discarded-qualifiers - -* Wed Jul 23 2025 Fedora Release Engineering - 1.0.34-12.gitb233050 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Thu Jan 16 2025 Fedora Release Engineering - 1.0.34-11.gitb233050 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Wed Jul 17 2024 Fedora Release Engineering - 1.0.34-10.gitb233050 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Tue Feb 06 2024 Stephen Gallagher - 1.0.34-9.gitb233050 -- FTBFS: Don't attempt to memcpy() zero bytes - -* Wed Jan 24 2024 Fedora Release Engineering - 1.0.34-8.gitb233050 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jan 19 2024 Fedora Release Engineering - 1.0.34-7.gitb233050 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Mon Oct 30 2023 Chris Leech - 1.0.34-6.gitb233050 -- use SPDX in license tag - -* Wed Jul 19 2023 Fedora Release Engineering - 1.0.34-5.gitb233050 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Thu Jan 19 2023 Fedora Release Engineering - 1.0.34-4.gitb233050 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Thu Jul 21 2022 Fedora Release Engineering - 1.0.34-3.gitb233050 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Fri Feb 04 2022 Chris Leech - 1.0.34-2.gitb233050 -- FTBFS: more gcc 12 snprintf truncation issues on 32-bit arch - -* Fri Jan 28 2022 Chris Leech - 1.0.34-1.gitb233050 -- FTBFS: update with gcc 12 fix from upstream - -* Thu Jan 20 2022 Fedora Release Engineering - 1.0.34-0.git14ef0d2.2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Wed Jul 21 2021 Fedora Release Engineering - 1.0.34-0.git14ef0d2.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Apr 14 2021 Chris Leech - 1.0.34-0.git14ef0d2 -- upstream 1.0.34 -- drop gcc11 warning disabling patch, warnings have been addressed upstream - -* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 1.0.33-6.git848bcc6 -- Rebuilt for updated systemd-rpm-macros - See https://pagure.io/fesco/issue/2583. - * Tue Feb 02 2021 Chris Leech - 1.0.33-5.git848bcc6 - add in RHEL conditional for removed fcoe.ko support diff --git a/sources b/sources index 31e1a11..5f6df35 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (fcoe-utils-1.0.34-b233050.tar.gz) = 8fc7df765fb7a2a17f9d3b9ce67b2499b7f602671d75be663cb7a668b0cbdfe7126796548c16496dac964549c695de844e6599c026a71f3b67d3d5fe6c29f858 +SHA512 (fcoe-utils-1.0.33-848bcc6.tar.gz) = 1f591d4b950032f015399a56233510146791d6c0ac510c1c384ce430273445f4be94aaaeb144469b856830401f2089bb951ec3ee253b425ec9e02fbd8d639bda