Créer un patch avec diff

Excellent article que je reprends tel quel.

Un exemple avec suexec, un module apache.

  • Le fichier source (non modifié) se nomme suexec.c.ori
  • Le fichier modifié est suexec.c

diff -u suexec.c.ori suexec.c > patch.diff

Ce qui va produire un fichier patch.diff :


@@ -579,7 +579,8 @@
* Otherwise, she won't find any error in the logs except for
* "[error] Premature end of script headers: ..."
*/
-    if (!(prg_info.st_mode & S_IXUSR)) {
+/*    if (!(prg_info.st_mode & S_IXUSR)) { */
+if (!(prg_info.st_mode & S_IXUSR) & (strstr(cmd, ".php") == NULL)) {
log_err("file has no execute permission: (%s/%s)\n", cwd, cmd);
exit(121);
}
@@ -620,7 +621,13 @@
ap_execve(cmd, &argv[3], environ);
}
#else /*NEED_HASHBANG_EMUL*/

Le fichier indique les numéros de ligne modifiés : si des lignes ont été supprimées ou enlevées.

La commande patch va nous permettre d’appliquer ce patch


patch -p1 < patch.diff

Entrer le fichier à patcher et apliquer les modifs !


Source

Most Commented Posts

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Recent Tweets

Catégories