| //#* © 2016 and later: Unicode, Inc. and others. |
| //#* License & terms of use: http://www.unicode.org/copyright.html |
| //# |
| //#******************************************************************************* |
| //#* Copyright (C) 1997-2015, International Business Machines Corporation and * |
| //#* others. All Rights Reserved. * |
| //#******************************************************************************* |
| //#* This is the ant build file for ICU4J. See readme.html for more information. |
| //#* |
| // policies needed to run tests |
| grant |
| { |
| // temporary for debugging |
| // permission java.lang.RuntimePermission "getProtectionDomain"; |
| |
| permission java.lang.RuntimePermission "accessDeclaredMembers"; |
| |
| // needed for Locale.setDefault, only used in tests and demos |
| permission java.util.PropertyPermission "user.language", "write"; |
| |
| // for charsets |
| permission java.lang.RuntimePermission "charsetProvider", "read"; |
| |
| // IBM 1.6 on Windows does not allow to use reflection to access |
| // getDSTSavings in TimeZone implementation class in sun.util.clanedar. |
| permission java.lang.RuntimePermission "accessClassInPackage.sun.util.calendar"; |
| |
| // for testing lenient decimal/group separator parsing |
| permission java.util.PropertyPermission "com.ibm.icu.text.DecimalFormat.SkipExtendedSeparatorParsing", "write"; |
| |
| // for setting the default time zone by the test framework |
| permission java.util.PropertyPermission "user.timezone", "write"; |
| |
| // for creating a fallback class loader |
| permission java.lang.RuntimePermission "createClassLoader"; |
| }; |
| |
| // there must be a way for code in one jar file to call code in another jar |
| // file and give the called code permission to read the calling code's |
| // jar. they're in different protection domains despite being on the |
| // same classpath and being loaded by the same class loader, so the class |
| // loader doesn't disambiguate which protection domain we're using. it's |
| // not easy to figure out the security docs, sigh. |
| // |
| // this is so ICUData (in icu4j.jar), called from test code (in core/charset tests jar) |
| // can read test resource files (in core/charset tests jar) |
| // |
| grant codebase "file:${user.dir}/icu4j.jar" |
| { |
| permission java.io.FilePermission "${/}${user.dir}${/}icu4jtests.jar", "read"; |
| permission java.io.FilePermission "${/}${user.dir}${/}icu4j-charset.jar", "read"; |
| |
| permission java.util.PropertyPermission "com.ibm.icu.util.TimeZone.DefaultTimeZoneType", "read"; |
| permission java.util.PropertyPermission "com.ibm.icu.text.DecimalFormat.SkipExtendedSeparatorParsing", "read"; |
| }; |
| |
| grant codebase "file:${user.dir}/icu4jtests.jar" |
| { |
| permission java.io.FilePermission "${/}${user.dir}${/}icu4j.jar", "read"; |
| }; |