Nick Clifton
1a9432d76e
Annocheck: Add test for ENDBR instruction at entry address of x86/x86_64 executables. ( #1652925 )
2018-11-26 14:17:58 +00:00
Nick Clifton
d3a48b47e3
Fix building with gcc version 4.
2018-11-19 12:06:27 +00:00
Nick Clifton
eef6b3c65b
Skip -Wl,-z,now and -Wl,-z,relro checks for non-gcc produced binaries.
2018-11-13 13:20:17 +00:00
Nick Clifton
819496e5f7
Ensure GNU Property notes are 8-byte aligned in x86_64 binaries.
...
Resolves : #1645817
2018-11-05 17:08:28 +00:00
Nick Clifton
9eeba2575d
Skip PPC64 linker stubs created in the middle of text sections (again). ( #1630640 )
2018-10-18 15:29:57 +01:00
Nick Clifton
b6fefda299
Suppress free of invalid pointer. ( #1638371 )
2018-10-18 13:19:51 +01:00
Nick Clifton
a7bd5f0b0f
Skip PPC64 linker stubs created in the middle of text sections. ( #1630640 )
2018-10-18 12:03:24 +01:00
Nick Clifton
107f5ddd12
Skip PPC64 linker stubs created in the middle of text sections.
...
Reset the (PPC64) section start symbol to 0 if its section is empty. (#1638251 )
2018-10-16 15:37:17 +01:00
Nick Clifton
31fd1dfa5c
Also skip virtual thinks created by G++. ( #1630619 )
2018-10-11 16:11:08 +01:00
Nick Clifton
a4ffb9c75e
Use uppercase for all fail/mayb/pass results. ( #1637706 )
2018-10-10 18:14:55 +01:00
Nick Clifton
28d895fe9d
Generate notes for unlikely sections. ( #1630620 )
2018-10-10 16:50:29 +01:00
Nick Clifton
863cedb167
Fix edge case computing section names for end symbols. ( #1637039 )
2018-10-08 17:13:56 +01:00
Nick Clifton
66bc6309ff
Skip dynamic checks for binaries without a dynamic segment. ( #1636606 )
2018-10-08 10:42:53 +01:00
Nick Clifton
1750e06470
- Delay generating attach_to_group directives until the end of the compilation. ( #1636265 )
...
- Fix bug introduced in previous delta which would trigger a seg-fault when scanning for gaps.
- Annobin: Fix section name selection for startup sections.
- Annocheck: Improve gap skipping heuristics. (#1630574 )
2018-10-05 12:22:45 +01:00
Nick Clifton
5b660fd112
Fix function section support (again). ( #1630574 )
2018-10-03 09:37:55 +01:00
Nick Clifton
fa19a50b6c
Skip compiler option checks for non-GNU producers. ( #1633749 )
...
Fix function section support (again). (#1630574 )
Ignore ppc64le notes where start = end + 2. (#1632259 )
2018-10-01 10:01:11 +01:00
Nick Clifton
50a4793ba2
Make annocheck ignore symbols suffixed with ".end".
2018-09-25 10:17:37 +01:00
Nick Clifton
740bbaa891
Tweak tests.
2018-09-21 21:34:13 +01:00
Nick Clifton
2cdf84f0b4
Generate notes and groups for .text.hot and .text.unlikely sections.
...
When -ffunction-sections is active, put notes for startup sections into .text.startup.foo rather than .text.foo.
Similarly put exit section notes into .text.exit.foo. (#1630574 )
Change annocheck's maybe result for GNU Property note being missing into a PASS if it is not needed and a FAIL if it is needed.
2018-09-21 18:43:52 +01:00
Nick Clifton
97b046a1ec
Make the --skip-* options skip all messages about the specified test.
2018-09-19 15:43:54 +01:00
Nick Clifton
98aa3b8d59
Improve error message when an ET_EXEC binary is detected.
2018-09-18 11:41:21 +01:00
Nick Clifton
00645328fd
Skip failures for PIC vs PIE. ( #1629698 )
2018-09-17 14:47:45 +01:00
Nick Clifton
62a035e246
Ensure 4 byte alignment of note sub-sections.
...
Resolves : #1629671
2018-09-17 11:40:50 +01:00
Nick Clifton
38c6f9ee42
Add timing tool to report on speed of the checks.
...
Add check for conflicting use of the -fshort-enum option.
Add check of the GNU Property notes.
Skip check for -O2 if compiled with -Og. (#1624162 )
2018-09-12 14:27:41 +01:00
Nick Clifton
3218a502f3
Add test for ET_EXEC binaries.
...
Document --report-unknown option.
2018-09-03 16:45:27 +01:00
Nick Clifton
a241ed8b29
- Fix bug in hardened tool which would skip gcc compiled files if the notes were too small.
...
- Fix bugs in section-size tool.
- Fix bug in buillt-by tool.
2018-08-30 11:59:48 +01:00
Nick Clifton
ccb481d55d
Generate notes for comdat sections.
2018-08-29 11:09:02 +01:00
Nick Clifton
59960d354a
Add more names to the gap skip list.
2018-08-23 14:07:31 +01:00
Nick Clifton
f8f44e9346
Skip gaps covered by _x86.get_pc_thunk and _savegpr symbols.
...
Merge ranges where one is wholly covered by another.
2018-08-23 11:33:37 +01:00
Nick Clifton
665e3d6465
Skip gaps at the end of functions. ( #1619267 )
2018-08-22 11:50:15 +01:00
Nick Clifton
1fa3a94195
Fix thinko in ppc64 gap detection code.
...
Resolves : #1619267
2018-08-21 08:58:31 +01:00
Nick Clifton
4482b57ec2
Skip gaps at the end of the .text section in ppc64 binaries.
2018-08-20 14:26:52 +01:00
Nick Clifton
c396cc5131
Skip checks in stack_chk_local_fail.c
...
Treat gaps as FAIL results rather than MAYBE.
2018-08-15 09:51:54 +01:00
Nick Clifton
34de7bcad3
Skip checks in __stack_chk_local_fail.
2018-08-08 13:43:37 +01:00
Nick Clifton
57a69d60c2
Reduce version check to gcc major version number only.
...
Skip compiler option checks if binary not built with gcc.
Relates: #1603089
2018-08-08 09:30:17 +01:00
Nick Clifton
a8c8418bed
Fix bug in annobin plugin. Add --section-size=NAME option to annocheck.
2018-08-07 15:21:37 +01:00
Peter Robinson
2f44ce6b02
rebuild for new gcc
2018-08-02 14:01:05 +01:00
Nick Clifton
504e1b0577
Correct name of man page for run-on-binaries-in script.
...
Resolves : #1611155
2018-08-02 09:51:33 +01:00
Nick Clifton
f7e6bb686b
Allow $ORIGN to be at the start of entries in DT_RPATH and DT_RUNPATH.
2018-07-25 11:25:11 +01:00
Nick Clifton
848d99efa7
Add support for big endian targets.
2018-07-23 17:40:07 +01:00
Nick Clifton
38eb35a4e9
Count passes and failures on a per-component basis and report gaps.
2018-07-23 16:23:55 +01:00
Nick Clifton
9dbf46e911
Use our own copy of the targetm.asm_out.function_section() function. ( #159861 comment#17)
2018-07-20 12:57:43 +01:00
Nick Clifton
baf40aa7ca
Generate grouped note section name all the time. ( #159861 comment#16)
2018-07-20 10:50:18 +01:00
Nick Clifton
d3e4501372
Fix section conflict problem.
...
Resolves : #1603071
2018-07-19 12:25:41 +01:00
Nick Clifton
c4f43f0cbb
Fix for building with gcc version 4.
...
Fix symbol placement in functions with local assembler.
2018-07-18 15:24:48 +01:00
Nick Clifton
cc6b631f3a
Fix assertions in rnage checking code. Add detection of -U options.
2018-07-17 18:06:21 +01:00
Nick Clifton
c760726387
Handle function sections properly. Handle .text.startup and .text.unlikely sections. Improve gap detection and reporting.
...
Resolves : #1601055
2018-07-17 16:04:01 +01:00
Fedora Release Engineering
accc579ff3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
...
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-07-12 20:14:26 +00:00
Nick Clifton
5a7b2e9a48
Fix construction of absolute versions of --dwarf-dir and --debug-rpm options.
2018-07-12 10:08:04 +01:00
Nick Clifton
7b83124311
Unknown reasons
2018-07-11 09:28:28 +01:00
Nick Clifton
4efcfc999f
Fix buffer overrun when very long symbol names are encountered.
2018-07-11 09:27:49 +01:00
Igor Gnatenko
e8e22cc052
remove unneeded BuildRequires
...
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2018-07-10 15:58:48 +02:00
Igor Gnatenko
7aff41d33b
remove unneeded install-info scriptlets
...
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2018-07-10 15:55:33 +02:00
Nick Clifton
cb01155831
Add missing build dependency upon gcc-c++.
2018-07-10 14:24:32 +01:00
Nick Clifton
be50c56ece
Do not force the generation of function notes when -ffunction-sections is active.
...
Relates: #1598961
2018-07-10 10:12:15 +01:00
Nick Clifton
a231425bc2
Skip the .annobin_ prfix when reporting symbols.
...
Resolves : #1599315
2018-07-09 17:23:41 +01:00
Nick Clifton
0342042e79
Use the assembler (c++ mangled) version of function names when switching sections.
...
Resolves : #1598579
2018-07-09 12:42:06 +01:00
Nick Clifton
efaf793911
Do not call function_section.
...
Resolves : #1598961
2018-07-09 12:22:24 +01:00
Nick Clifton
326c603396
Ignore cross-section gaps.
...
Resolves : #1598551
2018-07-06 12:23:12 +01:00
Nick Clifton
ce5f9d54ee
Do not skip empty range notes in object files.
2018-07-05 10:53:33 +01:00
Nick Clifton
a1b8a53f98
Create the start symbol at the start of the function and the end symbol at the end.
...
Resolves : #1596823
2018-07-02 14:20:53 +01:00
Nick Clifton
7fa87a24cf
Fix --debug-rpm when used inside a directory.
2018-07-02 11:58:23 +01:00
Nick Clifton
f4130c1b24
Use a prefix for all annobin generated symbols, and make them hidden.
...
Only generate weak symbol definitions for linkonce sections.
2018-06-28 13:20:24 +01:00
Nick Clifton
ae10117310
Skip some checks for relocatable object files, and dynamic objects.
...
Stop bogus complaints about stackrealignment not being enabled.
2018-06-27 14:55:35 +01:00
Nick Clifton
a55d84f6eb
Add -debug-rpm= option to annocheck.
...
Only use a 2 byte offset for the initial symbol on PowerPC.
2018-06-25 16:38:03 +01:00
Nick Clifton
ec37d82581
Use --dwarf-path when looking for build-id based debuginfo files.
2018-06-22 15:35:18 +01:00
Nick Clifton
4a3f774835
Fix premature closing of dwarf handle.
2018-06-22 11:15:40 +01:00
Nick Clifton
25bca4e64e
Fix scoping bug computing the name of a separate debug info file.
2018-06-22 10:46:17 +01:00
Nick Clifton
9a6d845b6e
Fix file descriptor leak.
2018-06-19 15:42:03 +01:00
Nick Clifton
b8b6c8608e
Add command line options to annocheck to disable individual tests.
2018-06-19 14:49:31 +01:00
Nick Clifton
9657bbe901
Remove C99-isms from annocheck sources.
2018-06-08 11:36:47 +01:00
Nick Clifton
4656334c92
Add the annocheck program as a sub-package.
2018-06-06 17:25:49 +01:00
Nick Clifton
a47a7d3349
Do not use the SHF_GNU_BUILD_NOTE section flag.
2018-06-01 15:08:25 +01:00
Nick Clifton
db2c4ce56d
Remove .sh extension from shell scripts.
2018-05-31 16:10:11 +01:00
Nick Clifton
78f88fba1a
Update to 5.9 annobin sources which includes code to record the -mstackrealign option for i686 binaries.
2018-05-30 12:08:39 +01:00
Nick Clifton
29f42b47f2
Hide the annobin start of file symbol.
2018-05-14 17:28:20 +01:00
Nick Clifton
7a683bbe67
Fix script bug in hardended.sh. (Thanks to: Stefan S?rensen <stefan.sorensen@spectralink.com>)
2018-05-08 13:29:58 +01:00
Nick Clifton
967f47d659
Version number bump so that the plugin can be rebuilt with the latest version of GCC.
2018-05-03 12:56:54 +01:00
Nick Clifton
f45ff6be28
Rebuild the plugin with the newly created plugin enabled.
...
Resolves : #1573082
2018-04-30 16:33:05 +01:00
Nick Clifton
9d8fe91a43
Skip the isa_flags check in the ABI test because the crt[in].o files are compiled with different flags from the test files.
2018-04-30 10:30:15 +01:00
Nick Clifton
4f0a7c212f
Add manual pages for the annobin and the scripts.
2018-04-20 16:52:49 +01:00
Nick Clifton
f2865c5c79
Do not record a stack protection setting of -1.
...
Resolves : #1563141
2018-04-03 16:16:48 +01:00
Nick Clifton
3323867c5b
Do not complain about a dwarf_version value of -1.
...
Relates: #1557511
2018-03-20 11:33:13 +00:00
Nick Clifton
0af9bb23ba
Bias file start symbols by 2 in order to avoid them confused with function symbols. ( #1554332 )
...
Version jump is to sync the version number with the annobin plugins internal version number.
2018-03-15 17:10:38 +00:00
Nick Clifton
c42ae85f5e
Add --ignore-gaps option to check-abi.sh script.
...
Use this option in the abi-test check.
Tweak hardening test to skip pic and stack protection checks.
2018-03-12 12:55:40 +00:00
Nick Clifton
a9bdd53186
Handle functions with specific assembler names.
...
Resolves : #1552018
2018-03-06 11:22:26 +00:00
Nick Clifton
38bf73b048
Move gcc_vr logic closer to use location.
2018-02-23 10:56:10 +00:00
Nick Clifton
fb74d1ed1c
Add an early require of gcc.
2018-02-23 10:40:42 +00:00
Nick Clifton
0078c77a9c
Add an explicit requirement on the version of gcc used to built the plugin.
...
Resolves : #1547260
2018-02-23 10:34:14 +00:00
Nick Clifton
8a3889e374
Change type and size of symbols to STT_NOTYPE/0 so that they do not confuse GDB. ( #1539664 )
...
Add run-on-binaries-in.sh script to allow the other scripts to be run over a repository.
2018-02-09 09:00:08 +00:00
Fedora Release Engineering
b42c748fba
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
...
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-02-07 02:18:06 +00:00
Nick Clifton
cfbd038110
Rebase on 3.3 release, which adds support for recording -mcet and -fcf-protection.
2018-01-30 16:33:00 +00:00
Florian Weimer
ccd5e04a5a
Rebuild for GCC 8
2018-01-29 14:03:52 +01:00
Nick Clifton
d1be1bdb14
Fix the installation of the annobin.info file.
2018-01-26 16:17:03 +00:00
Nick Clifton
4eecdf82ad
Resolved merge
2018-01-26 12:36:02 +00:00
Nick Clifton
6b89f3290c
Rebase on 3.2 release, which now contains documentation!
2018-01-26 12:33:58 +00:00
Richard W.M. Jones
267ee07ec4
Added %undefine _annotated_build
...
Suggested by yaneti on IRC and tested locally.
2018-01-26 11:36:09 +00:00
Richard W.M. Jones
3f1d08fe80
Rebuild against GCC 7.3.1.
2018-01-26 09:45:52 +00:00
Nick Clifton
ceb5d855f6
Add --with-gcc-plugin-dir option to the configure command line.
2018-01-16 17:48:21 +00:00
Nick Clifton
26ba227b0b
Rebase on 3.1 annobin sources:
...
v3 annobin notes - include ranges so that gaps can be detected.
Add recoding of -fstack-clash-protection and -D_GLIBCXX_ASSERTIONS.
2018-01-04 10:05:29 +00:00
Nick Clifton
ecf7069f1b
Do not generate notes when there is no output file.
...
Resolves : #1523875
2017-12-11 10:36:08 +00:00
Nick Clifton
3dfaaa0ec2
Invent an input filename when reading from a pipe.
...
Resolves : #1523401
2017-12-08 11:11:14 +00:00
Florian Weimer
a11e44bf67
Use DECL_ASSEMBLER_NAME for symbol references ( #1519165 )
2017-11-30 18:53:24 +01:00
Igor Gnatenko
611217200d
bump release
...
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2017-10-03 15:50:54 +02:00
Igor Gnatenko
ccfd4bf9f3
fix versions in changelog
...
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2017-10-03 15:50:36 +02:00
Igor Gnatenko
2fe93a3ffc
remove Group tag
...
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2017-10-03 15:48:18 +02:00
Igor Gnatenko
757c3b03f5
cleanup spec
...
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2017-10-03 15:48:09 +02:00
Igor Gnatenko
d6f88f636c
fix license tag
...
* No need to define licenses of install-sh and so, moreover format is wrong
* The license is actually GPLv3+
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2017-10-03 15:46:25 +02:00
Nick Clifton
c393d68a90
Touch the auto-generated files in order to stop them from being regenerated.
2017-09-26 13:59:20 +01:00
Nick Clifton
31b6780b2a
Stop the plugin complaining about compiler datestamp mismatches.
2017-09-26 12:33:04 +01:00
Nick Clifton
4b489fec02
Tweak tests so that they will run on older machines.
2017-09-21 14:31:48 +01:00
Nick Clifton
32a0f859f3
SWitch back to xz compression for the source tarball.
2017-09-21 14:02:09 +01:00
Nick Clifton
3b7589fe2b
Update changelog file after merging.
2017-09-21 13:40:57 +01:00
Nick Clifton
e7ed17846e
Rebased to annobin-2.3 sources.
...
Add annobin-tests subpackage containing some preliminary tests.
Remove link-time test for unsuported targets.
2017-09-21 13:39:01 +01:00
Fedora Release Engineering
3b2676bbd9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
2017-08-02 17:35:45 +00:00
Florian Weimer
f53ae1fc82
Rebuild with binutils fix for ppc64le ( #1475636 )
2017-07-31 08:34:29 +02:00
Nick Clifton
35fd563cf4
Initial Commit ( #1451407 )
2017-07-27 14:58:31 +01:00