You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bi...@apache.org on 2005/04/30 05:32:43 UTC

cvs commit: jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/connector Connector.java CoyoteAdapter.java

billbarker    2005/04/29 20:32:43

  Modified:    catalina/src/share/org/apache/catalina/connector
                        Connector.java CoyoteAdapter.java
  Log:
  Add option to enable IP-based Virtual Hosting.
  
  Fix for bug #34648
  
  Revision  Changes    Path
  1.18      +22 -1     jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/connector/Connector.java
  
  Index: Connector.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/connector/Connector.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- Connector.java	28 Apr 2005 12:29:51 -0000	1.17
  +++ Connector.java	30 Apr 2005 03:32:43 -0000	1.18
  @@ -208,6 +208,10 @@
        */
       protected boolean stopped = false;
   
  +    /**
  +     * Flag to use IP-based virtual hosting.
  +     */
  +    protected boolean useIPVHosts = false;
   
       /**
        * The background thread.
  @@ -853,6 +857,23 @@
           setProperty("xpoweredBy", String.valueOf(xpoweredBy));
       }
   
  +    /**
  +     * Enable the use of IP-based virtual hosting.
  +     *
  +     * @param useIPVHosts <code>true</code> if Hosts are identified by IP,
  +     *                    <code>false/code> if Hosts are identified by name.
  +     */
  +    public void setUseIPVHosts(boolean useIPVHosts) {
  +        this.useIPVHosts = useIPVHosts;
  +        setProperty("useIPVHosts", String.valueOf(useIPVHosts));
  +    }
  +
  +    /**
  +     * Test if IP-based virtual hosting is enabled.
  +     */
  +    public boolean getUseIPVHosts() {
  +        return useIPVHosts;
  +    }
   
       // --------------------------------------------------------- Public Methods
   
  
  
  
  1.9       +12 -2     jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/connector/CoyoteAdapter.java
  
  Index: CoyoteAdapter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/connector/CoyoteAdapter.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- CoyoteAdapter.java	27 Oct 2004 22:58:17 -0000	1.8
  +++ CoyoteAdapter.java	30 Apr 2005 03:32:43 -0000	1.9
  @@ -259,7 +259,17 @@
           }
   
           // Request mapping.
  -        connector.getMapper().map(req.serverName(), decodedURI, 
  +        MessageBytes serverName;
  +        if(connector.getUseIPVHosts()) {
  +            serverName = req.localName();
  +            if(serverName.isNull()) {
  +                // well, they did ask for it
  +                res.action(ActionCode.ACTION_REQ_LOCAL_NAME_ATTRIBUTE, null);
  +            }
  +        } else {
  +            serverName = req.serverName();
  +        }
  +        connector.getMapper().map(serverName, decodedURI, 
                                     request.getMappingData());
           request.setContext((Context) request.getMappingData().context);
           request.setWrapper((Wrapper) request.getMappingData().wrapper);
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org