mirror of
https://github.com/kubeshark/kubeshark.git
synced 2025-09-01 02:30:33 +00:00
Learn isClient
from the TCP stream
This commit is contained in:
@@ -91,7 +91,7 @@ func (h *tcpReader) Read(p []byte) (int, error) {
|
|||||||
return l, nil
|
return l, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (h *tcpReader) run(wg *sync.WaitGroup) {
|
func (h *tcpReader) run(wg *sync.WaitGroup, isClient bool) {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
|
|
||||||
data, err := io.ReadAll(h)
|
data, err := io.ReadAll(h)
|
||||||
@@ -102,9 +102,7 @@ func (h *tcpReader) run(wg *sync.WaitGroup) {
|
|||||||
r := bytes.NewReader(data)
|
r := bytes.NewReader(data)
|
||||||
|
|
||||||
for _, extension := range extensions {
|
for _, extension := range extensions {
|
||||||
for _, isClient := range []bool{true, false} {
|
r.Reset(data)
|
||||||
r.Reset(data)
|
extension.Dissector.Dissect(bufio.NewReader(r), isClient, h.tcpID, h.Emitter)
|
||||||
extension.Dissector.Dissect(bufio.NewReader(r), isClient, h.tcpID, h.Emitter)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -82,8 +82,8 @@ func (factory *tcpStreamFactory) New(net, transport gopacket.Flow, tcp *layers.T
|
|||||||
}
|
}
|
||||||
factory.wg.Add(2)
|
factory.wg.Add(2)
|
||||||
// Start reading from channel stream.reader.bytes
|
// Start reading from channel stream.reader.bytes
|
||||||
go stream.client.run(&factory.wg)
|
go stream.client.run(&factory.wg, true)
|
||||||
go stream.server.run(&factory.wg)
|
go stream.server.run(&factory.wg, false)
|
||||||
}
|
}
|
||||||
return stream
|
return stream
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user