File tree Expand file tree Collapse file tree 3 files changed +16
-7
lines changed Expand file tree Collapse file tree 3 files changed +16
-7
lines changed Original file line number Diff line number Diff line change @@ -62,7 +62,7 @@ profile_test:
62
62
63
63
# Used mainly for debugging, because docker container do not have access to parent machine ports
64
64
run :
65
- $(RUN ) go run $(LDFLAGS ) $(SOURCE ) --input-dummy=0 --output-http=" http://localhost:9000" --input-raw-track-response --input-raw 127.0.0.1:9000 --input-http 127.0.0.1:9000 --verbose --debug --middleware " ./examples/middleware/echo.sh"
65
+ $(RUN ) go run $(LDFLAGS ) $(SOURCE ) --input-dummy=0 --output-http=" http://localhost:9000" --input-raw-track-response --input-raw 127.0.0.1:9000 --input-http 127.0.0.1:9000 --verbose --debug --middleware " ./examples/middleware/echo.sh" --output-file requests.gor
66
66
67
67
run-2 :
68
68
sudo -E go run $(SOURCE ) --input-dummy=" " --output-tcp localhost:27001 --verbose --debug
Original file line number Diff line number Diff line change @@ -117,7 +117,7 @@ func InitPlugins() {
117
117
}
118
118
119
119
for _ , options := range Settings .outputFile {
120
- registerPlugin (NewFileOutput , options , Settings .outputFileConfig )
120
+ registerPlugin (NewFileOutput , options , & Settings .outputFileConfig )
121
121
}
122
122
123
123
for _ , options := range Settings .inputHTTP {
Original file line number Diff line number Diff line change @@ -325,8 +325,16 @@ func (t *Listener) readPcap() {
325
325
}
326
326
t .mu .Unlock ()
327
327
328
- linkType := handle .LinkType ()
329
- source := gopacket .NewPacketSource (handle , linkType )
328
+ var decoder gopacket.Decoder
329
+
330
+ // Special case for tunnel interface https://github.com/google/gopacket/issues/99
331
+ if handle .LinkType () == 12 {
332
+ decoder = layers .LayerTypeIPv4
333
+ } else {
334
+ decoder = handle .LinkType ()
335
+ }
336
+
337
+ source := gopacket .NewPacketSource (handle , decoder )
330
338
source .Lazy = true
331
339
source .NoCopy = true
332
340
@@ -343,13 +351,14 @@ func (t *Listener) readPcap() {
343
351
continue
344
352
}
345
353
346
- if linkType == layers .LinkTypeEthernet {
354
+ if decoder == layers .LinkTypeEthernet {
347
355
// Skip ethernet layer, 14 bytes
348
356
data = packet .Data ()[14 :]
349
- } else if linkType == layers .LinkTypeNull || linkType == layers .LinkTypeLoop {
357
+ } else if decoder == layers .LinkTypeNull || decoder == layers .LinkTypeLoop {
350
358
data = packet .Data ()[4 :]
351
359
} else {
352
- log .Fatal ("Unknown packet layer" , packet )
360
+ log .Println ("Unknown packet layer" , packet )
361
+ break
353
362
}
354
363
355
364
version := uint8 (data [0 ]) >> 4
You can’t perform that action at this time.
0 commit comments