test/jdk/java/net/httpclient/AsFileDownloadTest.policy
author chegar
Wed, 07 Mar 2018 14:11:00 +0000
branchhttp-client-branch
changeset 56259 cc67f25159cb
child 56265 ec34ae013fbe
permissions -rw-r--r--
http-client-branch: rework file permissions to use limited doPriv - forgotten test policy files (2)

//
// Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
// DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
//
// This code is free software; you can redistribute it and/or modify it
// under the terms of the GNU General Public License version 2 only, as
// published by the Free Software Foundation.
//
// This code 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
// version 2 for more details (a copy is included in the LICENSE file that
// accompanied this code).
//
// You should have received a copy of the GNU General Public License version
// 2 along with this work; if not, write to the Free Software Foundation,
// Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
//
// Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
// or visit www.oracle.com if you need additional information or have any
// questions.
//

// for JTwork/classes/0/lib/testlibrary/jdk/testlibrary/SimpleSSLContext.class
grant codeBase "file:${test.classes}/../../../../lib/testlibrary/-" {
    permission java.util.PropertyPermission "test.src.path", "read";
    permission java.io.FilePermission "${test.src}/../../../lib/testlibrary/jdk/testlibrary/testkeys", "read";
};

// for JTwork//classes/0/java/net/httpclient/http2/server/*
grant codeBase "file:${test.classes}/../../../../java/net/httpclient/http2/server/*" {
    permission java.lang.RuntimePermission "accessClassInPackage.jdk.internal.net.http.common";
    permission java.lang.RuntimePermission "accessClassInPackage.jdk.internal.net.http.frame";
    permission java.lang.RuntimePermission "accessClassInPackage.jdk.internal.net.http.hpack";
    permission java.lang.RuntimePermission "accessClassInPackage.sun.net.www.http";

    permission java.net.SocketPermission "127.0.0.1:*", "accept,resolve";
    permission java.lang.RuntimePermission "modifyThread";
};

grant codeBase "file:${test.classes}/*" {
    permission java.io.FilePermission "${user.dir}${/}asFileDownloadTest.tmp.dir", "read,write";
    permission java.io.FilePermission "${user.dir}${/}asFileDownloadTest.tmp.dir/-", "read,write";

    permission java.net.URLPermission "http://127.0.0.1:*/http1/afdt",   "POST";
    permission java.net.URLPermission "https://127.0.0.1:*/https1/afdt", "POST";
    permission java.net.URLPermission "http://127.0.0.1:*/http2/afdt",   "POST";
    permission java.net.URLPermission "https://127.0.0.1:*/https2/afdt", "POST";


    // needed to grant permission to the HTTP/2 server
    permission java.lang.RuntimePermission "accessClassInPackage.jdk.internal.net.http.common";
    permission java.lang.RuntimePermission "accessClassInPackage.jdk.internal.net.http.frame";
    permission java.lang.RuntimePermission "accessClassInPackage.jdk.internal.net.http.hpack";
    permission java.lang.RuntimePermission "accessClassInPackage.sun.net.www.http";

    // for HTTP/1.1 server logging
    permission java.util.logging.LoggingPermission "control";

    // needed to grant the HTTP servers
    permission java.net.SocketPermission "127.0.0.1:*", "accept,resolve";

    permission java.util.PropertyPermission "*", "read";
    permission java.lang.RuntimePermission "modifyThread";
};