LINUX.ORG.RU

История изменений

Исправление snizovtsev, (текущая версия) :

Я не вникал в простыню, но мне кажется ты сильно переусложняешь. Пропатчи glibc как нужно, собери статическую либу родными для glibc автотулзами, прилинкуй статический пропатченный glibc к динамическому so wrapper-у, экспортируя через --export-symbols нужные функции. А там линкер уже сам разберётся – что нужно для работы xstat, а что можно выбросить.

Хотя в таких задачах обычно не нужно ничего патчить, достаточно обернуть вызов.

UPD: Ещё проще. В glibc точно есть свой version script, из которого можно просто выбросить патчем лишнее, и собрать родной системой сборки динамический glibc' с одной экспортируемой функцией – xstat. Результат сборки glibc' подсунуть в LD_PRELOAD.

Исправление snizovtsev, :

Я не вникал в простыню, но мне кажется ты сильно переусложняешь. Пропатчи glibc как нужно, собери статическую либу родными для glibc автотулзами, прилинкуй статический пропатченный glibc к динамическому so wrapper-у, экспортируя через --export-symbols нужные функции. А там линкер уже сам разберётся – что нужно для работы xstat, а что можно выбросить.

Хотя в таких задачах обычно не нужно ничего патчить, достаточно обернуть вызов.

UPD: Ещё проще. В glibc точно есть свой version script, из которого можно просто выбросить патчем лишнее, и собрать родной системой сборки динамический glibc’ с одной экспортируемой функцией – xstat. Результат сборки glibc подсунуть в LD_PRELOAD.

Исправление snizovtsev, :

Я не вникал в простыню, но мне кажется ты сильно переусложняешь. Пропатчи glibc как нужно, собери статическую либу родными для glibc автотулзами, прилинкуй статический пропатченный glibc к динамическому so wrapper-у, экспортируя через --export-symbols нужные функции. А там линкер уже сам разберётся – что нужно для работы xstat, а что можно выбросить.

Хотя в таких задачах обычно не нужно ничего патчить, достаточно обернуть вызов.

UPD: Ещё проще. В glibc точно есть свой version script, из которого можно просто выбросить патчем лишнее, и собрать родной системой сборки динамический glibc’ с одной экспортируемой функцией – xstat.

Исправление snizovtsev, :

Я не вникал в простыню, но мне кажется ты сильно переусложняешь. Пропатчи glibc как нужно, собери статическую либу родными для glibc автотулзами, прилинкуй статический пропатченный glibc к динамическому so wrapper-у, экспортируя через --export-symbols нужные функции. А там линкер уже сам разберётся – что нужно для работы xstat, а что можно выбросить.

Хотя в таких задачах обычно не нужно ничего патчить, достаточно обернуть вызов.

Исправление snizovtsev, :

Я не вникал в простыню, но мне кажется ты сильно переусложняешь. Пропатчи glibc как нужно, собери статическую либу родными для glibc автотулзами, прилинкуй статический пропатченный glibc к динамическому so wrapper-у, экспортируя через --export-symbols нужные функции.

Хотя в таких задачах обычно не нужно ничего патчить, достаточно обернуть вызов.

Исправление snizovtsev, :

Я не вникал в простыню, но мне кажется ты сильно переусложняешь. Пропатчи glibc как нужно, собери статическую либу родными автотулзами, прилинкуй статический пропатченный glibc к динамическому so wrapper-у, экспортируя через --export-symbols нужные функции.

Хотя в таких задачах обычно не нужно ничего патчить, достаточно обернуть вызов.

Исходная версия snizovtsev, :

Я не вникал в простыню, но мне кажется ты сильно переусложняешь. Пропатчи glibc как нужно, собери статическую либу, прилинкуй статический пропатченный glibc к динамическому so wrapper-у, экспортируя через --export-symbols нужные функции.

Хотя в таких задачах обычно не нужно ничего патчить, достаточно обернуть вызов.