Для моего проекта класса я пытаюсь устранить фантомную уязвимость на Ubuntu 12.04 вручную. Я полностью понимаю ошибки в/nss/digits_dots.c, и я зафиксировал их. Моя проблема, я не знаю, как сделать патч и скомпилировать его. Как я могу сделать патч? Как я могу просто отредактировать один файл в библиотеке и восстановить его? Я смог загрузить исходную библиотеку, но затем я застрял! Вот то, что я сделал
apt-get source libc6
У меня были некоторые ошибки. Затем я должен был установить другие пакеты как
sudo apt-get install alien
sudo apt-get install gawk
Но после этого я запустил несколько вещей и начал входить в круги и циклы, но без успеха. Может кто-то говорить мне, как сделать простой патч для библиотеки C.
Спасибо,
Предполагая, что у вас уже есть исходный пакет исходного кода для ghost
, вы просто хотите проверить локально, и это всего лишь один измененный файл, тогда вот что вы можете сделать.
1. Создайте различия своих изменений:
diff -u /path/to/original_ghost_file.c ghost_file_changes.c > ghost.patch
2. Примените патч.
Перейдите в исходный каталог и запустите:
patch -p1 ghost.patch
Не видя ваш патч, я не могу посоветовать вам, какую опцию -p
использовать, но я предполагаю, что вы использовали абсолютные пути ,
3. Перестройте и установите
Все еще в исходном каталоге, запустите ./configure
, make
и make check
. Если вы хотите заменить исходную версию ghost
, запустите make install
в конце.