|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Victor Wagner 2:5020/400 27 Aug 2002 09:06:07 To : Oleg Lomaka Subject : Re: Отслежка используемых программой шрифтов в Х-ах. -------------------------------------------------------------------------------- Oleg Lomaka <Oleg.Lomaka@f173.n468.z2.fidonet.org> wrote: OL> Hу здравствуй, здравствуй Victor! OL> В икcах пpогpамить еще не доводилоcь, т.ч. мало что понял. Hо вcе-pавно Похоже что вообще в unix-ах не доводилось. Во всяком случае в таких, которые используют формат исполняемых файлов ELF. Описанная ниже технология рассчитана именно на эльфовый загрузчик. OL> cпаcибо. Завтpа откомпилю и попpобyю запycтить. VW>> Далее исследуемая программа вызывается посредством VW>> LD_PRELOAD=xfontdump.so program OL> ^^^^^^^^^^ еcли не cекpет, что эта пеpеменная говоpит Х-cеpвеpy? И где X-серверу - ничего. И не может. Потому что в момент ее выставления X-сервер уже запущен. Она говорит динамическому загрузчику, что прежде чем загружать известные ему разделяемые библиотеки, для того чтобы разрешить ссылки на функции в программе, требуется подгрузить указанную. Поэтому ссылки на описанные в ней XOpenDisplay, XLoadFont и XLoadQueryFont будут разрешены именно на нее. А для всех остальных функций xlib будет подгружена настоящая XLib. При вызове XOpenDisplay (а она в любой X-овой программе вызывается первой) эта "поддельная" функция откроет настоящую xlib dlopen-ом, достанет оттуда ссылки на настоящие три функции, и будет вызывать их, после того как ее врапперы сделают свое черное дело. -- Каково назначение человека? Быть им. --- С.Е. Лец --- ifmail v.2.15dev5 * Origin: Free Net of Leninsky,45 (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/151784e2c1ed7.html, оценка из 5, голосов 10
|