This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
Alejandro Leal gerrit-no-reply at lists.osmocom.orgAlejandro Leal has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/24272 ) Change subject: util: adds the feature to force the rpath when patching files. ...................................................................... util: adds the feature to force the rpath when patching files. Adds a function that allows to patch the rpath of a binary with the option '--force-rpath'. Change-Id: I2d4a105d4843c0d31d6b5d8f8d4195247b290aec --- M src/osmo_gsm_tester/core/remote.py M src/osmo_gsm_tester/core/util.py 2 files changed, 24 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/72/24272/1 diff --git a/src/osmo_gsm_tester/core/remote.py b/src/osmo_gsm_tester/core/remote.py index fb446a6..95750f5 100644 --- a/src/osmo_gsm_tester/core/remote.py +++ b/src/osmo_gsm_tester/core/remote.py @@ -203,3 +203,17 @@ self.dbg('Using specific patchelf from %s', patchelf_bin) self.run_remote_sync('patchelf', (patchelf_bin, '--set-rpath', paths, binary_path)) + + def change_elf_force_rpath(self, binary_path, paths): + ''' + Change RPATH field in ELF executable binary forcing the rpath. + This feature can be used to tell the loader to load the trial libraries, as + LD_LIBRARY_PATH is disabled for paths with modified capabilities. + ''' + patchelf_bin = self.remote_env.get('PATCHELF_BIN', None) + if not patchelf_bin: + patchelf_bin = 'patchelf' + else: + self.dbg('Using specific patchelf from %s', patchelf_bin) + + self.run_remote_sync('patchelf', (patchelf_bin, '--force-rpath --set-rpath', paths, binary_path)) diff --git a/src/osmo_gsm_tester/core/util.py b/src/osmo_gsm_tester/core/util.py index 691b489..32baf33 100644 --- a/src/osmo_gsm_tester/core/util.py +++ b/src/osmo_gsm_tester/core/util.py @@ -56,6 +56,16 @@ proc = Process('patchelf', run_dir, ['patchelf', '--set-rpath', paths, binary]) proc.launch_sync() +def change_elf_force_rpath(binary, paths, run_dir): + ''' + Change RPATH field in ELF executable binary forcing the rpath. + This feature can be used to tell the loaded to load the trial libraries, as + LD_LIBRARY_PATH is disabled for paths with modified capabilities. + ''' + from .process import Process + proc = Process('patchelf', run_dir, ['patchelf', '--force-rpath --set-rpath', paths, binary]) + proc.launch_sync() + def ip_to_iface(ip): try: for iface in os.listdir('/sys/class/net'): -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/24272 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I2d4a105d4843c0d31d6b5d8f8d4195247b290aec Gerrit-Change-Number: 24272 Gerrit-PatchSet: 1 Gerrit-Owner: Alejandro Leal <alejandro.leal at srs.io> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20210519/9d578860/attachment.htm>