From jboss-remoting-commits at lists.jboss.org Wed May 28 22:00:54 2008 Content-Type: multipart/mixed; boundary="===============8387919614758527564==" MIME-Version: 1.0 From: jboss-remoting-commits at lists.jboss.org To: jboss-remoting-commits at lists.jboss.org Subject: [jboss-remoting-commits] JBoss Remoting SVN: r4260 - remoting2/branches/2.x/src/main/org/jboss/remoting/util. Date: Wed, 28 May 2008 22:00:54 -0400 Message-ID: --===============8387919614758527564== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Author: ron.sigal(a)jboss.com Date: 2008-05-28 22:00:54 -0400 (Wed, 28 May 2008) New Revision: 4260 Added: remoting2/branches/2.x/src/main/org/jboss/remoting/util/ServletSecurityU= tility.java Log: JBREM-989: Contains method from SecurityUtility used by ServerInvokerServle= t. Added: remoting2/branches/2.x/src/main/org/jboss/remoting/util/ServletSecur= ityUtility.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- remoting2/branches/2.x/src/main/org/jboss/remoting/util/ServletSecurity= Utility.java (rev 0) +++ remoting2/branches/2.x/src/main/org/jboss/remoting/util/ServletSecurity= Utility.java 2008-05-29 02:00:54 UTC (rev 4260) @@ -0,0 +1,75 @@ +/* + * JBoss, Home of Professional Open Source + * Copyright 2005, JBoss Inc., and individual contributors as indicated + * by the @authors tag. See the copyright.txt in the distribution for a + * full listing of individual contributors. + * + * This is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This software is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this software; if not, write to the Free + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. + */ +package org.jboss.remoting.util; + +import java.io.IOException; +import java.security.AccessController; +import java.security.PrivilegedActionException; +import java.security.PrivilegedExceptionAction; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.jboss.remoting.transport.servlet.ServletServerInvokerMBean; + + +/** + * @author Ron Sigal + * @version $Revision: 1.1 $ + *

+ * Copyright May 28, 2008 + *

+ */ +public class ServletSecurityUtility +{ + static public byte[] processRequest(final ServletServerInvokerMBean inv= oker, + final HttpServletRequest request, + final byte[] byteArray, + final HttpServletResponse response) + throws ServletException, IOException + { + if (SecurityUtility.skipAccessControl()) + { + return invoker.processRequest(request, byteArray, response); + } + + try + { + return (byte[]) AccessController.doPrivileged( new PrivilegedExce= ptionAction() + { + public Object run() throws ServletException, IOException + { + return invoker.processRequest(request, byteArray, response); + } + }); + } + catch (PrivilegedActionException e) + { + Throwable cause =3D e.getCause(); + if (cause instanceof ServletException) + throw (ServletException) cause; + else + throw (IOException) e.getCause(); + } = + } +} --===============8387919614758527564==--