Bug 2145144

Summary: libxtables: Revert change to struct xtables_pprot
Product: Red Hat Enterprise Linux 8 Reporter: Phil Sutter <psutter>
Component: iptablesAssignee: Phil Sutter <psutter>
Status: MODIFIED --- QA Contact: Jiri Peska <jpeska>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 8.8CC: egarver, jpeska, todoleza, toneata
Target Milestone: rcKeywords: TestOnly, Triaged, Upstream, ZStream
Target Release: 8.8   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: iptables-1.8.5-1.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 2221107 (view as bug list) Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2221107    

Description Phil Sutter 2022-11-23 10:53:18 UTC
One of the backports for Bug 2058444 introduced libxtables ABI breakage, fix
this by backporting the following commit:

commit a7c2b7289cd31455b854fee7d5c735c6270518a3
Author: Phil Sutter <phil>
Date:   Fri May 6 00:11:47 2022 +0200

    libxtables: Revert change to struct xtables_pprot

    While protocol values may exceed eight bits, the data structure is
    indeed used only to store the static list of name/value pairs for faster
    lookups. None of those has such a value and if one is added in future,
    the compiler will complain about it.

    So restore the old field type to retain binary compatibility.

    Fixes: 556f704458cdb ("Use proto_to_name() from xshared in more places")
    Signed-off-by: Phil Sutter <phil>

RHEL9 is unaffected, RHEL8.6 has the fix already via Bug 2137953, RHEL8.7 needs
to be fixed as well.

Comment 4 Phil Sutter 2023-07-07 09:54:33 UTC
Marking as TestOnly since the fix is already contained in backports for bug 2211063.

Given the fact that there is no functional change (unless crafted by custom code relying upon the data structure layout), sanity only testing probably suffices.