Измените внутреннее имя библиотеки OpenSSL с помощью команды 'chatr' на HPIA - PullRequest
0 голосов
/ 11 ноября 2011

Мне нужно изменить внутреннее имя разделяемой библиотеки libcrypto.so.0.9.8 на libcrypto.so для определенной цели.Я не могу сделать это с помощью команды chatr, которая отображает только внутреннее имя.

Существует ограничение, из-за которого я не могу перекомпилировать совместно используемую библиотеку с опцией + h, задающей внутреннее имя, что и было моей первоначальной идеей.

Заранее спасибо.

1 Ответ

0 голосов
/ 11 ноября 2011

Используйте переменную среды LD_PRELOAD. Позволяет вставлять библиотеки.

По сути, вы устанавливаете символическую ссылку в каталоге, который вы контролируете, с именем libcrypto.so.0.9.8, который указывает на библиотеку, которую вы хотите использовать, (я думаю): /lib/libcrypto.so. Направьте LD_PRELOAD на символическую ссылку.

LD_PRELOAD НЕ будет работать с программами setuid в HPUX.

Вы тщательно проверили, что все точки входа, которые вы используете в своем коде, находятся в libcrypto.so?

.

Поскольку я понятия не имею, что происходит, это может быть не идеальным решением. Это лучшее предположение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...