Hallo Liste! hat jemand von Euch nen Plan, wie man tcpshow unter SuSE (>8.2) zum Laufen bekommt? Hab die Datei tcpshow.c runtergeladen ein gcc tcpshow.c ausgeführt und das müsste es ja eigentlich gewesen sein. Nur meckert das gute Progrämmchen (bad file fomat), wenn ich "ihm" nen dump von tcpdump "zum Futtern" gebe. Hab´irgendwo im Netz einen Hinweis gefunden, daß es bei neueren tcpdums Probs gibt, da statt der "0800" nun ein "IP" übermittelt wird. Ein patchfile läßt sich aber nicht einpatchen :( Patchfile sieht so aus: ************* --- tcpshow.c Wed Jan 5 08:49:19 2000 +++ tcpshow_new.c Mon Mar 6 11:43:43 2000 @@ -1042,7 +1042,7 @@ (void)sscanf(pkt, "%s %s %s %s", time, efrom, eto, etype); - isip = (boolean)(strcmp(etype, "0800") == 0); + isip = (boolean)(!strcmp(etype, "ip") || !strcmp(etype, "0800")); (void)strcpy(efrom, etheraddr(efrom)); (void)strcpy(eto, etheraddr(eto)); *********** und gepatcht hab ich mit patch -p1 < patch.tcpshow beim Patchen gibt es nun folgende Meldung: *********** missing header for unified diff at line 3 of patch can't find file to patch at input line 3 Perhaps you used the wrong -p or --strip option? The text leading up to this was: -------------------------- |--- tcpshow.c Wed Jan 5 08:49:19 2000 |+++ tcpshow_new.c Mon Mar 6 11:43:43 2000 -------------------------- File to patch: ************ Wenn ich jetzt hier den namen per Hand eingebe, dann erhalte ich: ****** patching file patch.tcpshow Hunk #1 FAILED at 1042. 1 out of 1 hunk FAILED -- saving rejects to file patch.tcpshow.rej ******* Was mach ich falsch und wie kann ichs richtig machen??? Viele Grüße Tol
Hallo Anatol, hallo Leute, Am Dienstag, 14. September 2004 17:19 schrieb Anatol Schirmer:
[...] Ein patchfile läßt sich aber nicht einpatchen :(
Patchfile sieht so aus: ************* --- tcpshow.c Wed Jan 5 08:49:19 2000 +++ tcpshow_new.c Mon Mar 6 11:43:43 2000 @@ -1042,7 +1042,7 @@
(void)sscanf(pkt, "%s %s %s %s", time, efrom, eto, etype);
- isip = (boolean)(strcmp(etype, "0800") == 0); + isip = (boolean)(!strcmp(etype, "ip") || !strcmp(etype, "0800")); (void)strcpy(efrom, etheraddr(efrom)); (void)strcpy(eto, etheraddr(eto)); ***********
und gepatcht hab ich mit patch -p1 < patch.tcpshow
beim Patchen gibt es nun folgende Meldung:
*********** missing header for unified diff at line 3 of patch can't find file to patch at input line 3 Perhaps you used the wrong -p or --strip option?
Kann ich verstehen, es wird schließlich versucht, eine Datei tcpshow_new.c zu patchen... Probier mal patch tcpshow.c < patch.tcpshow - das dürfte zumindest dieses Problem lösen.
Wenn ich jetzt hier den namen per Hand eingebe, dann erhalte ich: ****** patching file patch.tcpshow Hunk #1 FAILED at 1042. 1 out of 1 hunk FAILED -- saving rejects to file patch.tcpshow.rej *******
Was mach ich falsch und wie kann ichs richtig machen???
Der Patch passt nicht zu der bei Dir vorhandenen Version der tcpshow.c. Wenn der Patch nicht länger ist als oben angegeben, kannst Du die Änderung vielleicht auch manuell einpflegen.
@@ -1042,7 +1042,7 @@
(void)sscanf(pkt, "%s %s %s %s", time, efrom, eto, etype);
- isip = (boolean)(strcmp(etype, "0800") == 0); + isip = (boolean)(!strcmp(etype, "ip") || !strcmp(etype, "0800"));
Im Klartext: In Zeile 1045 (der Patch beginnt bei 1042, dann weiterzählen) die mit - gekennzeichnete Zeile löschen und die mit + gekennzeichnete einfügen (jeweils ohne das + bzw. - davor, klar). Falls sich die Datei versionsmäßig wirklich unterscheidet, musst Du wohl etwas suchen, an welcher Stelle die zu ändernde Zeile bei Dir steht und/oder ob sich inzwischen in dieser Zeile etwas geändert hat. Gruß Christian Boltz --
Blödsinn. Firmen egal ob deutsch oder amerikanisch zahlen in Deutschland ohnehin keine Steuern! Ach Ja??? Und wie nennst Du denn die Kröten, die im Zuge der Quartalsmäßigen Krötenwanderung aus meinem Terrarium in Richtung Finazamt entfleuchen??? [> Harald Huthmann und Thorsten Körner in suse-linux]
participants (2)
-
Anatol Schirmer
-
Christian Boltz