Have a single counter pair and request response matcher per Golang connection

This commit is contained in:
M. Mert Yildiran 2022-06-01 17:16:21 +03:00
parent 52c4b18a9d
commit b6b269eb19
No known key found for this signature in database
GPG Key ID: D42ADB236521BF7A
2 changed files with 7 additions and 5 deletions

View File

@ -16,12 +16,14 @@ type golangConnection struct {
func NewGolangConnection(pid uint32, connAddr uint32, extension *api.Extension, emitter api.Emitter) *golangConnection {
stream := &tlsStream{}
counterPair := &api.CounterPair{}
reqResMatcher := extension.Dissector.NewResponseRequestMatcher()
return &golangConnection{
Pid: pid,
ConnAddr: connAddr,
Stream: stream,
ClientReader: NewGolangReader(extension, emitter, stream, true),
ServerReader: NewGolangReader(extension, emitter, stream, false),
ClientReader: NewGolangReader(extension, true, emitter, counterPair, stream, reqResMatcher),
ServerReader: NewGolangReader(extension, false, emitter, counterPair, stream, reqResMatcher),
}
}

View File

@ -22,7 +22,7 @@ type golangReader struct {
reqResMatcher api.RequestResponseMatcher
}
func NewGolangReader(extension *api.Extension, emitter api.Emitter, stream *tlsStream, isClient bool) *golangReader {
func NewGolangReader(extension *api.Extension, isClient bool, emitter api.Emitter, counterPair *api.CounterPair, stream *tlsStream, reqResMatcher api.RequestResponseMatcher) *golangReader {
return &golangReader{
msgQueue: make(chan []byte, 1),
progress: &api.ReadProgress{},
@ -31,9 +31,9 @@ func NewGolangReader(extension *api.Extension, emitter api.Emitter, stream *tlsS
captureTime: time.Now(),
extension: extension,
emitter: emitter,
counterPair: &api.CounterPair{},
counterPair: counterPair,
parent: stream,
reqResMatcher: extension.Dissector.NewResponseRequestMatcher(),
reqResMatcher: reqResMatcher,
}
}