Bug 2044918

Summary: annocheck FAIL: pie test (gcc)
Product: Red Hat Enterprise Linux 9 Reporter: rlemosor
Component: gccAssignee: Marek Polacek <mpolacek>
gcc sub component: system-version QA Contact: qe-baseos-tools-bugs
Status: CLOSED DUPLICATE Docs Contact:
Severity: unspecified    
Priority: unspecified CC: ahajkova, fweimer, jakub, ohudlick
Version: 9.0   
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-01-25 17:16:59 UTC Type: ---
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: 2044387    

Description rlemosor 2022-01-25 10:48:23 UTC
Failed test: pie test

Test results:
\n Hardened: cpp: FAIL: pie test because not built with '-Wl'-pie' (gcc/clang) or '-buildmode pie' (go) \n Hardened: cpp: FAIL: bind-now test because not linked with -Wl'-z'now \n Hardened: cpp: FAIL: fortify test because -D_FORTIFY_SOURCE=2 was not present on the command line \n Hardened: cc1: FAIL: pie test because not built with '-Wl'-pie' (gcc/clang) or '-buildmode pie' (go) \n Hardened: cc1: FAIL: bind-now test because not linked with -Wl'-z'now \n Hardened: cc1: FAIL: fortify test because -D_FORTIFY_SOURCE=2 was not present on the command line

Applicable RPMs:
cpp-11.2.1-7.5.el9.aarch64.rpm; gcc-11.2.1-7.5.el9.aarch64.rpm; gcc-c++-11.2.1-7.5.el9.aarch64.rpm; gcc-gfortran-11.2.1-7.5.el9.aarch64.rpm; libgccjit-11.2.1-7.5.el9.aarch64.rpm; libstdc++-devel-11.2.1-7.5.el9.aarch64.rpm

Recommendation: Please fix the build system for the package or else add a skip of tests to the rpminspect.yaml file. For more details please see https://sourceware.org/annobin/annobin.html/Test-pie.html and https://sourceware.org/annobin/annobin.html/Waiving-Hardened-Results.html#Waiving-Hardened-Results.

Why this bug was filed: All packages in RHEL 9 built with gcc (g++, etc.) are required to use a common set of flags provided by the distribution. These flags turn on important security and performance features so it is critical that any package that lacks these flags be repaired. A scanning tool named annocheck, part of the annobin package, was used to scan RHEL 9 packages. This BZ was created because binary packages of this component with the mentioned NVRs were not built with the requisite flags for one or more RHEL 9 architectures.

How to reproduce the failure: You could try running annocheck locally against your builds: https://developers.redhat.com/blog/2019/02/04/annocheck-examining-the-contents-of-binary-files.

Annocheck resources:
* annobin documentation: https://sourceware.org/annobin/annobin.html/index.html
* annocheck on the customer portal: https://access.redhat.com/documentation/en-us/red_hat_developer_toolset/9/html/user_guide/chap-annobin

Contacts:
* Instant messaging: #tools on IRC
* Email: use tools for generic questions. Otherwise, use go-tools and llvm-clang-list for Go and Clang/LLVM specific questions.
* annobin-annocheck maintainer: Nick Clifton (nickc)

Comment 2 Marek Polacek 2022-01-25 17:16:59 UTC
Dup.

*** This bug has been marked as a duplicate of bug 2044917 ***