Skip to content

Commit 6138c42

Browse files
authored
Merge pull request #266 from sipcapture/fixsipassembly
fix for sipassembly
2 parents 1034ef7 + 275f6a8 commit 6138c42

File tree

2 files changed

+10
-7
lines changed

2 files changed

+10
-7
lines changed

decoder/decoder.go

+9-6
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@ package decoder
33
import (
44
"bytes"
55
"container/list"
6-
"github.com/segmentio/encoding/json"
76
"net"
87
"strconv"
98
"strings"
109
"sync/atomic"
1110
"time"
1211

12+
"github.com/segmentio/encoding/json"
13+
1314
"github.com/google/gopacket"
1415
"github.com/google/gopacket/layers"
1516
"github.com/google/gopacket/tcpassembly"
@@ -932,7 +933,6 @@ func (d *Decoder) processTransport(foundLayerTypes *[]gopacket.LayerType, udp *l
932933
case layers.LayerTypeTCP:
933934
pkt.SrcPort = uint16(tcp.SrcPort)
934935
pkt.DstPort = uint16(tcp.DstPort)
935-
//pkt.Payload = tcp.Payload
936936
atomic.AddUint64(&d.tcpCount, 1)
937937
logp.Debug("payload", "TCP", pkt)
938938

@@ -947,12 +947,15 @@ func (d *Decoder) processTransport(foundLayerTypes *[]gopacket.LayerType, udp *l
947947
if !checkResult || payloadList.Len() <= 0 {
948948
return
949949
}
950-
} else {
950+
951951
payloadList.PushBack(pkt.Payload)
952-
}
953952

954-
for elem := payloadList.Front(); elem != nil; elem = elem.Next() {
955-
extractCID(pkt.SrcIP, pkt.SrcPort, pkt.DstIP, pkt.DstPort, elem.Value.([]byte))
953+
for elem := payloadList.Front(); elem != nil; elem = elem.Next() {
954+
extractCID(pkt.SrcIP, pkt.SrcPort, pkt.DstIP, pkt.DstPort, elem.Value.([]byte))
955+
}
956+
} else {
957+
pkt.Payload = tcp.Payload
958+
extractCID(pkt.SrcIP, pkt.SrcPort, pkt.DstIP, pkt.DstPort, pkt.Payload)
956959
}
957960
case layers.LayerTypeSCTP:
958961
pkt.SrcPort = uint16(sctp.SrcPort)

main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212
"github.com/sipcapture/heplify/sniffer"
1313
)
1414

15-
const version = "heplify 1.65.10"
15+
const version = "heplify 1.65.11"
1616

1717
func createFlags() {
1818

0 commit comments

Comments
 (0)