Return-Path: Delivered-To: apmail-xml-axis-dev-archive@xml.apache.org Received: (qmail 47859 invoked by uid 500); 22 May 2002 12:37:55 -0000 Mailing-List: contact axis-dev-help@xml.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-dev@xml.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list axis-dev@xml.apache.org Received: (qmail 47842 invoked by uid 500); 22 May 2002 12:37:54 -0000 Delivered-To: apmail-xml-axis-cvs@apache.org Date: 22 May 2002 12:37:53 -0000 Message-ID: <20020522123753.29467.qmail@icarus.apache.org> From: dug@apache.org To: xml-axis-cvs@apache.org Subject: cvs commit: xml-axis/java/src/org/apache/axis/utils tcpmon.java X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N dug 02/05/22 05:37:53 Modified: java/src/org/apache/axis/utils tcpmon.java Log: Put back in Tom's change (plus some fixes) to change the Host: header to have the correct hostname. Revision Changes Path 1.34 +57 -0 xml-axis/java/src/org/apache/axis/utils/tcpmon.java Index: tcpmon.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/utils/tcpmon.java,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- tcpmon.java 20 May 2002 17:36:00 -0000 1.33 +++ tcpmon.java 22 May 2002 12:37:53 -0000 1.34 @@ -449,6 +449,13 @@ if ( inSocket != null ) inSocket.setSoTimeout( 10 ); if ( outSocket != null ) outSocket.setSoTimeout( 10 ); + + if ( tmodel != null ) { + String tmpStr = (String) tmodel.getValueAt(tableIndex, + REQ_COLUMN); + if ( !"".equals(tmpStr) ) + reqSaved = tmpStr.length(); + } for ( ;; ) { if( done ) break; @@ -739,6 +746,56 @@ targetPort = HTTPProxyPort ; } + } + } else { + // + // Change Host: header to point to correct host + // + byte[] b1 = new byte[1]; + buf = new StringBuffer(); + String s1; + String lastLine = null ; + + for ( ;; ) { + int len ; + len = tmpIn1.read(b1, 0, 1); + if ( len == -1 ) + break ; + s1 = new String( b1 ); + buf.append( s1 ); + if ( b1[0] != '\n' ) + continue ; + // we have a complete line + String line = buf.toString(); + buf.setLength(0); + // check to see if we have found Host: header + if (line.startsWith("Host: ")) { + // we need to update the hostname to target host + String newHost = "Host: " + targetHost + "\r\n"; + bufferedData = bufferedData.concat(newHost); + break ; + } + // add it to our headers so far + if (bufferedData == null) + bufferedData = line; + else + bufferedData = bufferedData.concat(line); + + // failsafe + if (line.equals("\r\n")) break; + if ("\n".equals(lastLine) && line.equals("\n")) break ; + lastLine = line ; + } + if ( bufferedData != null ) { + inputText.append( bufferedData ); + s1 = bufferedData.substring( 0, 50 ); + int i = s1.indexOf('\n'); + if ( i > 0 ) s1 = s1.substring(0,i-1); + s1 = s1 + " " + + " "; + s1 = s1.substring(0,51); + listener.tableModel.setValueAt( s1, index+1, + REQ_COLUMN ); } }