I have a requirement where I want to associate an index with a file(in a certain format). I was wondering if I can do any ELF manipulation and still ensure that, consistency is maintained so, the file works fine on linux. The idea here is to create a file format which can be queried by a certain API[self-defined] to get me the index.
a)is it possible to modify the ELF header to store the index(mentioned above).
b)if yes, what is the process?
You can add a new ELF section with whatever data you want to an existing executable. e.g.
$ echo 42 > /tmp/index
$ objcopy --add-section .my_index=/tmp/index /bin/ls myls
$ objdump -s myls | tail
.
.
.
Contents of section .my_index:
0000 34320a 42.
You can then figure out where to read this data from using libelf
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With