User: olegnitz Date: 02/04/02 14:38:55 Modified: jetty/src/main/org/mortbay/http/handler ContentEncodingHandler.java DumpHandler.java NotFoundHandler.java NullHandler.java ProxyHandler.java ResourceHandler.java SecurityHandler.java Added: jetty/src/main/org/mortbay/http/handler IPAccessHandler.java Log: Jetty 4.0.0 Revision Changes Path 1.2 +0 -0 contrib/jetty/src/main/org/mortbay/http/handler/ContentEncodingHandler.java Index: ContentEncodingHandler.java =================================================================== RCS file: /cvsroot/jboss/contrib/jetty/src/main/org/mortbay/http/handler/ContentEncodingHandler.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- ContentEncodingHandler.java 11 Mar 2002 12:17:44 -0000 1.1 +++ ContentEncodingHandler.java 2 Apr 2002 22:38:54 -0000 1.2 @@ -1,6 +1,6 @@ // ======================================================================== // Copyright (c) 1999 Mort Bay Consulting (Australia) Pty. Ltd. -// $Id: ContentEncodingHandler.java,v 1.1 2002/03/11 12:17:44 janb Exp $ +// $Id: ContentEncodingHandler.java,v 1.2 2002/04/02 22:38:54 olegnitz Exp $ // ======================================================================== package org.mortbay.http.handler; @@ -50,7 +50,7 @@ * It is far more efficient to use this handler than compression * filters within webapplications. * - * @version $Id: ContentEncodingHandler.java,v 1.1 2002/03/11 12:17:44 janb Exp $ + * @version $Id: ContentEncodingHandler.java,v 1.2 2002/04/02 22:38:54 olegnitz Exp $ * @author Greg Wilkins (gregw) */ public class ContentEncodingHandler 1.7 +0 -0 contrib/jetty/src/main/org/mortbay/http/handler/DumpHandler.java Index: DumpHandler.java =================================================================== RCS file: /cvsroot/jboss/contrib/jetty/src/main/org/mortbay/http/handler/DumpHandler.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- DumpHandler.java 11 Mar 2002 05:28:59 -0000 1.6 +++ DumpHandler.java 2 Apr 2002 22:38:54 -0000 1.7 @@ -1,6 +1,6 @@ // ======================================================================== // Copyright (c) 1999 Mort Bay Consulting (Australia) Pty. Ltd. -// $Id: DumpHandler.java,v 1.6 2002/03/11 05:28:59 janb Exp $ +// $Id: DumpHandler.java,v 1.7 2002/04/02 22:38:54 olegnitz Exp $ // ======================================================================== package org.mortbay.http.handler; @@ -32,7 +32,7 @@ * Dumps GET and POST requests. * Useful for testing and debugging. * - * @version $Id: DumpHandler.java,v 1.6 2002/03/11 05:28:59 janb Exp $ + * @version $Id: DumpHandler.java,v 1.7 2002/04/02 22:38:54 olegnitz Exp $ * @author Greg Wilkins (gregw) */ public class DumpHandler extends NullHandler 1.7 +0 -0 contrib/jetty/src/main/org/mortbay/http/handler/NotFoundHandler.java Index: NotFoundHandler.java =================================================================== RCS file: /cvsroot/jboss/contrib/jetty/src/main/org/mortbay/http/handler/NotFoundHandler.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- NotFoundHandler.java 11 Mar 2002 05:28:59 -0000 1.6 +++ NotFoundHandler.java 2 Apr 2002 22:38:54 -0000 1.7 @@ -1,6 +1,6 @@ // ======================================================================== // Copyright (c) 1999 Mort Bay Consulting (Australia) Pty. Ltd. -// $Id: NotFoundHandler.java,v 1.6 2002/03/11 05:28:59 janb Exp $ +// $Id: NotFoundHandler.java,v 1.7 2002/04/02 22:38:54 olegnitz Exp $ // ======================================================================== package org.mortbay.http.handler; @@ -22,7 +22,7 @@ /** Handler for resources that were not found. * Implements OPTIONS and TRACE methods for the server. * - * @version $Id: NotFoundHandler.java,v 1.6 2002/03/11 05:28:59 janb Exp $ + * @version $Id: NotFoundHandler.java,v 1.7 2002/04/02 22:38:54 olegnitz Exp $ * @author Greg Wilkins (gregw) */ public class NotFoundHandler extends NullHandler 1.7 +0 -0 contrib/jetty/src/main/org/mortbay/http/handler/NullHandler.java Index: NullHandler.java =================================================================== RCS file: /cvsroot/jboss/contrib/jetty/src/main/org/mortbay/http/handler/NullHandler.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- NullHandler.java 11 Mar 2002 05:28:59 -0000 1.6 +++ NullHandler.java 2 Apr 2002 22:38:54 -0000 1.7 @@ -1,6 +1,6 @@ // ======================================================================== // Copyright (c) 1999 Mort Bay Consulting (Australia) Pty. Ltd. -// $Id: NullHandler.java,v 1.6 2002/03/11 05:28:59 janb Exp $ +// $Id: NullHandler.java,v 1.7 2002/04/02 22:38:54 olegnitz Exp $ // ======================================================================== package org.mortbay.http.handler; @@ -25,7 +25,7 @@ /** Base HTTP Handler. * This No-op handler is a good base for other handlers * - * @version $Id: NullHandler.java,v 1.6 2002/03/11 05:28:59 janb Exp $ + * @version $Id: NullHandler.java,v 1.7 2002/04/02 22:38:54 olegnitz Exp $ * @author Greg Wilkins (gregw) */ abstract public class NullHandler implements HttpHandler 1.7 +0 -0 contrib/jetty/src/main/org/mortbay/http/handler/ProxyHandler.java Index: ProxyHandler.java =================================================================== RCS file: /cvsroot/jboss/contrib/jetty/src/main/org/mortbay/http/handler/ProxyHandler.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- ProxyHandler.java 11 Mar 2002 05:28:59 -0000 1.6 +++ ProxyHandler.java 2 Apr 2002 22:38:54 -0000 1.7 @@ -1,6 +1,6 @@ // ======================================================================== // Copyright (c) 1999 Mort Bay Consulting (Australia) Pty. Ltd. -// $Id: ProxyHandler.java,v 1.6 2002/03/11 05:28:59 janb Exp $ +// $Id: ProxyHandler.java,v 1.7 2002/04/02 22:38:54 olegnitz Exp $ // ======================================================================== package org.mortbay.http.handler; @@ -29,7 +29,7 @@ * Dumps GET and POST requests. * Useful for testing and debugging. * - * @version $Id: ProxyHandler.java,v 1.6 2002/03/11 05:28:59 janb Exp $ + * @version $Id: ProxyHandler.java,v 1.7 2002/04/02 22:38:54 olegnitz Exp $ * @author Greg Wilkins (gregw) */ public class ProxyHandler extends NullHandler 1.7 +0 -0 contrib/jetty/src/main/org/mortbay/http/handler/ResourceHandler.java Index: ResourceHandler.java =================================================================== RCS file: /cvsroot/jboss/contrib/jetty/src/main/org/mortbay/http/handler/ResourceHandler.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- ResourceHandler.java 11 Mar 2002 05:28:59 -0000 1.6 +++ ResourceHandler.java 2 Apr 2002 22:38:54 -0000 1.7 @@ -1,6 +1,6 @@ // =========================================================================== // Copyright (c) 1996 Mort Bay Consulting Pty. Ltd. All rights reserved. -// $Id: ResourceHandler.java,v 1.6 2002/03/11 05:28:59 janb Exp $ +// $Id: ResourceHandler.java,v 1.7 2002/04/02 22:38:54 olegnitz Exp $ // --------------------------------------------------------------------------- package org.mortbay.http.handler; @@ -43,7 +43,7 @@ * A simple memory cache is also provided to reduce file I/O. * HTTP/1.1 ranges are supported. * - * @version $Id: ResourceHandler.java,v 1.6 2002/03/11 05:28:59 janb Exp $ + * @version $Id: ResourceHandler.java,v 1.7 2002/04/02 22:38:54 olegnitz Exp $ * @author Nuno Preguiça * @author Greg Wilkins */ 1.7 +4 -3 contrib/jetty/src/main/org/mortbay/http/handler/SecurityHandler.java Index: SecurityHandler.java =================================================================== RCS file: /cvsroot/jboss/contrib/jetty/src/main/org/mortbay/http/handler/SecurityHandler.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- SecurityHandler.java 11 Mar 2002 05:28:59 -0000 1.6 +++ SecurityHandler.java 2 Apr 2002 22:38:54 -0000 1.7 @@ -1,6 +1,6 @@ // ======================================================================== // Copyright (c) 1999 Mort Bay Consulting (Australia) Pty. Ltd. -// $Id: SecurityHandler.java,v 1.6 2002/03/11 05:28:59 janb Exp $ +// $Id: SecurityHandler.java,v 1.7 2002/04/02 22:38:54 olegnitz Exp $ // ======================================================================== package org.mortbay.http.handler; @@ -33,7 +33,7 @@ /* ------------------------------------------------------------ */ /** Handler to enforce SecurityConstraints. * - * @version $Id: SecurityHandler.java,v 1.6 2002/03/11 05:28:59 janb Exp $ + * @version $Id: SecurityHandler.java,v 1.7 2002/04/02 22:38:54 olegnitz Exp $ * @author Greg Wilkins (gregw) */ public class SecurityHandler extends NullHandler @@ -254,7 +254,8 @@ if (scss!=null) { Code.debug("Security Constraint on ",pathInContext," against ",scss); - + + // for each path match matches: for (int m=0;m<scss.size();m++) 1.1 contrib/jetty/src/main/org/mortbay/http/handler/IPAccessHandler.java Index: IPAccessHandler.java =================================================================== // ======================================================================== // Author : Gosta Jonasson // Copyright (c) 2002 Gösta Jonasson [EMAIL PROTECTED] All rights reserved. // Permission to use, copy, modify and distribute this software // for non-commercial or commercial purposes and without fee is // hereby granted provided that this copyright notice appears in // all copies. // ======================================================================== package org.mortbay.http.handler; import java.io.IOException; import java.util.Hashtable; import org.mortbay.http.HttpException; import org.mortbay.http.HttpMessage; import org.mortbay.http.HttpRequest; import org.mortbay.http.HttpResponse; /** * Handler to authenticate access from certain IP-addresses. <br> * <br> * A server configuration-XML-file can look something like this: <br> * <Configure class="org.mortbay.jetty.Server"> <br> * ... <br> * <Call name="addContext"> <br> * ... <br> * <Call name="addHandler"> <br> * <Arg> <br> * <New class="IPAccessHandler"> <br> * <Set name="Standard">deny</Set> <br> * <Set name="AllowIP">192.168.0.103</Set> <br> * <Set name="AllowIP">192.168.0.100</Set> <br> * </New> <br> * </Arg> <br> * </Call> <br> * ... <br> * <br> * This would deny access for everyone except the requests from the IPs * 192.168.0.100 and 192.168.0.103. * * @version v0.1 2002/03/20 * @author Gösta Jonasson <a href="mailto:[EMAIL PROTECTED]">[EMAIL PROTECTED]</a> */ public class IPAccessHandler extends NullHandler { /** The standard way to deal with not configured IPs (true=allowed) */ boolean standard = false; /** Hashtable where the configured IPs are kept */ Hashtable ips; /** * Constructor for the class */ public IPAccessHandler() { super(); ips = new Hashtable(); } /** * Checks if the given ipstring (x.x.x.x) is authorized or not * * @param ipstring The ip-address as a String * @return True if the IP is allowed access, otherwise false. */ public boolean checkIP(String ipstring) { Boolean ipconstrain = (Boolean)ips.get(ipstring); if (ipconstrain != null) { return ipconstrain.booleanValue(); } else { return standard; } } /** * Handles the incoming request * * @param pathInContext * @param pathParams * @param request The incoming HTTP-request * @param response The outgoing HTTP-response */ public void handle(String pathInContext, String pathParams, HttpRequest request, HttpResponse response) throws HttpException, IOException { try { String ip = request.getRemoteAddr(); boolean authorized = checkIP(ip); if (!authorized) { // The IP is NOT allowed response.sendError(HttpResponse.__403_Forbidden); request.setHandled(true); return; } else { // The IP is allowed return; } } catch (Exception ex) { System.out.println(ex); response.sendError(HttpResponse.__500_Internal_Server_Error); request.setHandled(true); } } /** * Allow the given ip-address access * * @param ipstring The ip-address as a String on the format "x.x.x.x" */ public void setAllowIP(String ipstring) { ips.put(ipstring,new Boolean(true)); } /** * Deny the given ip-address access * * @param ipstring The ip-address as a String on the format "x.x.x.x" */ public void setDenyIP(String ipstring) { ips.put(ipstring,new Boolean(false)); } /** * Set the standard action beeing taken when not registred * IPs wants access * * @param s The standard-string (either 'allow' or 'deny') */ public void setStandard(String s) { s = s.toLowerCase(); if (s.indexOf("allow") > -1) { standard = true; } else { standard = false; } } /** * Main method for testing & debugging. * */ private static void main(String[] args) { IPAccessHandler ipah = new IPAccessHandler(); ipah.setStandard("deny"); ipah.setAllowIP("217.215.71.167"); ipah.setDenyIP("217.215.71.149"); System.out.println(ipah.checkIP("217.215.71.245")+" = false"); System.out.println(ipah.checkIP("217.215.71.167")+" = true"); System.out.println(ipah.checkIP("217.215.71.149")+" = false"); System.out.println(ipah.checkIP("0.0.0.0")+" = false"); IPAccessHandler ipah2 = new IPAccessHandler(); ipah2.setStandard("allow"); ipah2.setAllowIP("217.215.71.167"); ipah2.setDenyIP("217.215.71.149"); System.out.println(ipah2.checkIP("217.215.71.245")+" = true"); System.out.println(ipah2.checkIP("217.215.71.167")+" = true"); System.out.println(ipah2.checkIP("217.215.71.149")+" = false"); System.out.println(ipah2.checkIP("0.0.0.0")+" = true"); } }
_______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development