From d2dd60a2855ce8e51ec7326e404a50c72b99c3ae Mon Sep 17 00:00:00 2001 From: Steven Allen Date: Wed, 13 Sep 2017 15:51:05 -0700 Subject: [PATCH] reset on error in proxy example. --- examples/http-proxy/proxy.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/examples/http-proxy/proxy.go b/examples/http-proxy/proxy.go index 2358948..79999bb 100644 --- a/examples/http-proxy/proxy.go +++ b/examples/http-proxy/proxy.go @@ -109,6 +109,7 @@ func streamHandler(stream inet.Stream) { // Read the HTTP request from the buffer req, err := http.ReadRequest(buf) if err != nil { + stream.Reset() log.Println(err) return } @@ -132,6 +133,7 @@ func streamHandler(stream inet.Stream) { fmt.Printf("Making request to %s\n", req.URL) resp, err := http.DefaultTransport.RoundTrip(outreq) if err != nil { + stream.Reset() log.Println(err) return } @@ -176,6 +178,7 @@ func (p *ProxyService) ServeHTTP(w http.ResponseWriter, r *http.Request) { // r.Write() writes the HTTP request to the stream. err = r.Write(stream) if err != nil { + stream.Reset() log.Println(err) http.Error(w, err.Error(), http.StatusServiceUnavailable) return @@ -186,6 +189,7 @@ func (p *ProxyService) ServeHTTP(w http.ResponseWriter, r *http.Request) { buf := bufio.NewReader(stream) resp, err := http.ReadResponse(buf, r) if err != nil { + stream.Reset() log.Println(err) http.Error(w, err.Error(), http.StatusServiceUnavailable) return -- GitLab