LINUX.ORG.RU

ты часом не про /proc/?/environ говоришь?

greek_31 ★★
()
Ответ на: комментарий от Deleted

Ок , ну диззассмеблить это слишком сурово. А вот версии с gdb, где-то вычитал, что просто поставить break на функцию getenv, а потом вывести содержание eax, мол там храниться первый аргумент вызываемой функции. Только вот помнится в детском саду меня учили, что перед вызовом функции аргументы на стек помещаются, да и не влезет название переменной среды в 32 бита.

LIKAN ★★★
() автор топика
Ответ на: комментарий от LIKAN

перед вызовом функции аргументы на стек помещаются

Зависит от архитектуры CPU и соглашения о вызовах для конкретной функции. На i?86 для cdecl таки да, на стек.

да и не влезет название переменной среды в 32 бита

Там указатель на строку передается.

Deleted
()
Ответ на: комментарий от LIKAN

Кстати помимо функции getenv есть другие способы доступа к переменным окружения. Наример, чтение файла /proc/self/environ, или проход по массиву environ[].

Deleted
()
Ответ на: комментарий от Deleted

И как пройти по этому массиву для целевой программы, дизассемблером?

LIKAN ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.