90 Commits

Author SHA1 Message Date
Serge Lamikhov-Center
722077d4f7 Initialize local var 2022-02-02 23:31:49 +02:00
Serge Lamikhov-Center
0c841c7ed4 No need to disable warnings in a newer VS C++ compiler 2022-02-02 23:28:01 +02:00
Serge Lamikhov-Center
48e78fe1b9 No need to disable warnings in a newer VS C++ compiler 2022-02-02 23:19:15 +02:00
Serge Lamikhov-Center
7ba15e0549 Version Requirements accessor (reader) was added 2021-12-01 17:10:35 +02:00
Serge Lamikhov-Center
83d1f9b28a Don't clean() address_translation table 2021-09-20 23:45:50 +03:00
Serge Lamikhov-Center
53d3bb407c Rename 'end' field of address translation to 'size' 2021-09-20 20:44:19 +03:00
Serge Lamikhov-Center
dad4b434c8 Use a different notation for the address translation 2021-09-20 00:03:21 +03:00
Serge Lamikhov-Center
511086598a Implement address translation for segments 2021-09-19 23:26:58 +03:00
Serge Lamikhov-Center
b527ea992a An attempt to implement memory translation for sections 2021-09-19 11:28:35 +03:00
Serge Lamikhov-Center
0a15ec0aea Header dump shows correct values 2021-09-19 11:28:26 +03:00
Serge Lamikhov-Center
24d29a213a Move constructor and assignment has been implemented 2021-09-19 11:16:30 +03:00
Serge Lamikhov-Center
3a76e30a92 Rename a local variable 2021-09-18 01:16:25 +03:00
Serge Lamikhov-Center
33089a021a Make 'explicit' constructor 2021-09-14 18:35:54 +03:00
Serge Lamikhov-Center
162fd7a9a0 modernize-loop-convert 2021-08-26 13:11:46 +03:00
Serge Lamikhov-Center
4a84319bb8 modernize-use-nullptr 2021-08-26 12:52:23 +03:00
Serge Lamikhov-Center
1f79600cec Refactoring 2021-08-16 23:19:47 +03:00
Serge Lamikhov-Center
79fcd11595 Add check for data endianess flags 2021-06-05 16:46:24 +03:00
Serge Lamikhov-Center
f591a3b74e Add explicit declaration of move constructor and move assignment 2021-03-30 00:59:06 +03:00
Serge Lamikhov-Center
29114f6538 Explicetly delete the copy constructor and assignment operator 2021-03-29 21:17:57 +03:00
Serge Lamikhov-Center
57e614a486 Remove postfix underscore in parameter names 2021-02-05 10:40:18 +02:00
Serge Lamikhov-Center
762c59a2bb Change copyright period 2021-01-19 09:43:01 +02:00
Serge Lamikhov-Center
8037e5a42a Add 'validate' function to C language wrapper 2021-01-08 00:11:20 +02:00
Martin Bickel
3e55690e6d Added new check for section/progHeader consistency 2021-01-07 12:43:21 +02:00
Serge Lamikhov-Center
22ff134363 Address array section accessor added
The accessor is useful for manipulation of such sections as .ctors,
.dtors, .init_array and .fini_array
2020-12-22 14:10:16 +02:00
Serge Lamikhov-Center
e18e5bc261 Use a header for version information 2020-08-24 10:24:09 -07:00
Serge Lamikhov-Center
b4c245f5a8 Add .modinfo section accessor 2020-08-22 15:11:58 -07:00
Serge Lamikhov-Center
9c739b49a0 Reformat sources by using clang-format
It is not perfect (and, probably, it is worser than it was before), but, it is automatic
2020-08-21 07:56:08 -07:00
Serge Lamikhov-Center
c6e5eb0aad Update Copyright period 2020-08-19 13:47:20 -07:00
Serge Lamikhov-Center
d2c3fb6a14 Refactoring - remove unnecessary check 2020-08-15 18:56:13 +03:00
Serge Lamikhov-Center
a59cbf6674 Alighn code with whitespaces 2020-08-08 09:55:42 -07:00
Serge Lamikhov-Center
b1961db18b Fix compilation warnings in VS 2019 v16.7.0 2020-08-07 20:27:13 +03:00
Serge Lamikhov-Center
a735f412ec Remove unused header 2020-06-10 08:01:20 -07:00
Pierre Bélissent
6e237576f0 Issue serge1/ELFIO#19: Test case to reproduce, and correction 2020-06-06 22:26:12 +03:00
Serge Lamikhov-Center
3e4a2fabfd Add tests for the new flavor of get_symbol() 2020-02-22 11:31:27 +02:00
Alfred Bratterud
d8e8a4cbb4 Added get_symbol by value and generic linear search 2020-02-15 23:10:01 +02:00
Serge Lamikhov-Center
858b7a3b70 Names and tabs refactoring 2019-04-19 14:52:20 +03:00
Gleb Struchalin
a314b28193 Replaced tabs by spaces 2019-04-19 13:55:00 +03:00
Gleb Struchalin
925af0d3d5 Added overload to elfio::save which accepts std::ostream 2019-04-19 13:55:00 +03:00
Pavel I. Kryukov
6a2e8c78b0 Avoid hiding local variable by another local variable in elfio::load_sections 2018-08-25 22:40:00 +03:00
Jingxuan He
4b9ff89770 modify get_ordered_segments 2018-05-05 19:32:49 +03:00
alvaro
bc5f17b0fc Fix more NULL dereferences
Crash 7d695153fd8052529d480c2352d4ada33a44bada
2017-10-04 20:47:51 +03:00
alvaro
abab994411 Fix NULL deference for no ELF files
Fix crash 060833f08dc14d1712428742b3cad7af17b36bb7
2017-10-04 20:47:51 +03:00
alvaro
39f8614f17 Added stream_size into section
This will allow to perform some security checks when reading size values
from ELF file

Fix crash e1ce7cecf01cf800397a4302854d9d76fa19763c
2017-10-04 20:47:51 +03:00
Vašek Potoček
972f89e022 Better support for read-only ELF access 2017-10-04 20:33:10 +03:00
Martin Bickel
b4127676ba Fix calculation of section alignment 2017-03-06 22:28:46 +02:00
Martin Bickel
3385408d6b Rephrase condition of is_sect_in_seg() to make it more intuitive 2017-03-06 22:28:46 +02:00
Martin Bickel
fe78d06e81 Segment align updated when saving, not loading
After loading, the data model in memory should resemble the original ELF file as closely as possible,
so that ELF viewers based on elfio will print out the original values, not the calculated ones.
2017-02-18 19:25:21 +02:00
Martin Bickel
6c19078803 Fixed section to segment mapping for 0-length sections 2017-02-18 19:25:21 +02:00
Martin Bickel
d800c7b295 When saving a previously loaded ELF file, don't shrink segments' memory size 2017-01-16 20:38:37 +02:00
Martin Bickel
213dbedac2 Add sanity check when calculating alignment 2017-01-16 20:38:37 +02:00