Skip to content

Commit e20c4f8

Browse files
sudarshan-reddynmldiegues
authored andcommitted
TUN-3838: ResponseWriter no longer reads and origin error tests
1 parent ab4dda5 commit e20c4f8

File tree

3 files changed

+298
-207
lines changed

3 files changed

+298
-207
lines changed

connection/connection.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,7 @@ type OriginProxy interface {
9393

9494
type ResponseWriter interface {
9595
WriteRespHeaders(status int, header http.Header) error
96-
WriteErrorResponse()
97-
io.ReadWriter
96+
io.Writer
9897
}
9998

10099
type ConnectedFuse interface {

origin/proxy.go

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,11 +177,28 @@ func (p *proxy) proxyStreamRequest(
177177
originConn.Close()
178178
}()
179179

180-
originConn.Stream(serveCtx, w, p.log)
180+
eyeballStream := &bidirectionalStream{
181+
writer: w,
182+
reader: req.Body,
183+
}
184+
originConn.Stream(serveCtx, eyeballStream, p.log)
181185
p.logOriginResponse(resp, fields)
182186
return nil
183187
}
184188

189+
type bidirectionalStream struct {
190+
reader io.Reader
191+
writer io.Writer
192+
}
193+
194+
func (wr *bidirectionalStream) Read(p []byte) (n int, err error) {
195+
return wr.reader.Read(p)
196+
}
197+
198+
func (wr *bidirectionalStream) Write(p []byte) (n int, err error) {
199+
return wr.writer.Write(p)
200+
}
201+
185202
func (p *proxy) writeEventStream(w connection.ResponseWriter, respBody io.ReadCloser) {
186203
reader := bufio.NewReader(respBody)
187204
for {

0 commit comments

Comments
 (0)