nacho 00/11/10 13:22:52
Modified: src/share/org/apache/tomcat/context ErrorHandler.java
src/share/org/apache/tomcat/core Request.java
src/share/org/apache/tomcat/modules/server
Http10Interceptor.java
Log:
Porting patches made to Tomcat 3.2 into the main branch
Revision Changes Path
1.5 +4 -3
jakarta-tomcat/src/share/org/apache/tomcat/context/ErrorHandler.java
Index: ErrorHandler.java
===================================================================
RCS file:
/home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/context/ErrorHandler.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- ErrorHandler.java 2000/11/06 15:25:00 1.4
+++ ErrorHandler.java 2000/11/10 21:22:51 1.5
@@ -68,6 +68,7 @@
import java.util.*;
import java.security.*;
+
import org.apache.tomcat.util.log.*;
// don't extend - replace !
@@ -575,14 +576,14 @@
String scheme = req.scheme().toString();
int port = req.getServerPort ();
String urlPath = req.requestURI().toString();
-
+
url.append (scheme); // http, https
url.append ("://");
- url.append (req.getServerName ());
+ url.append (req.getServerName());
if ((scheme.equals ("http") && port != 80)
|| (scheme.equals ("https") && port != 443)) {
url.append (':');
- url.append (req.getServerPort ());
+ url.append (port);
}
url.append(urlPath);
return url.toString();
1.72 +2 -24 jakarta-tomcat/src/share/org/apache/tomcat/core/Request.java
Index: Request.java
===================================================================
RCS file: /home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/core/Request.java,v
retrieving revision 1.71
retrieving revision 1.72
diff -u -r1.71 -r1.72
--- Request.java 2000/11/06 15:16:31 1.71
+++ Request.java 2000/11/10 21:22:51 1.72
@@ -299,9 +299,7 @@
*
*/
public String getServerName() {
- if(serverName==null)
- serverName=findServerName();
- return serverName;
+ return serverName;
}
/** Virtual host */
@@ -788,26 +786,6 @@
// -------------------- Computed fields --------------------
- protected String findServerName() {
- String hostHeader = this.getHeader("host");
- if (hostHeader != null) {
- int i = hostHeader.indexOf(':');
- if (i > -1) {
- hostHeader = hostHeader.substring(0,i);
- }
- serverName=hostHeader;
- return serverName;
- }
- if( localHost != null ) {
- serverName = localHost;
- return serverName;
- }
- // default to localhost - and warn
- // log("No server name, defaulting to localhost");
- localHost=getLocalHost();
- serverName=localHost;
- return serverName;
- }
// -------------------- For adapters --------------------
@@ -885,7 +863,7 @@
jvmRoute = null;
headers.clear(); // XXX use recycle pattern
serverName=null;
- serverPort=8080;
+ serverPort=-1;
sessionIdSource = null;
sessionId=null;
1.6 +39 -7
jakarta-tomcat/src/share/org/apache/tomcat/modules/server/Http10Interceptor.java
Index: Http10Interceptor.java
===================================================================
RCS file:
/home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/modules/server/Http10Interceptor.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- Http10Interceptor.java 2000/11/02 21:44:47 1.5
+++ Http10Interceptor.java 2000/11/10 21:22:52 1.6
@@ -230,27 +230,59 @@
// XXX detect for real whether or not we have more requests
// coming
- moreRequests = false;
+ moreRequests = false;
}
// -------------------- override special methods
-
- public int getServerPort() {
- return socket.getLocalPort();
- }
+
public String getRemoteAddr() {
return socket.getInetAddress().getHostAddress();
}
-
+
public String getRemoteHost() {
return socket.getInetAddress().getHostName();
- }
+ }
public String getLocalHost() {
InetAddress localAddress = socket.getLocalAddress();
localHost = localAddress.getHostName();
return localHost;
+ }
+
+ public String getServerName(){
+ if(serverName!=null) return serverName;
+ parseHostHeader();
+ return serverName;
+ }
+
+ public int getServerPort(){
+ if(serverPort!=-1) return serverPort;
+ parseHostHeader();
+ return serverPort;
+ }
+
+ protected void parseHostHeader() {
+ String hostHeader = this.getHeader("host");
+ serverPort = socket.getLocalPort();
+ if (hostHeader != null) {
+ int i = hostHeader.indexOf(':');
+ if (i > -1) {
+ serverName = hostHeader.substring(0,i);
+ hostHeader = hostHeader.substring(i+1);
+ try{
+ serverPort=Integer.parseInt(hostHeader);
+ }catch(NumberFormatException nfe){
+ }
+ }
+ return;
+ }
+ if( localHost != null ) {
+ serverName = localHost;
+ }
+ // default to localhost - and warn
+ // log("No server name, defaulting to localhost");
+ serverName=getLocalHost();
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]