Skip to content

Commit

Permalink
v0.14.1 (#301)
Browse files Browse the repository at this point in the history
* Fix output-file

* Fix tunnel interface
  • Loading branch information
buger authored Jun 10, 2016
1 parent d193e24 commit f4e2b12
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 7 deletions.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ profile_test:

# Used mainly for debugging, because docker container do not have access to parent machine ports
run:
$(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"
$(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

run-2:
sudo -E go run $(SOURCE) --input-dummy="" --output-tcp localhost:27001 --verbose --debug
Expand Down
2 changes: 1 addition & 1 deletion plugins.go
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ func InitPlugins() {
}

for _, options := range Settings.outputFile {
registerPlugin(NewFileOutput, options, Settings.outputFileConfig)
registerPlugin(NewFileOutput, options, &Settings.outputFileConfig)
}

for _, options := range Settings.inputHTTP {
Expand Down
19 changes: 14 additions & 5 deletions raw_socket_listener/listener.go
Original file line number Diff line number Diff line change
Expand Up @@ -325,8 +325,16 @@ func (t *Listener) readPcap() {
}
t.mu.Unlock()

linkType := handle.LinkType()
source := gopacket.NewPacketSource(handle, linkType)
var decoder gopacket.Decoder

// Special case for tunnel interface https://github.com/google/gopacket/issues/99
if handle.LinkType() == 12 {
decoder = layers.LayerTypeIPv4
} else {
decoder = handle.LinkType()
}

source := gopacket.NewPacketSource(handle, decoder)
source.Lazy = true
source.NoCopy = true

Expand All @@ -343,13 +351,14 @@ func (t *Listener) readPcap() {
continue
}

if linkType == layers.LinkTypeEthernet {
if decoder == layers.LinkTypeEthernet {
// Skip ethernet layer, 14 bytes
data = packet.Data()[14:]
} else if linkType == layers.LinkTypeNull || linkType == layers.LinkTypeLoop {
} else if decoder == layers.LinkTypeNull || decoder == layers.LinkTypeLoop {
data = packet.Data()[4:]
} else {
log.Fatal("Unknown packet layer", packet)
log.Println("Unknown packet layer", packet)
break
}

version := uint8(data[0]) >> 4
Expand Down

0 comments on commit f4e2b12

Please sign in to comment.