From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7259 invoked by alias); 11 Oct 2006 13:49:12 -0000 Received: (qmail 7231 invoked by uid 22791); 11 Oct 2006 13:49:11 -0000 X-Spam-Check-By: sourceware.org Received: from gbenson.demon.co.uk (HELO gbenson.demon.co.uk) (80.177.220.214) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 11 Oct 2006 13:49:06 +0000 Received: from mambo.wire.rat ([192.168.1.6]) by gbenson.demon.co.uk with esmtp (Exim 3.36 #1) id 1GXeSG-0004TK-00; Wed, 11 Oct 2006 14:49:04 +0100 Received: from mambo.wire.rat (localhost.localdomain [127.0.0.1]) by mambo.wire.rat (8.13.7/8.13.6) with ESMTP id k9BDn3al027881; Wed, 11 Oct 2006 14:49:03 +0100 Received: (from gary@localhost) by mambo.wire.rat (8.13.7/8.13.7/Submit) id k9BDn3cF027880; Wed, 11 Oct 2006 14:49:03 +0100 Date: Wed, 11 Oct 2006 13:49:00 -0000 From: Gary Benson To: mauve-patches@sources.redhat.com Subject: FYI: Throwpoint checks for java.net.URL Message-ID: <20061011134859.GD24565@redhat.com> Mail-Followup-To: mauve-patches@sources.redhat.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="LpQ9ahxlCli8rRTG" Content-Disposition: inline X-IsSubscribed: yes Mailing-List: contact mauve-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: mauve-patches-owner@sourceware.org X-SW-Source: 2006/txt/msg00694.txt.bz2 --LpQ9ahxlCli8rRTG Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-length: 78 Hi again, This commit adds throwpoint checks for java.net.URL. Cheers, Gary --LpQ9ahxlCli8rRTG Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=patch Content-length: 3619 Index: ChangeLog =================================================================== RCS file: /cvs/mauve/mauve/ChangeLog,v retrieving revision 1.1950 diff -u -r1.1950 ChangeLog --- ChangeLog 11 Oct 2006 12:51:34 -0000 1.1950 +++ ChangeLog 11 Oct 2006 13:47:37 -0000 @@ -1,3 +1,7 @@ +2006-10-11 Gary Benson + + * gnu/testlet/java/net/URL/security.java: New test. + 2006-10-11 Gary Benson * gnu/testlet/java/net/URLClassLoader/security.java: New test. Index: gnu/testlet/java/net/URL/security.java =================================================================== RCS file: gnu/testlet/java/net/URL/security.java diff -N gnu/testlet/java/net/URL/security.java --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ gnu/testlet/java/net/URL/security.java 11 Oct 2006 13:47:37 -0000 @@ -0,0 +1,91 @@ +// Copyright (C) 2006 Red Hat, Inc. +// Written by Gary Benson + +// This file is part of Mauve. + +// Mauve is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; either version 2, or (at your option) +// any later version. + +// Mauve 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 General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Mauve; see the file COPYING. If not, write to +// the Free Software Foundation, 59 Temple Place - Suite 330, +// Boston, MA 02111-1307, USA. + +package gnu.testlet.java.net.URL; + +import java.io.IOException; +import java.net.NetPermission; +import java.net.URL; +import java.net.URLConnection; +import java.net.URLStreamHandler; +import java.security.Permission; + +import gnu.testlet.Testlet; +import gnu.testlet.TestHarness; +import gnu.testlet.TestSecurityManager; + +public class security implements Testlet +{ + public void test(TestHarness harness) + { + try { + URLStreamHandler handler = new TestURLStreamHandler(); + + URL context = new URL("http://www.redhat.com/"); + + Permission[] specifyStreamHandler = new Permission[] { + new NetPermission("specifyStreamHandler")}; + + TestSecurityManager sm = new TestSecurityManager(harness); + try { + sm.install(); + + // throwpoint: java.net.URL-URL(String, String, int, String, URLStreamHandler) + harness.checkPoint("URL(String, String, int, String, URLStreamHandler)"); + try { + sm.prepareChecks(specifyStreamHandler); + new URL("redhat", "redhat.com", 23, "/red/hat/", handler); + sm.checkAllChecked(); + } + catch (SecurityException ex) { + harness.debug(ex); + harness.check(false, "unexpected check"); + } + + // throwpoint: java.net.URL-URL(URL, String, URLStreamHandler) + harness.checkPoint("URL(String, String, int, String, URLStreamHandler)"); + try { + sm.prepareChecks(specifyStreamHandler); + new URL(context, "/red/hat/", handler); + sm.checkAllChecked(); + } + catch (SecurityException ex) { + harness.debug(ex); + harness.check(false, "unexpected check"); + } + } + finally { + sm.uninstall(); + } + } + catch (Exception ex) { + harness.debug(ex); + harness.check(false, "Unexpected exception"); + } + } + + private static class TestURLStreamHandler extends URLStreamHandler + { + public URLConnection openConnection(URL url) throws IOException + { + throw new RuntimeException("not implemented"); + } + } +} --LpQ9ahxlCli8rRTG--