From b6b269eb19c34f1d13b5a75e79f64797219ded0a Mon Sep 17 00:00:00 2001 From: "M. Mert Yildiran" Date: Wed, 1 Jun 2022 17:16:21 +0300 Subject: [PATCH] Have a single counter pair and request response matcher per Golang connection --- tap/tlstapper/golang_connection.go | 6 ++++-- tap/tlstapper/golang_reader.go | 6 +++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/tap/tlstapper/golang_connection.go b/tap/tlstapper/golang_connection.go index d53368d06..1dd4c9e37 100644 --- a/tap/tlstapper/golang_connection.go +++ b/tap/tlstapper/golang_connection.go @@ -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), } } diff --git a/tap/tlstapper/golang_reader.go b/tap/tlstapper/golang_reader.go index 026d9e050..4ac081045 100644 --- a/tap/tlstapper/golang_reader.go +++ b/tap/tlstapper/golang_reader.go @@ -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, } }