Browse Source

don't process malformed request

v2ray 9 years ago
parent
commit
47e2d957d1
1 changed files with 2 additions and 0 deletions
  1. 2 0
      proxy/http/http.go

+ 2 - 0
proxy/http/http.go

@@ -106,6 +106,7 @@ func (this *HttpProxyServer) handleConnection(conn *net.TCPConn) {
 
 	request, err := http.ReadRequest(reader)
 	if err != nil {
+		log.Warning("Failed to read http request: %v", err)
 		return
 	}
 	log.Info("Request to Method [%s] Host [%s] with URL [%s]", request.Method, request.Host, request.URL.String())
@@ -120,6 +121,7 @@ func (this *HttpProxyServer) handleConnection(conn *net.TCPConn) {
 	dest, err := parseHost(host, defaultPort)
 	if err != nil {
 		log.Warning("Malformed proxy host (%s): %v", host, err)
+		return
 	}
 	if strings.ToUpper(request.Method) == "CONNECT" {
 		this.handleConnect(request, dest, reader, conn)