diff --git a/0001-resolve-rsocket.patch b/0001-resolve-rsocket.patch deleted file mode 100644 index bcd97f935b106a5ea43c8407b3d2a275d8f6cecb..0000000000000000000000000000000000000000 --- a/0001-resolve-rsocket.patch +++ /dev/null @@ -1,94 +0,0 @@ -From 09a56b43a7db06914fe0da71a3191ca66e64daec Mon Sep 17 00:00:00 2001 -From: "joeylee.lz" -Date: Mon, 23 May 2022 16:47:06 +0800 -Subject: [PATCH] resolve rsocket - ---- - .../solaris/native/sun/nio/ch/rdma/Rsocket.c | 20 ++++++++++ - .../solaris/native/sun/nio/ch/rdma/Rsocket.h | 40 +++++++++---------- - 2 files changed, 40 insertions(+), 20 deletions(-) - -diff --git a/jdk/src/solaris/native/sun/nio/ch/rdma/Rsocket.c b/jdk/src/solaris/native/sun/nio/ch/rdma/Rsocket.c -index 7d25a697da..aedc509609 100644 ---- a/jdk/src/solaris/native/sun/nio/ch/rdma/Rsocket.c -+++ b/jdk/src/solaris/native/sun/nio/ch/rdma/Rsocket.c -@@ -30,6 +30,26 @@ - - static const char* nativeRdmaLib = "librdmacm.so.1"; - static jboolean funcs_loaded = JNI_FALSE; -+rs_rsocket_func* rs_socket; -+rs_rfcntl_func* rs_fcntl; -+rs_rlisten_func* rs_listen; -+rs_rbind_func* rs_bind; -+rs_rconnect_func* rs_connect; -+rs_rgetsockname_func* rs_getsockname; -+rs_rgetsockopt_func* rs_getsockopt; -+rs_rsetsockopt_func* rs_setsockopt; -+rs_rshutdown_func* rs_shutdown; -+rs_rpoll_func* rs_poll; -+rs_rsend_func* rs_send; -+rs_raccept_func* rs_accept; -+rs_rclose_func* rs_close; -+rs_rread_func* rs_read; -+rs_rreadv_func* rs_readv; -+rs_rwrite_func* rs_write; -+rs_rwritev_func* rs_writev; -+rs_rrecv_func* rs_recv; -+rs_rrecvfrom_func* rs_recvfrom; -+rs_rsendto_func* rs_sendto; - - jboolean loadRdmaFuncs(JNIEnv* env) { - if (funcs_loaded) -diff --git a/jdk/src/solaris/native/sun/nio/ch/rdma/Rsocket.h b/jdk/src/solaris/native/sun/nio/ch/rdma/Rsocket.h -index 04f6651528..aa230d3800 100644 ---- a/jdk/src/solaris/native/sun/nio/ch/rdma/Rsocket.h -+++ b/jdk/src/solaris/native/sun/nio/ch/rdma/Rsocket.h -@@ -62,26 +62,26 @@ typedef ssize_t rs_rrecvfrom_func(int sockfd, void *buf, size_t len, int flags, - typedef ssize_t rs_rsendto_func(int sockfd, const void *buf, size_t len, - int flags, const struct sockaddr *dest_addr, socklen_t addrlen); - --rs_rsocket_func* rs_socket; --rs_rfcntl_func* rs_fcntl; --rs_rlisten_func* rs_listen; --rs_rbind_func* rs_bind; --rs_rconnect_func* rs_connect; --rs_rgetsockname_func* rs_getsockname; --rs_rgetsockopt_func* rs_getsockopt; --rs_rsetsockopt_func* rs_setsockopt; --rs_rshutdown_func* rs_shutdown; --rs_rpoll_func* rs_poll; --rs_rsend_func* rs_send; --rs_raccept_func* rs_accept; --rs_rclose_func* rs_close; --rs_rread_func* rs_read; --rs_rreadv_func* rs_readv; --rs_rwrite_func* rs_write; --rs_rwritev_func* rs_writev; --rs_rrecv_func* rs_recv; --rs_rrecvfrom_func* rs_recvfrom; --rs_rsendto_func* rs_sendto; -+extern rs_rsocket_func* rs_socket; -+extern rs_rfcntl_func* rs_fcntl; -+extern rs_rlisten_func* rs_listen; -+extern rs_rbind_func* rs_bind; -+extern rs_rconnect_func* rs_connect; -+extern rs_rgetsockname_func* rs_getsockname; -+extern rs_rgetsockopt_func* rs_getsockopt; -+extern rs_rsetsockopt_func* rs_setsockopt; -+extern rs_rshutdown_func* rs_shutdown; -+extern rs_rpoll_func* rs_poll; -+extern rs_rsend_func* rs_send; -+extern rs_raccept_func* rs_accept; -+extern rs_rclose_func* rs_close; -+extern rs_rread_func* rs_read; -+extern rs_rreadv_func* rs_readv; -+extern rs_rwrite_func* rs_write; -+extern rs_rwritev_func* rs_writev; -+extern rs_rrecv_func* rs_recv; -+extern rs_rrecvfrom_func* rs_recvfrom; -+extern rs_rsendto_func* rs_sendto; - - jboolean loadRdmaFuncs(JNIEnv* env); - --- -2.19.1.3.ge56e4f7 \ No newline at end of file diff --git a/CheckVendor.java b/CheckVendor.java deleted file mode 100644 index e2101cf4bb70b607dbcb50ca2d984da2904cf4bf..0000000000000000000000000000000000000000 --- a/CheckVendor.java +++ /dev/null @@ -1,57 +0,0 @@ -/* CheckVendor -- Check the vendor properties match specified values. - Copyright (C) 2020 Red Hat, Inc. - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU Affero General Public License as -published by the Free Software Foundation, either version 3 of the -License, or (at your option) any later version. - -This program 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 Affero General Public License for more details. - -You should have received a copy of the GNU Affero General Public License -along with this program. If not, see . -*/ - -/** - * @test - */ -public class CheckVendor { - - public static void main(String[] args) { - if (args.length < 3) { - System.err.println("CheckVendor "); - System.exit(1); - } - - String vendor = System.getProperty("java.vendor"); - String expectedVendor = args[0]; - String vendorURL = System.getProperty("java.vendor.url"); - String expectedVendorURL = args[1]; - String vendorBugURL = System.getProperty("java.vendor.url.bug"); - String expectedVendorBugURL = args[2]; - - if (!expectedVendor.equals(vendor)) { - System.err.printf("Invalid vendor %s, expected %s\n", - vendor, expectedVendor); - System.exit(2); - } - - if (!expectedVendorURL.equals(vendorURL)) { - System.err.printf("Invalid vendor URL %s, expected %s\n", - vendorURL, expectedVendorURL); - System.exit(3); - } - - if (!expectedVendorBugURL.equals(vendorBugURL)) { - System.err.printf("Invalid vendor bug URL%s, expected %s\n", - vendorBugURL, expectedVendorBugURL); - System.exit(4); - } - - System.err.printf("Vendor information verified as %s, %s, %s\n", - vendor, vendorURL, vendorBugURL); - } -} diff --git a/NEWS b/NEWS deleted file mode 100644 index f9af271116b998bd6456c597722dc69f8ef2c23d..0000000000000000000000000000000000000000 --- a/NEWS +++ /dev/null @@ -1,1716 +0,0 @@ -Key: - -JDK-X - https://bugs.openjdk.java.net/browse/JDK-X -CVE-XXXX-YYYY: https://cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY - -New in release OpenJDK 8u332 (2022-04-19): -=========================================== -Live versions of these release notes can be found at: - * https://bitly.com/openjdk8u332 - * https://builds.shipilev.net/backports-monitor/release-notes-openjdk8u332.txt - -* Security fixes - - JDK-8269938: Enhance XML processing passes redux - - JDK-8270504, CVE-2022-21426: Better XPath expression handling - - JDK-8272255: Completely handle MIDI files - - JDK-8272261: Improve JFR recording file processing - - JDK-8272594: Better record of recordings - - JDK-8274221: More definite BER encodings - - JDK-8275151, CVE-2022-21443: Improved Object Identification - - JDK-8277227: Better identification of OIDs - - JDK-8277672, CVE-2022-21434: Better invocation handler handling - - JDK-8278008, CVE-2022-21476: Improve Santuario processing - - JDK-8278356: Improve file creation - - JDK-8278449: Improve keychain support - - JDK-8278805: Enhance BMP image loading - - JDK-8278972, CVE-2022-21496: Improve URL supports - - JDK-8281388: Change wrapping of EncryptedPrivateKeyInfo -* Other changes - - JDK-8033980: Xerces Update: datatype XMLGregorianCalendarImpl and DurationImpl - - JDK-8035437: Xerces Update: xml/serialize/DOMSerializerImpl - - JDK-8035577: Xerces Update: impl/xpath/regex/RangeToken.java - - JDK-8037259: xerces update: xpointer update - - JDK-8041523: Xerces Update: Serializer improvements from Xalan - - JDK-8141508: java.lang.invoke.LambdaConversionException: Invalid receiver type - - JDK-8162572: Update License Header for all JAXP sources - - JDK-8167014: jdeps: Missing message: warn.skipped.entry - - JDK-8198411: [TEST_BUG] Two java2d tests are unstable in mach5 - - JDK-8202822: Add .git to .hgignore - - JDK-8205540: test/hotspot/jtreg/vmTestbase/nsk/jdb/trace/trace001/trace001.java fails with Debuggee did not exit after 15 commands - - JDK-8209178: Proxied HttpsURLConnection doesn't send BODY when retrying POST request - - JDK-8210283: Support git as an SCM alternative in the build - - JDK-8218682: [TEST_BUG] DashOffset fails in mach5 - - JDK-8225690: Multiple AttachListener threads can be created - - JDK-8227738: jvmti/DataDumpRequest/datadumpreq001 failed due to "exit code is 134" - - JDK-8227815: Minimal VM: set_state is not a member of AttachListener - - JDK-8240633: Memory leaks in the implementations of FileChooserUI - - JDK-8241768: git needs .gitattributes - - JDK-8247766: [aarch64] guarantee(val < (1U << nbits)) failed: Field too big for insn - - JDK-8253147: The javax/swing/JPopupMenu/7154841/bug7154841.java fail on big screens - - JDK-8253353: Crash in C2: guarantee(n != NULL) failed: No Node - - JDK-8266749: AArch64: Backtracing broken on PAC enabled systems - - JDK-8270290: NTLM authentication fails if HEAD request is used - - JDK-8273229: Update OS detection code to recognize Windows Server 2022 - - JDK-8273341: Update Siphash to version 1.0 - - JDK-8273575: memory leak in appendBootClassPath(), paths must be deallocated - - JDK-8274524: SSLSocket.close() hangs if it is called during the ssl handshake - - JDK-8277224: sun.security.pkcs.PKCS9Attributes.toString() throws NPE - - JDK-8277488: Add expiry exception for Digicert (geotrustglobalca) expiring in May 2022 - - JDK-8279077: JFR crashes on Linux ppc due to missing crash protector in signal handler - - JDK-8280060: The sun/rmi/server/Activation.java class use Thread.dumpStack() - - JDK-8282300: Throws NamingException instead of InvalidNameException after JDK-8278972 - - JDK-8282397: createTempFile method of java.io.File is failing when called with suffix of spaces character - - JDK-8284548: Invalid XPath expression causes StringIndexOutOfBoundsException - - JDK-8284920: Incorrect Token type causes XPath expression to return empty result - - JDK-8284936: Fix Java 7 bootstrap breakage due to use of Arrays.stream -* Shenandoah - - JDK-8260632: Build failures after JDK-8253353 - - JDK-8282458: Update .jcheck/conf file for sh-jdk8u move to git - -New in release OpenJDK 8u322 (2022-01-18): -=========================================== -Live versions of these release notes can be found at: - * https://bitly.com/openjdk8u322 - * https://builds.shipilev.net/backports-monitor/release-notes-openjdk8u322.txt - -* Security fixes - - JDK-8264934, CVE-2022-21248: Enhance cross VM serialization - - JDK-8268488: More valuable DerValues - - JDK-8268494: Better inlining of inlined interfaces - - JDK-8268512: More content for ContentInfo - - JDK-8268795: Enhance digests of Jar files - - JDK-8268801: Improve PKCS attribute handling - - JDK-8268813, CVE-2022-21283: Better String matching - - JDK-8269151: Better construction of EncryptedPrivateKeyInfo - - JDK-8269944: Better HTTP transport redux - - JDK-8270392, CVE-2022-21293: Improve String constructions - - JDK-8270416, CVE-2022-21294: Enhance construction of Identity maps - - JDK-8270492, CVE-2022-21282: Better resolution of URIs - - JDK-8270498, CVE-2022-21296: Improve SAX Parser configuration management - - JDK-8270646, CVE-2022-21299: Improved scanning of XML entities - - JDK-8271962: Better TrueType font loading - - JDK-8271968: Better canonical naming - - JDK-8271987: Manifest improved manifest entries - - JDK-8272014, CVE-2022-21305: Better array indexing - - JDK-8272026, CVE-2022-21340: Verify Jar Verification - - JDK-8272236, CVE-2022-21341: Improve serial forms for transport - - JDK-8272272: Enhance jcmd communication - - JDK-8272462: Enhance image handling - - JDK-8273290: Enhance sound handling - - JDK-8273748, CVE-2022-21349: Improve Solaris font rendering - - JDK-8273756, CVE-2022-21360: Enhance BMP image support - - JDK-8273838, CVE-2022-21365: Enhanced BMP processing -* Other changes - - JDK-6801613: Cross-platform pageDialog and printDialog top margin entry broken - - JDK-8011541: [TEST_BUG] closed/javax/swing/plaf/metal/MetalUtils/bug6190373.java fails NPE since 7u25b03 - - JDK-8025430: [TEST_BUG] javax/swing/JEditorPane/5076514/bug5076514.java failed since jdk8b108 - - JDK-8041928: MouseEvent.getModifiersEx gives wrong result - - JDK-8042199: The build of J2DBench via makefile is broken after the JDK-8005402 - - JDK-8044365: (dc) MulticastSendReceiveTests.java failing with ENOMEM when joining group (OS X 10.9) - - JDK-8048021: Remove @version tag in jaxp repo - - JDK-8049348: compiler/intrinsics/bmi/verifycode tests on lzcnt and tzcnt use incorrect assumption about REXB prefix usage - - JDK-8060027: Tests java/beans/XMLEncoder/Test4903007.java and java/beans/XMLEncoder/java_awt_GridBagLayout.java - - JDK-8066588: javax/management/remote/mandatory/connection/RMIConnector_NPETest.java fails to compile - - JDK-8066652: Default TimeZone is GMT not local if user.timezone is invalid on Mac OS - - JDK-8069034: gc/g1/TestEagerReclaimHumongousRegionsClearMarkBits.java nightly failure - - JDK-8077590: windows_i586_6.2-product-c2-runThese8_Xcomp_vm failing after win compiler upgrade - - JDK-8080287: The image of BufferedImage.TYPE_INT_ARGB and BufferedImage.TYPE_INT_ARGB_PRE is blank - - JDK-8140329: [TEST_BUG] test FullScreenAfterSplash.java failed because image was not generated - - JDK-8140472: java/net/ipv6tests/TcpTest.java failed intermittently with java.net.BindException: Address already in use: NET_Bind - - JDK-8147051: StaxEntityResolverWrapper should create StaxXMLInputSource with a resolver indicator - - JDK-8148915: Intermittent failures of bug6400879.java - - JDK-8176837: SunPKCS11 provider needs to check more details on PKCS11 Mechanism - - JDK-8177393: Result of RescaleOp for 4BYTE_ABGR images may be 25% black - - JDK-8177536: Avoid Apple Peer-to-Peer interfaces in networking tests - - JDK-8182036: Load from initializing arraycopy uses wrong memory state - - JDK-8183369: RFC unconformity of HttpURLConnection with proxy - - JDK-8183543: Aarch64: C2 compilation often fails with "failed spill-split-recycle sanity check" - - JDK-8187450: JNI local refs exceeds capacity warning in NetworkInterface::getAll - - JDK-8187649: ArrayIndexOutOfBoundsException in java.util.JapaneseImperialCalendar - - JDK-8190482: InnocuousThread creation should not require the caller to possess enableContextClassLoaderOverride - - JDK-8190793: Httpserver does not detect truncated request body - - JDK-8196572: Tests ColConvCCMTest.java and MTColConvTest.java fail - - JDK-8202788: Explicitly reclaim cached thread-local direct buffers at thread exit - - JDK-8210058: Algorithmic Italic font leans opposite angle in Printing - - JDK-8220150: macos10.14 Mojave returns anti-aliased glyphs instead of aliased B&W glyphs - - JDK-8225082: Remove IdenTrust certificate that is expiring in September 2021 - - JDK-8225083: Remove Google certificate that is expiring in December 2021 - - JDK-8226806: [macOS 10.14] Methods of Java Robot should be called from appropriate thread - - JDK-8231254: (fs) Add test for macOS Catalina changes to protect system software - - JDK-8231438: [macOS] Dark mode for the desktop is not supported - - JDK-8232178: MacVolumesTest failed after upgrade to MacOS Catalina - - JDK-8232226: [macos 10.15] test/jdk/java/awt/color/EqualityTest/EqualityTest.java may fail - - JDK-8235153: [TESTBUG] [macos 10.15] java/awt/Graphics/DrawImageBG/SystemBgColorTest.java fails - - JDK-8236897: Fix the copyright header for pkcs11gcm2.h - - JDK-8237499: JFR: Include stack trace in the ThreadStart event - - JDK-8239886: Minimal VM build fails after JDK-8237499 - - JDK-8261397: Try Catch Method Failing to Work When Dividing An Integer By 0 - - JDK-8262731: [macOS] Exception from "Printable.print" is swallowed during "PrinterJob.print" - - JDK-8272342: [TEST_BUG] java/awt/print/PrinterJob/PageDialogMarginTest.java catches all exceptions - - JDK-8273308: PatternMatchTest.java fails on CI - - JDK-8273342: Null pointer dereference in classFileParser.cpp:2817 - - JDK-8273826: Correct Manifest file name and NPE checks - - JDK-8273968: JCK javax_xml tests fail in CI - - JDK-8274407: (tz) Update Timezone Data to 2021c - - JDK-8274467: TestZoneInfo310.java fails with tzdata2021b - - JDK-8274468: TimeZoneTest.java fails with tzdata2021b - - JDK-8274595: DisableRMIOverHTTPTest failed: connection refused - - JDK-8274779: HttpURLConnection: HttpClient and HttpsClient incorrectly check request method when set to POST - - JDK-8275766: (tz) Update Timezone Data to 2021e - - JDK-8275849: TestZoneInfo310.java fails with tzdata2021e - - JDK-8276536: Update TimeZoneNames files to follow the changes made by JDK-8275766 - -Notes on individual issues: -=========================== - -security-libs/java.security: - -JDK-8271434: Removed IdenTrust Root Certificate -=============================================== -The following root certificate from IdenTrust has been removed from -the `cacerts` keystore: - -Alias Name: identrustdstx3 [jdk] -Distinguished Name: CN=DST Root CA X3, O=Digital Signature Trust Co. - -JDK-8272535: Removed Google's GlobalSign Root Certificate -========================================================= -The following root certificate from Google has been removed from the -`cacerts` keystore: - -Alias Name: globalsignr2ca [jdk] -Distinguished Name: CN=GlobalSign, O=GlobalSign, OU=GlobalSign Root CA - R2 - -core-libs/java.time: - -JDK-8274857: Update Timezone Data to 2021c -=========================================== -IANA Time Zone Database, on which JDK's Date/Time libraries are based, -has been updated to version 2021c -(https://mm.icann.org/pipermail/tz-announce/2021-October/000067.html). Note -that with this update, some of the time zone rules prior to the year -1970 have been modified according to the changes which were introduced -with 2021b. For more detail, refer to the announcement of 2021b -(https://mm.icann.org/pipermail/tz-announce/2021-September/000066.html) - -New in release OpenJDK 8u312 (2021-10-19): -=========================================== -Live versions of these release notes can be found at: - * https://bitly.com/openjdk8u312 - * https://builds.shipilev.net/backports-monitor/release-notes-openjdk8u312.txt - -* Security fixes - - JDK-8130183, CVE-2021-35588: InnerClasses: VM permits wrong Throw ClassFormatError if InnerClasses attribute's inner_class_info_index is 0 - - JDK-8161016: Strange behavior of URLConnection with proxy - - JDK-8163326, CVE-2021-35550: Update the default enabled cipher suites preference - - JDK-8254967, CVE-2021-35565: com.sun.net.HttpsServer spins on TLS session close - - JDK-8263314: Enhance XML Dsig modes - - JDK-8265167, CVE-2021-35556: Richer Text Editors - - JDK-8265574: Improve handling of sheets - - JDK-8265580, CVE-2021-35559: Enhanced style for RTF kit - - JDK-8265776: Improve Stream handling for SSL - - JDK-8266097, CVE-2021-35561: Better hashing support - - JDK-8266103: Better specified spec values - - JDK-8266109: More Resilient Classloading - - JDK-8266115: More Manifest Jar Loading - - JDK-8266137, CVE-2021-35564: Improve Keystore integrity - - JDK-8266689, CVE-2021-35567: More Constrained Delegation - - JDK-8267086: ArrayIndexOutOfBoundsException in java.security.KeyFactory.generatePublic - - JDK-8267712: Better LDAP reference processing - - JDK-8267729, CVE-2021-35578: Improve TLS client handshaking - - JDK-8267735, CVE-2021-35586: Better BMP support - - JDK-8268193: Improve requests of certificates - - JDK-8268199: Correct certificate requests - - JDK-8268506: More Manifest Digests - - JDK-8269618, CVE-2021-35603: Better session identification - - JDK-8269624: Enhance method selection support - - JDK-8270398: Enhance canonicalization - - JDK-8270404: Better canonicalization -* Other changes - - JDK-6847157: java.lang.NullPointerException: HDC for component at sun.java2d.loops.Blit.Blit - - JDK-7146776: deadlock between URLStreamHandler.getHostAddress and file.Handler.openconnection - - JDK-7188942: Remove support of pbuffers in OGL Java2d pipeline - - JDK-8004148: NPE in sun.awt.SunToolkit.getWindowDeactivationTime - - JDK-8022323: [JavaSecurityScanner] review package com.sun.management.* Native methods should be private - - JDK-8027154: [TESTBUG] Test java/awt/Mouse/GetMousePositionTest/GetMousePositionWithPopup.java fails - - JDK-8035001: TEST_BUG: the retry logic in RMID.start() should check that the subprocess hasn't terminated - - JDK-8035424: (reflect) Performance problem in sun.reflect.generics.parser.SignatureParser - - JDK-8042557: compiler/uncommontrap/TestSpecTrapClassUnloading.java fails with: GC triggered before VM initialization completed - - JDK-8054118: java/net/ipv6tests/UdpTest.java failed intermittently - - JDK-8065215: Print warning summary at end of configure - - JDK-8072767: DefaultCellEditor for comboBox creates ActionEvent with wrong source object - - JDK-8079891: Store configure log in $BUILD/configure.log - - JDK-8080082: configure fails if you create an empty directory and then run configure from it - - JDK-8086003: Test fails on OSX with java.lang.RuntimeException 'Narrow klass base: 0x0000000000000000, Narrow klass shift: 3' missing - - JDK-8131062: aarch64: add support for GHASH acceleration - - JDK-8134869: AARCH64: GHASH intrinsic is not optimal - - JDK-8134989: java/net/MulticastSocket/TestInterfaces.java failed due to unexpected IP address - - JDK-8156584: Initialization race in sun.security.x509.AlgorithmId.get - - JDK-8157404: Unable to read certain PKCS12 keystores from SequenceInputStream - - JDK-8166673: The new implementation of Robot.waitForIdle() may hang - - JDK-8170467: (reflect) Optimize SignatureParser's use of StringBuilders - - JDK-8194246: JVM crashes when calling getStackTrace if stack contains a method that is a member of a very large class - - JDK-8196181: sun/java2d/GdiRendering/InsetClipping.java fails - - JDK-8202837: PBES2 AlgorithmId encoding error in PKCS12 KeyStore - - JDK-8206189: sun/security/pkcs12/EmptyPassword.java fails with Sequence tag error - - JDK-8214418: half-closed SSLEngine status may cause application dead loop - - JDK-8214513: A PKCS12 keystore from Java 8 using custom PBE parameters cannot be read in Java 11 - - JDK-8220786: Create new switch to redirect error reporting output to stdout or stderr - - JDK-8222751: closed/test/jdk/sun/security/util/DerIndefLenConverter/IndefBerPkcs12.java fail - - JDK-8229243: SunPKCS11-Solaris provider tests failing on Solaris 11.4 - - JDK-8231222: fix pkcs11 P11_DEBUG guarded native traces - - JDK-8237495: Java MIDI fails with a dereferenced memory error when asked to send a raw 0xF7 - - JDK-8238567: SoftMainMixer.processAudioBuffers(): Wrong handling of stoppedMixers - - JDK-8240518: Incorrect JNU_ReleaseStringPlatformChars in Windows Print - - JDK-8241248: NullPointerException in sun.security.ssl.HKDF.extract(HKDF.java:93) - - JDK-8244154: Update SunPKCS11 provider with PKCS11 v3.0 header files - - JDK-8247469: getSystemCpuLoad() returns -1 on linux when some offline cpus are present and cpusets.effective_cpus is not available - - JDK-8248901: Signed immediate support in .../share/assembler.hpp is broken. - - JDK-8259338: Add expiry exception for identrustdstx3 alias to VerifyCACerts.java test - - JDK-8262000: jdk/jfr/event/gc/detailed/TestPromotionFailedEventWithParallelScavenge.java failed with "OutOfMemoryError: Java heap space" - - JDK-8262829: Native crash in Win32PrintServiceLookup.getAllPrinterNames() - - JDK-8263311: Watch registry changes for remote printers update instead of polling - - JDK-8263382: java/util/logging/ParentLoggersTest.java failed with "checkLoggers: getLoggerNames() returned unexpected loggers" - - JDK-8264752: SIGFPE crash with option FlightRecorderOptions:threadbuffersize=30M - - JDK-8265238: [8u] [macos] build failure in OpenJDK8u after JDK-8211301 in older xcode - - JDK-8265836: OperatingSystemImpl.getCpuLoad() returns incorrect CPU load inside a container - - JDK-8265978: make test should look for more locations when searching for exit code - - JDK-8266206: Build failure after JDK-8264752 with older GCCs - - JDK-8268103: JNI functions incorrectly return a double after JDK-8265836 - - JDK-8268965: TCP Connection Reset when connecting simple socket to SSL server - - JDK-8269594: assert(_handle_mark_nesting > 1) failed: memory leak: allocating handle outside HandleMark - - JDK-8269763: The JEditorPane is blank after JDK-8265167 - - JDK-8269810: [8u] Update generated_configure.sh after JDK-8250876 backport - - JDK-8269851: OperatingSystemMXBean getProcessCpuLoad reports incorrect process cpu usage in containers - - JDK-8269859: BacktraceBuilder._cprefs needs to be accessed as unsigned short - - JDK-8269882: stack-use-after-scope in NewObjectA - - JDK-8269953: config.log is not in build directory after 8u backport of JDK-8079891 - - JDK-8270137: Kerberos Credential Retrieval from Cache not Working in Cross-Realm Setup - - JDK-8271466: StackGap test fails on aarch64 due to "-m64" - - JDK-8272124: Cgroup v1 initialization causes NullPointerException when cgroup path contains colon - - JDK-8272214: [8u] Build failure after backport of JDK-8248901 - - JDK-8272714: [8u] Build failure after backport of JDK-8248901 with MSVC 2013 -* Shenandoah - - [backport] JDK-8269661: JNI_GetStringCritical does not lock char array - - Re-cast JNI critical strings patch to be Shenandoah-specific - -Notes on individual issues: -=========================== - -core-libs/java.net: - -JDK-8164200: Modified HttpURLConnection behavior when no suitable proxy is found -================================================================================ -The behavior of HttpURLConnection when using a ProxySelector has been -modified with this JDK release. HttpURLConnection used to fall back to -a DIRECT connection attempt if the configured proxy(s) failed to make -a connection. This release introduces a change whereby no DIRECT -connection will be attempted in such a scenario. Instead, the -HttpURLConnection.connect() method will fail and throw an IOException -which occurred from the last proxy tested. - -security-libs/javax.net.ssl: - -JDK-8219551: Updated the Default Enabled Cipher Suites Preference -================================================================= -The preference of the default enabled cipher suites has been -changed. The compatibility impact should be minimal. If needed, -applications can customize the enabled cipher suites and the -preference. For more details, refer to the SunJSSE provider -documentation and the JSSE Reference Guide documentation. - -New in release OpenJDK 8u302 (2021-07-20): -=========================================== -Live versions of these release notes can be found at: - * https://bitly.com/openjdk8u302 - * https://builds.shipilev.net/backports-monitor/release-notes-openjdk8u302.txt - -* Security fixes - - JDK-8256157: Improve bytecode assembly - - JDK-8256491: Better HTTP transport - - JDK-8258432, CVE-2021-2341: Improve file transfers - - JDK-8260453: Improve Font Bounding - - JDK-8260960: Signs of jarsigner signing - - JDK-8260967, CVE-2021-2369: Better jar file validation - - JDK-8262380: Enhance XML processing passes - - JDK-8262403: Enhanced data transfer - - JDK-8262410: Enhanced rules for zones - - JDK-8262477: Enhance String Conclusions - - JDK-8262967: Improve Zip file support - - JDK-8264066, CVE-2021-2388: Enhance compiler validation - - JDK-8264079: Improve abstractions - - JDK-8264460: Improve NTLM support -* Other changes - - JDK-6878250: (so) IllegalBlockingModeException thrown when reading from a closed SocketChannel's InputStream - - JDK-6990210: [TEST_BUG] EventDispatchThread/HandleExceptionOnEDT/HandleExceptionOnEDT.java fails on gnome - - JDK-7059970: Test case: javax/imageio/plugins/png/ITXtTest.java is not closing a file - - JDK-7106851: Test should not use System.exit - - JDK-8019470: Changes needed to compile JDK 8 on MacOS with clang compiler - - JDK-8028618: [TEST BUG] javax/swing/JScrollBar/bug4202954/bug4202954.java fails - - JDK-8030123: java/beans/Introspector/Test8027648.java fails - - JDK-8032050: Clean up for java/rmi/activation/Activatable/shutdownGracefully/ShutdownGracefully.java - - JDK-8033289: clang: clean up unused function warning - - JDK-8034856: gcc warnings compiling src/solaris/native/sun/security/pkcs11 - - JDK-8034857: gcc warnings compiling src/solaris/native/sun/management - - JDK-8035000: clean up ActivationLibrary.DestroyThread - - JDK-8035054: JarFacade.c should not include ctype.h - - JDK-8035287: gcc warnings compiling various libraries files - - JDK-8036095: RMI tests using testlibrary.RMID and testlibrary.JavaVM do not pass through vmoptions - - JDK-8037825: Fix warnings and enable "warnings as errors" in serviceability native libraries - - JDK-8042891: Format issues embedded in macros for two g1 source files - - JDK-8043264: hsdis library not picked up correctly on expected paths - - JDK-8043646: libosxapp.dylib fails to build on Mac OS 10.9 with clang - - JDK-8047939: [TESTBUG] Rewrite test/runtime/8001071/Test8001071.sh - - JDK-8055754: filemap.cpp does not compile with clang - - JDK-8064909: FragmentMetaspace.java got OutOfMemoryError - - JDK-8066508: JTReg tests timeout on slow devices when run using JPRT - - JDK-8066807: langtools/test/Makefile should use -agentvm not -samevm - - JDK-8071374: -XX:+PrintAssembly -XX:+PrintSignatureHandlers crash fastdebug VM with assert(limit == __null || limit <= nm->code_end()) in RelocIterator::initialize - - JDK-8073446: TimeZone getOffset API does not return a dst offset between years 2038-2137 - - JDK-8074835: Resolve disabled warnings for libj2gss - - JDK-8074836: Resolve disabled warnings for libosxkrb5 - - JDK-8075071: [TEST_BUG] TimSortStackSize2.java: OOME: Java heap space: MaxHeap shrinked by MaxRAMFraction - - JDK-8077364: "if( !this )" construct prevents build on Xcode 6.3 - - JDK-8078855: [TEST_BUG] javax/swing/JComboBox/8032878/bug8032878.java fails in WindowsClassicLookAndFeel - - JDK-8081764: [TEST_BUG] Test javax/swing/plaf/aqua/CustomComboBoxFocusTest.java fails on Windows, Solaris Sparcv9 and Linux but passes on MacOSX - - JDK-8129511: PlatformMidi.c:83 uses malloc without malloc header - - JDK-8130308: Too low memory usage in TestPromotionFromSurvivorToTenuredAfterMinorGC.java - - JDK-8130430: [TEST_BUG] remove unnecessary internal calls from javax/swing/JRadioButton/8075609/bug8075609.java - - JDK-8132148: G1 hs_err region dump legend out of sync with region values - - JDK-8132709: [TESTBUG] gc/g1/TestHumongousShrinkHeap.java might fail on embedded - - JDK-8134672: [TEST_BUG] Some tests should check isDisplayChangeSupported - - JDK-8134883: C1 hard crash in range check elimination in Nashorn test262parallel - - JDK-8136592: [TEST_BUG] Fix 2 platform-specific closed regtests for jigsaw - - JDK-8138820: JDK Hotspot build fails with Xcode 7.0.1 - - JDK-8151786: [TESTBUG] java/beans/XMLEncoder/Test4625418.java timed out intermittently - - JDK-8159898: Negative array size in java/beans/Introspector/Test8027905.java - - JDK-8166046: [TESTBUG] compiler/stringopts/TestStringObjectInitialization.java fails with OOME - - JDK-8166724: gc/g1/TestHumongousShrinkHeap.java fails with OOME - - JDK-8172188: JDI tests fail due to "permission denied" when creating temp file - - JDK-8177809: File.lastModified() is losing milliseconds (always ends in 000) - - JDK-8178403: DirectAudio in JavaSound may hang and leak - - JDK-8180478: tools/launcher/MultipleJRE.sh fails on Windows because of extra-'' - - JDK-8183910: gc/arguments/TestAggressiveHeap.java fails intermittently - - JDK-8190332: PngReader throws NegativeArraySizeException/OOM error when IHDR width is very large - - JDK-8190679: java/util/Arrays/TimSortStackSize2.java fails with "Initial heap size set to a larger value than the maximum heap size" - - JDK-8191955: AArch64: incorrect prefetch distance causes an internal error - - JDK-8196092: javax/swing/JComboBox/8032878/bug8032878.java fails - - JDK-8199265: java/util/Arrays/TimSortStackSize2.java fails with OOM - - JDK-8200550: Xcode 9.3 produce warning -Wexpansion-to-defined - - JDK-8202299: Java Keystore fails to load PKCS12/PFX certificates created in WindowsServer2016 - - JDK-8203196: C1 emits incorrect code due to integer overflow in _tableswitch keys - - JDK-8205014: com/sun/jndi/ldap/DeadSSLLdapTimeoutTest.java failed with "Read timed out" - - JDK-8206243: java -XshowSettings fails if memory.limit_in_bytes overflows LONG.max - - JDK-8206925: Support the certificate_authorities extension - - JDK-8209996: [PPC64] Fix JFR profiling - - JDK-8214345: infinite recursion while checking super class - - JDK-8217230: assert(t == t_no_spec) failure in NodeHash::check_no_speculative_types() - - JDK-8217348: assert(thread->is_Java_thread()) failed: just checking - - JDK-8225081: Remove Telia Company CA certificate expiring in April 2021 - - JDK-8225116: Test OwnedWindowsLeak.java intermittently fails - - JDK-8228757: Fail fast if the handshake type is unknown - - JDK-8230428: Cleanup dead CastIP node code in formssel.cpp - - JDK-8231631: sun/net/ftp/FtpURLConnectionLeak.java fails intermittently with NPE - - JDK-8231841: AArch64: debug.cpp help() is missing an AArch64 line for pns - - JDK-8231949: [PPC64, s390]: Make async profiling more reliable - - JDK-8234011: (zipfs) Memory leak in ZipFileSystem.releaseDeflater() - - JDK-8239053: [8u] clean up undefined-var-template warnings - - JDK-8239400: [8u] clean up undefined-var-template warnings - - JDK-8241649: Optimize Character.toString - - JDK-8241829: Cleanup the code for PrinterJob on windows - - JDK-8242565: Policy initialization issues when the denyAfter constraint is enabled - - JDK-8243559: Remove root certificates with 1024-bit keys - - JDK-8247350: [aarch64] assert(false) failed: wrong size of mach node - - JDK-8249142: java/awt/FontClass/CreateFont/DeleteFont.sh is unstable - - JDK-8249278: Revert JDK-8226253 which breaks the spec of AccessibleState.SHOWING for JList - - JDK-8250876: Fix issues with cross-compile on macos - - JDK-8252883: AccessDeniedException caused by delayed file deletion on Windows - - JDK-8253375: OSX build fails with Xcode 12.0 (12A7209) - - JDK-8254631: Better support ALPN byte wire values in SunJSSE - - JDK-8255086: Update the root locale display names - - JDK-8255734: VM should ignore SIGXFSZ on ppc64, s390 too - - JDK-8256818: SSLSocket that is never bound or connected leaks socket resources - - JDK-8257039: [8u] GenericTaskQueue destructor is incorrect - - JDK-8257670: sun/security/ssl/SSLSocketImpl/SSLSocketLeak.java reports leaks - - JDK-8257884: Re-enable sun/security/ssl/SSLSocketImpl/SSLSocketLeak.java as automatic test - - JDK-8257997: sun/security/ssl/SSLSocketImpl/SSLSocketLeak.java again reports leaks after JDK-8257884 - - JDK-8257999: Parallel GC crash in gc/parallel/TestDynShrinkHeap.java: new region is not in covered_region - - JDK-8258419: RSA cipher buffer cleanup - - JDK-8258669: fastdebug jvm crashes when do event based tracing for monitor inflation - - JDK-8258753: StartTlsResponse.close() hangs due to synchronization issues - - JDK-8259271: gc/parallel/TestDynShrinkHeap.java still fails "assert(covered_region.contains(new_memregion)) failed: new region is not in covered_region" - - JDK-8259619: C1: 3-arg StubAssembler::call_RT stack-use condition is incorrect - - JDK-8259886: Improve SSL session cache performance and scalability - - JDK-8260029: aarch64: fix typo in verify_oop_array - - JDK-8260236: better init AnnotationCollector _contended_group - - JDK-8260255: C1: LoopInvariantCodeMotion constructor can leave some fields uninitialized - - JDK-8260484: CheckExamples.java / NoJavaLangTest.java fail with jtreg 4.2 - - JDK-8260704: ParallelGC: oldgen expansion needs release-store for _end - - JDK-8261355: No data buffering in SunPKCS11 Cipher encryption when the underlying mechanism has no padding - - JDK-8261867: Backport relevant test changes & additions from JDK-8130125 - - JDK-8262110: DST starts from incorrect time in 2038 - - JDK-8262446: DragAndDrop hangs on Windows - - JDK-8262726: AArch64: C1 StubAssembler::call_RT can corrupt stack - - JDK-8262730: Enable jdk8u MacOS external debug symbols - - JDK-8262864: No debug symbols in image for Windows --with-native-debug-symbols=external - - JDK-8263061: copy wrong unpack200 debuginfo to bin directory after 8252395 - - JDK-8263504: Some OutputMachOpcodes fields are uninitialized - - JDK-8263600: change rmidRunning to a simple lookup - - JDK-8264509: jdk8u MacOS zipped debug symbols won't build - - JDK-8264562: assert(verify_field_bit(1)) failed: Attempting to write an uninitialized event field: type - - JDK-8264640: CMS ParScanClosure misses a barrier - - JDK-8264816: Weak handles leak causes GC to take longer - - JDK-8265462: Handle multiple slots in the NSS Internal Module from SunPKCS11's Secmod - - JDK-8265666: Enable AIX build platform to make external debug symbols - - JDK-8265832: runtime/StackGap/testme.sh fails to compile in 8u - - JDK-8265988: Fix sun/text/IntHashtable/Bug4170614 for JDK 8u - - JDK-8266191: Missing aarch64 parts of JDK-8181872 (C1: possible overflow when strength reducing integer multiply by constant) - - JDK-8266723: JFR periodic events are causing extra allocations - - JDK-8266929: Unable to use algorithms from 3p providers - - JDK-8267235: [macos_aarch64] InterpreterRuntime::throw_pending_exception messing up LR results in crash - - JDK-8267426: MonitorVmStartTerminate test timed out on Embedded VM - - JDK-8267545: [8u] Enable Xcode 12 builds on macOS - - JDK-8267689: [aarch64] Crash due to bad shift in indirect addressing mode - - JDK-8268444: keytool -v -list print is incorrect after backport JDK-8141457 - - JDK-8269388: Default build of OpenJDK 8 fails on newer GCCs with warnings as errors on format-overflow - - JDK-8269468: JDK-8269388 breaks the build on older GCCs - - JDK-8270533: AArch64: size_fits_all_mem_uses should return false if its output is a CAS -* Shenandoah - - [backport] JDK-8259580: Shenandoah: uninitialized label in VerifyThreadGCState - - [backport] JDK-8259954: gc/shenandoah/mxbeans tests fail with -Xcomp - - [backport] JDK-8261251: Shenandoah: Use object size for full GC humongous - - [backport] JDK-8261413: Shenandoah: Disable class-unloading in I-U mode - - [backport] JDK-8265239: Shenandoah: Shenandoah heap region count could be off by 1 - - [backport] JDK-8266802: Shenandoah: Round up region size to page size unconditionally - - [backport] JDK-8267561: Shenandoah: Reference processing not properly setup for outside of cycle degenerated GC - - [backport] JDK-8268127: Shenandoah: Heap size may be too small for region to align to large page size - - [backport] JDK-8268699: Shenandoah: Add test for JDK-8268127 - - Shenandoah: Process weak roots during class unloading cycle - -Notes on individual issues: -=========================== - -security-libs/java.security: - -JDK-8256902: Removed Root Certificates with 1024-bit Keys -========================================================= -The following root certificates with weak 1024-bit RSA public keys -have been removed from the `cacerts` keystore: - -Alias Name: thawtepremiumserverca [jdk] -Distinguished Name: EMAILADDRESS=premium-server@thawte.com, CN=Thawte Premium Server CA, OU=Certification Services Division, O=Thawte Consulting cc, L=Cape Town, ST=Western Cape, C=ZA - -Alias Name: verisignclass2g2ca [jdk] -Distinguished Name: OU=VeriSign Trust Network, OU="(c) 1998 VeriSign, Inc. - For authorized use only", OU=Class 2 Public Primary Certification Authority - G2, O="VeriSign, Inc.", C=US - -Alias Name: verisignclass3ca [jdk] -Distinguished Name: OU=Class 3 Public Primary Certification Authority, O="VeriSign, Inc.", C=US - -Alias Name: verisignclass3g2ca [jdk] -Distinguished Name: OU=VeriSign Trust Network, OU="(c) 1998 VeriSign, Inc. - For authorized use only", OU=Class 3 Public Primary Certification Authority - G2, O="VeriSign, Inc.", C=US - -Alias Name: verisigntsaca [jdk] -Distinguished Name: CN=Thawte Timestamping CA, OU=Thawte Certification, O=Thawte, L=Durbanville, ST=Western Cape, C=ZA - -JDK-8261361: Removed Telia Company's Sonera Class2 CA certificate -================================================================= - -The following root certificate have been removed from the cacerts truststore: - -Alias Name: soneraclass2ca -Distinguished Name: CN=Sonera Class2 CA, O=Sonera, C=FI - -security-libs/javax.net.ssl: - -JDK-8257548: Improve Encoding of TLS Application-Layer Protocol Negotiation (ALPN) Values -========================================================================================= -Certain TLS ALPN values couldn't be properly read or written by the -SunJSSE provider. This is due to the choice of Strings as the API -interface and the undocumented internal use of the UTF-8 Character Set -which converts characters larger than U+00007F (7-bit ASCII) into -multi-byte arrays that may not be expected by a peer. - -ALPN values are now represented using the network byte representation -expected by the peer, which should require no modification for -standard 7-bit ASCII-based character Strings. However, SunJSSE now -encodes/decodes String characters as 8-bit ISO_8859_1/LATIN-1 -characters. This means applications that used characters above -U+000007F that were previously encoded using UTF-8 may need to either -be modified to perform the UTF-8 conversion, or set the Java security -property `jdk.tls.alpnCharset` to "UTF-8" revert the behavior. - -See the updated guide at -https://docs.oracle.com/javase/8/docs/technotes/guides/security/jsse/alpn.html -for more information. - -JDK-8244460: Support for certificate_authorities Extension -========================================================== -The "certificate_authorities" extension is an optional extension -introduced in TLS 1.3. It is used to indicate the certificate -authorities (CAs) that an endpoint supports and should be used by the -receiving endpoint to guide certificate selection. - -With this JDK release, the "certificate_authorities" extension is -supported for TLS 1.3 in both the client and the server sides. This -extension is always present for client certificate selection, while it -is optional for server certificate selection. - -Applications can enable this extension for server certificate -selection by setting the `jdk.tls.client.enableCAExtension` system -property to `true`. The default value of the property is `false`. - -Note that if the client trusts more CAs than the size limit of the -extension (less than 2^16 bytes), the extension is not enabled. Also, -some server implementations do not allow handshake messages to exceed -2^14 bytes. Consequently, there may be interoperability issues when -`jdk.tls.client.enableCAExtension` is set to `true` and the client -trusts more CAs than the server implementation limit. - -New in release OpenJDK 8u292 (2021-04-20): -=========================================== -Live versions of these release notes can be found at: - * https://bitly.com/openjdk8u292 - * https://builds.shipilev.net/backports-monitor/release-notes-openjdk8u292.txt - -* Security fixes - - JDK-8227467: Better class method invocations - - JDK-8244473: Contextualize registration for JNDI - - JDK-8244543: Enhanced handling of abstract classes - - JDK-8249906, CVE-2021-2163: Enhance opening JARs - - JDK-8250568, CVE-2021-2161: Less ambiguous processing - - JDK-8253799: Make lists of normal filenames -* Other changes - - JDK-6345095: regression test EmptyClipRenderingTest fails - - JDK-6896810: TEST_BUG: java/lang/ref/SoftReference/Pin.java fails with OOME during System.out.println - - JDK-6949753: [TEST BUG]: java/awt/print/PageFormat/PDialogTest.java needs update by removing a infinite loop - - JDK-7107012: sun.jvm.hotspot.code.CompressedReadStream readDouble() conversion to long mishandled - - JDK-7112454: TEST_BUG: java/awt/Choice/PopdownGeneratesMouseEvents/PopdownGeneratesMouseEvents.html failed - - JDK-7131835: [TEST_BUG] Test does not consider that the rounded edges of the window in Mac OS 10.7 - - JDK-7185221: [macosx] Regtest should not throw exception if a suitable display mode found - - JDK-8031126: java/lang/management/ThreadMXBean/ThreadUserTime.java fails intermittently - - JDK-8035166: Remove dependency on EC classes from pkcs11 provider - - JDK-8035186: j2se_jdk/jdk/test/java/lang/invoke/lambda/LogGeneratedClassesTest.java - assertion error - - JDK-8038723: Openup some PrinterJob tests - - JDK-8041464: [TEST_BUG] CustomClassLoaderTransferTest does not support OS X - - JDK-8041561: Inconsistent opacity behaviour between JCheckBox and JRadioButton - - JDK-8061777: (zipfs) IllegalArgumentException in ZipCoder.toString when using Shitft_JIS - - JDK-8078024: javac, several incorporation steps are silently failing when an error should be reported - - JDK-8078450: Implement consistent process for quarantine of tests - - JDK-8078614: WindowsClassicLookAndFeel MetalComboBoxUI.getbaseLine fails with IllegalArgumentException - - JDK-8080953: [TEST_BUG]Test java/awt/FontClass/DebugFonts.java fails due to wrongly typed bugid - - JDK-8081547: Prepare client libs regression tests for running in a concurrent, headless jtreg environment - - JDK-8129626: G1: set_in_progress() and clear_started() needs a barrier on non-TSO platforms - - JDK-8141457: keytool default cert fingerprint algorithm should be SHA-256 - - JDK-8145051: Wrong parameter name in synthetic lambda method leads to verifier error - - JDK-8150204: (fs) Enhance java/nio/file/Files/probeContentType/Basic.java debugging output - - JDK-8158525: Update a few java/net tests to use the loopback address instead of the host address - - JDK-8160217: JavaSound should clean up resources better - - JDK-8167281: IIOMetadataNode bugs in getElementsByTagName and NodeList.item methods - - JDK-8168996: C2 crash at postaloc.cpp:140 : assert(false) failed: unexpected yanked node - - JDK-8171410: aarch64: long multiplyExact shifts by 31 instead of 63 - - JDK-8172404: Tools should warn if weak algorithms are used before restricting them - - JDK-8185934: keytool shows "Signature algorithm: SHA1withECDSA, -1-bit key" - - JDK-8191915: JCK tests produce incorrect results with C2 - - JDK-8198334: java/awt/FileDialog/8003399/bug8003399.java fails in headless mode - - JDK-8202343: Disable TLS 1.0 and 1.1 - - JDK-8209333: Socket reset issue for TLS 1.3 socket close - - JDK-8211301: [macos] support full window content options - - JDK-8211339: NPE during SSL handshake caused by HostnameChecker - - JDK-8216987: ciMethodData::load_data() unpacks MDOs with non-atomic copy - - JDK-8217338: [Containers] Improve systemd slice memory limit support - - JDK-8219991: New fix of the deadlock in sun.security.ssl.SSLSocketImpl - - JDK-8221408: Windows 32bit build build errors/warnings in hotspot - - JDK-8223186: HotSpot compile warnings from GCC 9 - - JDK-8225435: Upgrade IANA Language Subtag Registry to the latest for JDK14 - - JDK-8225805: Java Access Bridge does not close the logger - - JDK-8226899: Problemlist compiler/rtm tests - - JDK-8227642: [TESTBUG] Make docker tests podman compatible - - JDK-8228434: jdk/net/Sockets/Test.java fails after JDK-8227642 - - JDK-8229284: jdk/internal/platform/cgroup/TestCgroupMetrics.java fails for - memory:getMemoryUsage - - JDK-8230388: Problemlist additional compiler/rtm tests - - JDK-8233228: Disable weak named curves by default in TLS, CertPath, and Signed JAR - - JDK-8234727: sun/security/ssl/X509TrustManagerImpl tests support TLSv1.3 - - JDK-8234728: Some security tests should support TLSv1.3 - - JDK-8235263: Revert TLS 1.3 change that wrapped IOExceptions - - JDK-8235311: Tag mismatch may alert bad_record_mac - - JDK-8235874: The ordering of Cipher Suites is not maintained provided through jdk.tls.client.cipherSuites and jdk.tls.server.cipherSuites system property. - - JDK-8236500: Windows ucrt.dll should be looked up in versioned WINSDK subdirectory - - JDK-8238579: HttpsURLConnection drops the timeout and hangs forever in read - - JDK-8239091: Reversed arguments in call to strstr in freetype "debug" code. - - JDK-8240353: AArch64: missing support for -XX:+ExtendedDTraceProbes in C1 - - JDK-8240827: Downport SSLSocketImpl.java from "8221882: Use fiber-friendly java.util.concurrent.locks in JSSE" - - JDK-8242141: New System Properties to configure the TLS signature schemes - - JDK-8244621: [macos10.15] Garbled FX printing plus CoreText warnings on Catalina when building with Xcode 11 - - JDK-8248336: AArch64: C2: offset overflow in BoxLockNode::emit - - JDK-8249183: JVM crash in "AwtFrame::WmSize" method - - JDK-8249251: [dark_mode ubuntu 20.04] The selected menu is not highlighted in GTKLookAndFeel - - JDK-8249588: libwindowsaccessbridge issues on 64bit Windows - - JDK-8250582: Revert Principal Name type to NT-UNKNOWN when requesting TGS Kerberos tickets - - JDK-8250984: Memory Docker tests fail on some Linux kernels w/o cgroupv1 swap limit capabilities - - JDK-8251397: NPE on ClassValue.ClassValueMap.cacheArray - - JDK-8252470: java/awt/dnd/DisposeFrameOnDragCrash/DisposeFrameOnDragTest.java fails on Windows - - JDK-8253368: TLS connection always receives close_notify exception - - JDK-8253476: TestUseContainerSupport.java fails on some Linux kernels w/o swap limit capabilities - - JDK-8253932: SSL debug log prints incorrect caller info - - JDK-8254854: [cgroups v1] Metric limits not properly detected on some join controller combinations - - JDK-8255880: UI of Swing components is not redrawn after their internal state changed - - JDK-8255908: ExceptionInInitializerError due to UncheckedIOException while initializing cgroupv1 subsystem - - JDK-8255937: Better cleanup for test/jdk/javax/imageio/stream/StreamFlush.java - - JDK-8256421: Add 2 HARICA roots to cacerts truststore - - JDK-8256642: [TEST_BUG] jdk/test/javax/sound/midi/MidiSystem/DefaultProperties.java failed - - JDK-8258079: Eliminate ParNew's use of klass_or_null() - - JDK-8256682: JDK-8202343 is incomplete - - JDK-8257746: Regression introduced with JDK-8250984 - memory might be null in some machines - - JDK-8258241: [8u] Missing doPrivileged() hunks from JDK-8226575 - - JDK-8258247: Couple of issues in fix for JDK-8249906 - - JDK-8258396: SIGILL in jdk.jfr.internal.PlatformRecorder.rotateDisk() - - JDK-8258430: 8u backport of JDK-8063107 missing test/javax/swing/JRadioButton/8041561/bug8041561.java changes - - JDK-8258833: Cancel multi-part cipher operations in SunPKCS11 after failures - - JDK-8258933: G1 needs klass_or_null_acquire - - JDK-8259048: (tz) Upgrade time-zone data to tzdata2020f - - JDK-8259312: VerifyCACerts.java fails as soneraclass2ca cert will - - JDK-8259384: CUP version wrong in THIRD_PARTY_README after JDK-8233548 - - JDK-8259428: AlgorithmId.getEncodedParams() should return copy - - JDK-8259568: PPC64 builds broken after JDK-8221408 8u backport - - JDK-8260349: Cannot programmatically retrieve Metaspace max set via JAVA_TOOL_OPTIONS - - JDK-8260356: (tz) Upgrade time-zone data to tzdata2021a - - JDK-8260930: AARCH64: Invalid value passed to critical JNI function - - JDK-8261183: Follow on to Make lists of normal filenames - - JDK-8261231: Windows IME was disabled after DnD operation - - JDK-8261766: [8u] hotspot needs to recognise cl.exe 19.16 to build with VS2017 - - JDK-8262073: assert(allocates2(pc)) failed: not in CodeBuffer memory - - JDK-8262075: sun/security/krb5/auto/UseCacheAndStoreKey.java timed out intermittently - - JDK-8263008: AARCH64: Add debug info for libsaproc.so - - JDK-8264171: Missing aarch64 parts of JDK-8236179 (C1 register allocation failure with T_ADDRESS) -* Shenandoah - - Normalise whitespace in AArch64 sources prior to merge of upstreamed version in 8u292-b01. - - Revert differences against upstream 8u - - [backport] 8202976: Add C1 lea patching support for x86 - - [backport] 8221507: Implement JFR Events for Shenandoah - - [backport] 8224573: Fix windows build after JDK-8221507 - - [backport] 8228369: Shenandoah: Refactor LRB C1 stubs - - [backport] 8229474: Shenandoah: Cleanup CM::update_roots() - - [backport] 8229709: x86_32 build and test failures after JDK-8228369 (Shenandoah: Refactor LRB C1 stubs) - - [backport] 8231087: Shenandoah: Self-fixing load reference barriers for C1/C2 - - [backport] 8232747: Shenandoah: Concurrent GC should deactivate SATB before processing weak roots - - [backport] 8232992: Shenandoah: Implement self-fixing interpreter LRB - - [backport] 8233021: Shenandoah: SBSC2::is_shenandoah_lrb_call should match all LRB shapes - - [backport] 8233165: Shenandoah:SBSA::gen_load_reference_barrier_stub() should use pointer register for address on aarch64 - - [backport] 8233574: Shenandoah: build is broken without jfr - - [backport] 8237837: Shenandoah: assert(mem == __null) failed: only one safepoint - - [backport] 8238153: CTW: C2 (Shenandoah) compilation fails with "Unknown node in get_load_addr: CreateEx" - - [backport] 8238851: Shenandoah: C1: Resolve into registers of correct type - - [backport] 8240315: Shenandoah: Rename ShLBN::get_barrier_strength() - - [backport] 8240751: Shenandoah: fold ShenandoahTracer definition - - [backport] 8241765: Shenandoah: AARCH64 need to save/restore call clobbered registers before calling keepalive barrier - - [backport] 8244510: Shenandoah: invert SHC2Support::is_in_cset condition - - [backport] 8244663: Shenandoah: C2 assertion fails in Matcher::collect_null_checks - - [backport] 8244721: CTW: C2 (Shenandoah) compilation fails with "unexpected infinite loop graph shape" - - [backport] 8251451: Shenandoah: Remark ObjectSynchronizer roots with I-U - - [backport] 8252660: Shenandoah: support manageable SoftMaxHeapSize option - - [backport] 8253224: Shenandoah: ShenandoahStrDedupQueue destructor calls virtual num_queues() - - [backport] 8253778: ShenandoahSafepoint::is_at_shenandoah_safepoint should not access VMThread state from other threads - - [backport] 8255457: Shenandoah: cleanup ShenandoahMarkTask - - [backport] 8255760: Shenandoah: match constants style in ShenandoahMarkTask fallback - - [backport] 8256806: Shenandoah: optimize shenandoah/jni/TestPinnedGarbage.java test - - [backport] 8257641: Shenandoah: Query is_at_shenandoah_safepoint() from control thread should return false - - Fix register allocation for thread register is 32bit LRB - - Fix Shenandoah bindings in ADLC formssel - - Shenandoah: Backed out weak roots cleaning during full gc - -Notes on individual issues: -=========================== - -security-libs/java.security: - -JDK-8260597: Added 2 HARICA Root CA Certificates -================================================ - -The following root certificates have been added to the cacerts truststore: - -Alias Name: haricarootca2015 -Distinguished Name: CN=Hellenic Academic and Research Institutions RootCA 2015, O=Hellenic Academic and Research Institutions Cert. Authority, L=Athens, C=GR - -Alias Name: haricaeccrootca2015 -Distinguished Name: CN=Hellenic Academic and Research Institutions ECC RootCA 2015, O=Hellenic Academic and Research Institutions Cert. Authority, L=Athens, C=GR - -JDK-8236730: Weak Named Curves in TLS, CertPath, and Signed JAR Disabled by Default -=================================================================================== -Weak named curves are disabled by default by adding them to the -following `disabledAlgorithms` security properties: - -* jdk.tls.disabledAlgorithms -* jdk.certpath.disabledAlgorithms -* jdk.jar.disabledAlgorithms - -Red Hat has always disabled many of the curves provided by upstream, -so the only addition in this release is: - -* secp256k1 - -The curves that remain enabled are: - -* secp256r1 -* secp384r1 -* secp521r1 -* X25519 -* X448 - -When large numbers of weak named curves need to be disabled, adding -individual named curves to each `disabledAlgorithms` property would be -overwhelming. To relieve this, a new security property, -`jdk.disabled.namedCurves`, is implemented that can list the named -curves common to all of the `disabledAlgorithms` properties. To use -the new property in the `disabledAlgorithms` properties, precede the -full property name with the keyword `include`. Users can still add -individual named curves to `disabledAlgorithms` properties separate -from this new property. No other properties can be included in the -`disabledAlgorithms` properties. - -To restore the named curves, remove the `include -jdk.disabled.namedCurves` either from specific or from all -`disabledAlgorithms` security properties. To restore one or more -curves, remove the specific named curve(s) from the -`jdk.disabled.namedCurves` property. - -JDK-8244286: Tools Warn If Weak Algorithms Are Used -=================================================== -The `keytool` and `jarsigner` tools have been updated to warn users -when weak cryptographic algorithms are used in keys, certificates, and -signed JARs before they are disabled. The weak algorithms are set in -the `jdk.security.legacyAlgorithms` security property in the -`java.security` configuration file. In this release, the tools issue -warnings for the SHA-1 hash algorithm and 1024-bit RSA/DSA keys. - -security-libs/javax.net.ssl: - -JDK-8256490: Disable TLS 1.0 and 1.1 -==================================== -TLS 1.0 and 1.1 are versions of the TLS protocol that are no longer -considered secure and have been superseded by more secure and modern -versions (TLS 1.2 and 1.3). - -These versions have now been disabled by default. If you encounter -issues, you can, at your own risk, re-enable the versions by removing -"TLSv1" and/or "TLSv1.1" from the `jdk.tls.disabledAlgorithms` -security property in the `java.security` configuration file. - -JDK-8242147: New System Properties to Configure the TLS Signature Schemes -========================================================================= -Two new system properties have been added to customize the TLS -signature schemes in JDK. `jdk.tls.client.SignatureSchemes` has been -added for the TLS client side, and `jdk.tls.server.SignatureSchemes` -has been added for the server side. - -Each system property contains a comma-separated list of supported -signature scheme names specifying the signature schemes that could be -used for the TLS connections. - -The names are described in the "Signature Schemes" section of the -*Java Security Standard Algorithm Names Specification*. - -tools/javac: - -JDK-8177368: Several incorporation steps are silently failing when an error should be reported -============================================================================================== -Reporting previously silent errors found during incorporation, JLS -8§18.3, was supposed to be a clean-up with performance only -implications. But consider the test case: - -import java.util.Arrays; -import java.util.List; - -class Klass { - public static List> foo(List... lists) { - return foo(Arrays.asList(lists)); - } - - public static List> foo(List> lists) { - return null; - } -} - -This code was not accepted before the patch for [1], but after this -patch the compiler is accepting it. Accepting this code is the right -behavior as not reporting incorporation errors was a bug in the -compiler. While determining the applicability of method: -List> foo(List> lists) for which -we have the constraints: b <: Object t <: List t<:Object -List <: t first, inference variable b is selected for -instantiation: b = CAP1 of ? extends A so this implies that: t <: -List t<: Object List <: t - -Now all the bounds are checked for consistency. While checking if -List is a subtype of List -a bound error is reported. Before the compiler was just swallowing -it. As now the error is reported while inference variable b is being -instantiated, the bound set is rolled back to it's initial state, 'b' -is instantiated to Object, and with this instantiation the constraint -set is solvable, the method is applicable, it's the only applicable -one and the code is accepted as correct. The compiler behavior in this -case is defined at JLS 8 §18.4 - -This fix has source compatibility impact, right now code that wasn't -being accepted is now being accepted by the javac compiler. Currently -there are no reports of any other kind of incompatibility. - -[1] https://bugs.openjdk.java.net/browse/JDK-8078024 - -New in release OpenJDK 8u282 (2021-01-19): -=========================================== -Live versions of these release notes can be found at: - * https://bitly.com/openjdk8u282 - * https://builds.shipilev.net/backports-monitor/release-notes-openjdk8u282.txt - -* Security fixes - - JDK-8247619: Improve Direct Buffering of Characters -* Other changes - - JDK-6962725: Regtest javax/swing/JFileChooser/6738668/bug6738668.java fails under Linux - - JDK-8008657: JSpinner setComponentOrientation doesn't affect on text orientation - - JDK-8022535: [TEST BUG] javax/swing/text/html/parser/Test8017492.java fails - - JDK-8025936: Windows .pdb and .map files does not have proper dependencies setup - - JDK-8030350: Enable additional compiler warnings for GCC - - JDK-8031423: Test java/awt/dnd/DisposeFrameOnDragCrash/DisposeFrameOnDragTest.java fails by Timeout on Windows - - JDK-8036122: Fix warning 'format not a string literal' - - JDK-8039279: Move awt tests to openjdk repository - - JDK-8041592: [TEST_BUG] Move 42 AWT hw/lw mixing tests to jdk - - JDK-8043126: move awt automated functional tests from AWT_Events/Lw and AWT_Events/AWT to OpenJDK repository - - JDK-8043131: Move ShapedAndTranslucentWindows and GC functional AWT tests to regression tree - - JDK-8043899: compiler/5091921/Test7005594.java fails if specified -Xmx is less than 1600m - - JDK-8044157: [TEST_BUG] Improve recently submitted AWT_Mixing tests - - JDK-8044172: [TEST_BUG] Move regtests for 4523758 and AltPlusNumberKeyCombinationsTest to jdk - - JDK-8044429: move awt automated tests for AWT_Modality to OpenJDK repository - - JDK-8044765: Move functional tests AWT_SystemTray/Automated to openjdk repository - - JDK-8046221: [TEST_BUG] Cleanup datatransfer tests - - JDK-8047180: Move functional tests AWT_Headless/Automated to OpenJDK repository - - JDK-8047367: move awt automated tests from AWT_Modality to OpenJDK repository - part 2 - - JDK-8048246: Move AWT_DnD/Clipboard/Automated functional tests to OpenJDK - - JDK-8049617: move awt automated tests from AWT_Modality to OpenJDK repository - part 3 - - JDK-8049694: Migrate functional AWT_DesktopProperties/Automated tests to OpenJDK - - JDK-8050885: move awt automated tests from AWT_Modality to OpenJDK repository - part 4 - - JDK-8051440: move tests about maximizing undecorated to OpenJDK - - JDK-8051853: new URI("x/").resolve("..").getSchemeSpecificPart() returns null! - - JDK-8052012: move awt automated tests from AWT_Modality to OpenJDK repository - part 5 - - JDK-8052408: Move AWT_BAT functional tests to OpenJDK (3 of 3) - - JDK-8053657: [TEST_BUG] move some 5 tests related to undecorated Frame/JFrame to JDK - - JDK-8054143: move awt automated tests from AWT_Modality to OpenJDK repository - part 6 - - JDK-8054358: move awt automated tests from AWT_Modality to OpenJDK repository - part 7 - - JDK-8054359: move awt automated tests from AWT_Modality to OpenJDK repository - part 8 - - JDK-8055360: Move the rest part of AWT ShapedAndTranslucent tests to OpenJDK - - JDK-8055664: move 14 tests about setLocationRelativeTo to jdk - - JDK-8055836: move awt tests from AWT_Modality to OpenJDK repository - part 9 - - JDK-8057694: move awt tests from AWT_Modality to OpenJDK repository - part 10 - - JDK-8058805: [TEST_BUG]Test java/awt/TrayIcon/SecurityCheck/NoPermissionTest/NoPermissionTest.java fails - - JDK-8062808: Turn on the -Wreturn-type warning - - JDK-8063102: Change open awt regression tests to avoid sun.awt.SunToolkit.realSync, part 1 - - JDK-8063104: Change open awt regression tests to avoid sun.awt.SunToolkit.realSync, part 2 - - JDK-8063106: Change open swing regression tests to avoid sun.awt.SunToolkit.realSync, part 1 - - JDK-8063107: Change open swing regression tests to avoid sun.awt.SunToolkit.realSync, part 2 - - JDK-8064573: [TEST_BUG] javax/swing/text/AbstractDocument/6968363/Test6968363.java is asocial pressing VK_LEFT and not releasing - - JDK-8064575: [TEST_BUG] javax/swing/JEditorPane/6917744/bug6917744.java 100 times press keys and never releases - - JDK-8064809: [TEST_BUG] javax/swing/JComboBox/4199622/bug4199622.java contains a lot of keyPress and not a single keyRelease - - JDK-8067441: Some tests fails with error: cannot find symbol getSystemMnemonicKeyCodes() - - JDK-8068228: Test closed/java/awt/Mouse/MaximizedFrameTest/MaximizedFrameTest fails with GTKLookAndFeel - - JDK-8068275: Some tests failed after JDK-8063104 - - JDK-8069211: (zipfs) ZipFileSystem creates corrupted zip if entry output stream gets closed more than once - - JDK-8074807: Fix some tests unnecessary using internal API - - JDK-8076315: move 4 manual functional swing tests to regression suite - - JDK-8130772: Util.hitMnemonics does not work: getSystemMnemonicKeyCodes() returns ALT_MASK rather than VK_ALT - - JDK-8132664: closed/javax/swing/DataTransfer/DefaultNoDrop/DefaultNoDrop.java locks on Windows - - JDK-8134632: Mark javax/sound/midi/Devices/InitializationHang.java as headful - - JDK-8148854: Class names "SomeClass" and "LSomeClass;" treated by JVM as an equivalent - - JDK-8148916: Mark bug6400879.java as intermittently failing - - JDK-8148983: Fix extra comma in changes for JDK-8148916 - - JDK-8152545: Use preprocessor instead of compiling a program to generate native nio constants - - JDK-8156803: Turn StressLCM/StressGCM flags to diagnostic - - JDK-8160438: javax/swing/plaf/nimbus/8057791/bug8057791.java fails - - JDK-8160761: [TESTBUG] Several compiler tests fail with product bits - - JDK-8163161: [PIT][TEST_BUG] increase timeout in javax/swing/plaf/nimbus/8057791/bug8057791.java - - JDK-8165808: Add release barriers when allocating objects with concurrent collection - - JDK-8166015: [PIT][TEST_BUG] stray character in java/awt/Focus/ModalDialogActivationTest/ModalDialogActivationTest.java - - JDK-8166583: Add oopDesc::klass_or_null_acquire() - - JDK-8166663: Simplify oops_on_card_seq_iterate_careful - - JDK-8166862: CMS needs klass_or_null_acquire - - JDK-8168292: [TESTBUG] [macosx] Test java/awt/TrayIcon/DragEventSource/DragEventSource.java fails on OS X - - JDK-8168682: jdk/test/java/lang/ClassLoader/forNameLeak/ClassForNameLeak.java fails with -Xcomp - - JDK-8179083: Uninitialized notifier in Java Monitor Wait tracing event - - JDK-8185003: JMX: Add a version of ThreadMXBean.dumpAllThreads with a maxDepth argument - - JDK-8197981: Missing return statement in __sync_val_compare_and_swap_8 - - JDK-8202076: test/jdk/java/io/File/WinSpecialFiles.java on windows with VS2017 - - JDK-8205507: jdk/javax/xml/crypto/dsig/GenerationTests.java timed out - - JDK-8207766: [testbug] Adapt tests for Aix. - - JDK-8212070: Introduce diagnostic flag to abort VM on failed JIT compilation - - JDK-8213448: [TESTBUG] enhance jfr/jvm/TestDumpOnCrash - - JDK-8215727: Restore JFR thread sampler loop to old / previous behavior - - JDK-8217362: Emergency dump does not work when disk=false is set - - JDK-8217766: Container Support doesn't work for some Join Controllers combinations - - JDK-8219013: Update Apache Santuario (XML Signature) to version 2.1.3 - - JDK-8219562: Line of code in osContainer_linux.cpp L102 appears unreachable - - JDK-8220579: [Containers] SubSystem.java out of sync with osContainer_linux.cpp - - JDK-8220657: JFR.dump does not work when filename is set - - JDK-8221340: [TESTBUG] TestCgroupMetrics.java fails after fix for JDK-8219562 - - JDK-8221342: [TESTBUG] Generate Dockerfile for docker testing - - JDK-8221710: [TESTBUG] more configurable parameters for docker testing - - JDK-8223108: Test java/awt/EventQueue/NonComponentSourcePost.java is unstable - - JDK-8224502: [TESTBUG] JDK docker test TestSystemMetrics.java fails with access issues and OOM - - JDK-8225072: Add LuxTrust certificate that is expiring in March 2021 to list of allowed but expired certs - - JDK-8227006: [linux] Runtime.availableProcessors execution time increased by factor of 100 - - JDK-8229868: Update Apache Santuario TPRM version - - JDK-8231209: [REDO] ThreadMXBean::getThreadAllocatedBytes() can be quicker for self thread - - JDK-8231968: getCurrentThreadAllocatedBytes default implementation s/b getThreadAllocatedBytes - - JDK-8232114: JVM crashed at imjpapi.dll in native code - - JDK-8233548: Update CUP to v0.11b - - JDK-8234270: [REDO] JDK-8204128 NMT might report incorrect numbers for Compiler area - - JDK-8234339: replace JLI_StrTok in java_md_solinux.c - - JDK-8238448: RSASSA-PSS signature verification fail when using certain odd key sizes - - JDK-8239105: Add exception for expiring Digicert root certificates to VerifyCACerts test - - JDK-8242335: Additional Tests for RSASSA-PSS - - JDK-8242480: Negative value may be returned by getFreeSwapSpaceSize() in the docker - - JDK-8244225: stringop-overflow warning on strncpy call from compile_the_world_in - - JDK-8245400: Upgrade to LittleCMS 2.11 - - JDK-8246648: issue with OperatingSystemImpl getFreeSwapSpaceSize in docker after 8242480 - - JDK-8248214: Add paddings for TaskQueueSuper to reduce false-sharing cache contention - - JDK-8249176: Update GlobalSignR6CA test certificates - - JDK-8249846: Change of behavior after JDK-8237117: Better ForkJoinPool behavior - - JDK-8250636: iso8601_time returns incorrect offset part on MacOS - - JDK-8250665: Wrong translation for the month name of May in ar_JO,LB,SY - - JDK-8250928: JFR: Improve hash algorithm for stack traces - - JDK-8251365: Build failure on AIX after 8250636 - - JDK-8251469: Better cleanup for test/jdk/javax/imageio/SetOutput.java - - JDK-8251840: Java_sun_awt_X11_XToolkit_getDefaultScreenData should not be in make/mapfiles/libawt_xawt/mapfile-vers - - JDK-8252384: [TESTBUG] Some tests refer to COMPAT provider rather than JRE - - JDK-8252395: [8u] --with-native-debug-symbols=external doesn't include debuginfo files for binaries - - JDK-8252497: Incorrect numeric currency code for ROL - - JDK-8252754: Hash code calculation of JfrStackTrace is inconsistent - - JDK-8252904: VM crashes when JFR is used and JFR event class is transformed - - JDK-8252975: [8u] JDK-8252395 breaks the build for --with-native-debug-symbols=internal - - JDK-8253036: Support building the Zero assembler port on AArch64 - - JDK-8253284: Zero OrderAccess barrier mappings are incorrect - - JDK-8253550: [8u] JDK-8252395 breaks the build for make STRIP_POLICY=no_strip - - JDK-8253752: test/sun/management/jmxremote/bootstrap/RmiBootstrapTest.java fails randomly - - JDK-8253837: JFR 8u fix symbol and cstring hashtable equals implementaion - - JDK-8254081: java/security/cert/PolicyNode/GetPolicyQualifiers.java fails due to an expired certificate - - JDK-8254144: Non-x86 Zero builds fail with return-type warning in os_linux_zero.cpp - - JDK-8254166: Zero: return-type warning in zeroInterpreter_zero.cpp - - JDK-8254683: [TEST_BUG] jdk/test/sun/tools/jconsole/WorkerDeadlockTest.java fails - - JDK-8254982: (tz) Upgrade time-zone data to tzdata2020c - - JDK-8255003: Build failures on Solaris - - JDK-8255226: (tz) Upgrade time-zone data to tzdata2020d - - JDK-8255269: Unsigned overflow in g1Policy.cpp - - JDK-8255603: Memory/Performance regression after JDK-8210985 - - JDK-8255717: Fix JFR crash in WriteObjectSampleStacktrace due to object not initialized - - JDK-8256618: Zero: Linux x86_32 build still fails - - JDK-8256671: Incorrect assignment operator used in guarantee() in genCollectedHeap - - JDK-8256752: 8252395 incorrect copy rule for macos .dSYM folder - - JDK-8257397: [TESTBUG] test/lib/containers/docker/Common.java refers to -Xlog:os+container=trace - - JDK-8258630: Add expiry exception for QuoVadis root certificate -* AArch64 port - - Fix AArch64 build failure after JDK-8062808 backport -* Shenandoah - - Fix racy update of code roots - -Notes on individual issues: -=========================== - -security-libs/javax.xml.crypto: - -JDK-8230839: Updated XML Signature Implementation to Apache Santuario 2.1.3 -=========================================================================== -The XML Signature implementation in the `java.xml.crypto` module has -been updated to version 2.1.3 of Apache Santuario. New features -include: - -* Added support for embedding elliptic curve public keys in the - KeyValue element - -New in release OpenJDK 8u275 (2020-11-05): -=========================================== -Live versions of these release notes can be found at: - * https://bitly.com/openjdk8u275 - * https://builds.shipilev.net/backports-monitor/release-notes-openjdk8u275.txt - -* Regression fixes - - JDK-8214440: ldap over a TLS connection negotiate failed with "javax.net.ssl.SSLPeerUnverifiedException: hostname of the server '' does not match the hostname in the server's certificate" - - JDK-8223940: Private key not supported by chosen signature algorithm - - JDK-8236512: PKCS11 Connection closed after Cipher.doFinal and NoPadding - - JDK-8250861: Crash in MinINode::Ideal(PhaseGVN*, bool) - -New in release OpenJDK 8u272 (2020-10-20): -=========================================== -Live versions of these release notes can be found at: - * https://bitly.com/openjdk8u272 - * https://builds.shipilev.net/backports-monitor/release-notes-openjdk8u272.txt - -* New features - - JDK-8245468: Add TLSv1.3 implementation classes from 11.0.7 -* Security fixes - - JDK-8233624: Enhance JNI linkage - - JDK-8236196: Improve string pooling - - JDK-8236862, CVE-2020-14779: Enhance support of Proxy class - - JDK-8237990, CVE-2020-14781: Enhanced LDAP contexts - - JDK-8237995, CVE-2020-14782: Enhance certificate processing - - JDK-8240124: Better VM Interning - - JDK-8241114, CVE-2020-14792: Better range handling - - JDK-8242680, CVE-2020-14796: Improved URI Support - - JDK-8242685, CVE-2020-14797: Better Path Validation - - JDK-8242695, CVE-2020-14798: Enhanced buffer support - - JDK-8243302: Advanced class supports - - JDK-8244136, CVE-2020-14803: Improved Buffer supports - - JDK-8244479: Further constrain certificates - - JDK-8244955: Additional Fix for JDK-8240124 - - JDK-8245407: Enhance zoning of times - - JDK-8245412: Better class definitions - - JDK-8245417: Improve certificate chain handling - - JDK-8248574: Improve jpeg processing - - JDK-8249927: Specify limits of jdk.serialProxyInterfaceLimit - - JDK-8253019: Enhanced JPEG decoding -* Other changes - - JDK-6574989: TEST_BUG: javax/sound/sampled/Clip/bug5070081.java fails sometimes - - JDK-8006205: [TESTBUG] NEED_TEST: please JTREGIFY test/compiler/7177917/Test7177917.java - - JDK-8023697: failed class resolution reports different class name in detail message for the first and subsequent times - - JDK-8025886: replace [[ and == bash extensions in regtest - - JDK-8026236: Add PrimeTest for BigInteger - - JDK-8031625: javadoc problems referencing inner class constructors - - JDK-8035493: JVMTI PopFrame capability must instruct compilers not to prune locals - - JDK-8036088: Replace strtok() with its safe equivalent strtok_s() in DefaultProxySelector.c - - JDK-8039082: [TEST_BUG] Test java/awt/dnd/BadSerializationTest/BadSerializationTest.java fails - - JDK-8046274: Removing dependency on jakarta-regexp - - JDK-8048933: -XX:+TraceExceptions output should include the message - - JDK-8057003: Large reference arrays cause extremely long synchronization times - - JDK-8060721: Test runtime/SharedArchiveFile/LimitSharedSizes.java fails in jdk 9 fcs new platforms/compiler - - JDK-8061616: HotspotDiagnosticMXBean.getVMOption() throws IllegalArgumentException for flags of type double - - JDK-8062947: Fix exception message to correctly represent LDAP connection failure - - JDK-8064319: Need to enable -XX:+TraceExceptions in release builds - - JDK-8075774: Small readability and performance improvements for zipfs - - JDK-8076151: [TESTBUG] Test java/awt/FontClass/CreateFont/fileaccess/FontFile.java fails - - JDK-8078334: Mark regression tests using randomness - - JDK-8078880: Mark a few more intermittently failuring security-libs - - JDK-8080462: Update SunPKCS11 provider with PKCS11 v2.40 support - - JDK-8132206: move ScanTest.java into OpenJDK - - JDK-8132376: Add @requires os.family to the client tests with access to internal OS-specific API - - JDK-8132745: minor cleanup of java/util/Scanner/ScanTest.java - - JDK-8137087: [TEST_BUG] Cygwin failure of java/awt/appletviewer/IOExceptionIfEncodedURLTest/IOExceptionIfEncodedURLTest.sh - - JDK-8144539: Update PKCS11 tests to run with security manager - - JDK-8145808: java/awt/Graphics2D/MTGraphicsAccessTest/MTGraphicsAccessTest.java hangs on Win. 8 - - JDK-8148754: C2 loop unrolling fails due to unexpected graph shape - - JDK-8148854: Class names "SomeClass" and "LSomeClass;" treated by JVM as an equivalent - - JDK-8151678: com/sun/jndi/ldap/LdapTimeoutTest.java failed due to timeout on DeadServerNoTimeoutTest is incorrect - - JDK-8151788: NullPointerException from ntlm.Client.type3 - - JDK-8151834: Test SmallPrimeExponentP.java times out intermittently - - JDK-8152077: (cal) Calendar.roll does not always roll the hours during daylight savings - - JDK-8153430: jdk regression test MletParserLocaleTest, ParserInfiniteLoopTest reduce default timeout - - JDK-8153583: Make OutputAnalyzer.reportDiagnosticSummary public - - JDK-8154313: Generated javadoc scattered all over the place - - JDK-8156169: Some sound tests rarely hangs because of incorrect synchronization - - JDK-8160768: Add capability to custom resolve host/domain names within the default JNDI LDAP provider - - JDK-8161973: PKIXRevocationChecker.getSoftFailExceptions() not working - - JDK-8163251: Hard coded loop limit prevents reading of smart card data greater than 8k - - JDK-8165936: Potential Heap buffer overflow when seaching timezone info files - - JDK-8165996: PKCS11 using NSS throws an error regarding secmod.db when NSS uses sqlite - - JDK-8166148: Fix for JDK-8165936 broke solaris builds - - JDK-8167300: Scheduling failures during gcm should be fatal - - JDK-8167615: Opensource unit/regression tests for JavaSound - - JDK-8168517: java/lang/ProcessBuilder/Basic.java failed - - JDK-8169925: PKCS #11 Cryptographic Token Interface license - - JDK-8172012: [TEST_BUG] delays needed in javax/swing/JTree/4633594/bug4633594.java - - JDK-8173300: [TESTBUG]compiler/tiered/NonTieredLevelsTest.java fails with compiler.whitebox.SimpleTestCaseHelper(int) must be compiled - - JDK-8177334: Update xmldsig implementation to Apache Santuario 2.1.1 - - JDK-8177628: Opensource unit/regression tests for ImageIO - - JDK-8183341: Better cleanup for javax/imageio/AllowSearch.java - - JDK-8183349: Better cleanup for jdk/test/javax/imageio/plugins/shared/CanWriteSequence.java and WriteAfterAbort.java - - JDK-8183351: Better cleanup for jdk/test/javax/imageio/spi/AppletContextTest/BadPluginConfigurationTest.sh - - JDK-8184762: ZapStackSegments should use optimized memset - - JDK-8191678: [TESTBUG] Add keyword headful in java/awt FocusTransitionTest test. - - JDK-8192953: sun/management/jmxremote/bootstrap/*.sh tests fail with error : revokeall.exe: Permission denied - - JDK-8193137: Nashorn crashes when given an empty script file - - JDK-8193234: When using -Xcheck:jni an internally allocated buffer can leak - - JDK-8194298: Add support for per Socket configuration of TCP keepalive - - JDK-8198004: javax/swing/JFileChooser/6868611/bug6868611.java throws error - - JDK-8200313: java/awt/Gtk/GtkVersionTest/GtkVersionTest.java fails - - JDK-8201633: Problems with AES-GCM native acceleration - - JDK-8203357: Container Metrics - - JDK-8209113: Use WeakReference for lastFontStrike for created Fonts - - JDK-8210147: adjust some WSAGetLastError usages in windows network coding - - JDK-8211049: Second parameter of "initialize" method is not used - - JDK-8211163: UNIX version of Java_java_io_Console_echo does not return a clean boolean - - JDK-8211714: Need to update vm_version.cpp to recognise VS2017 minor versions - - JDK-8214862: assert(proj != __null) at compile.cpp:3251 - - JDK-8216283: Allow shorter method sampling interval than 10 ms - - JDK-8217606: LdapContext#reconnect always opens a new connection - - JDK-8217647: JFR: recordings on 32-bit systems unreadable - - JDK-8217878: ENVELOPING XML signature no longer works in JDK 11 - - JDK-8218629: XML Digital Signature throws NAMESPACE_ERR exception on OpenJDK 11, works 8/9/10 - - JDK-8219566: JFR did not collect call stacks when MaxJavaStackTraceDepth is set to zero - - JDK-8219919: RuntimeStub name lost with PrintFrameConverterAssembly - - JDK-8220165: Encryption using GCM results in RuntimeException- input length out of bound - - JDK-8220313: [TESTBUG] Update base image for Docker testing to OL 7.6 - - JDK-8220555: JFR tool shows potentially misleading message when it cannot access a file - - JDK-8220674: [TESTBUG] MetricsMemoryTester failcount test in docker container only works with debug JVMs - - JDK-8221569: JFR tool produces incorrect output when both --categories and --events are specified - - JDK-8222079: Don't use memset to initialize fields decode_env constructor in disassembler.cpp - - JDK-8224217: RecordingInfo should use textual representation of path - - JDK-8225695: 32-bit build failures after JDK-8080462 (Update SunPKCS11 provider with PKCS11 v2.40 support) - - JDK-8226575: OperatingSystemMXBean should be made container aware - - JDK-8226697: Several tests which need the @key headful keyword are missing it. - - JDK-8226809: Circular reference in printed stack trace is not correctly indented & ambiguous - - JDK-8228835: Memory leak in PKCS11 provider when using AES GCM - - JDK-8229378: jdwp library loader in linker_md.c quietly truncates on buffer overflow - - JDK-8230303: JDB hangs when running monitor command - - JDK-8230711: ConnectionGraph::unique_java_object(Node* N) return NULL if n is not in the CG - - JDK-8231213: Migrate SimpleDateFormatConstTest to JDK Repo - - JDK-8231779: crash HeapWord*ParallelScavengeHeap::failed_mem_allocate - - JDK-8233097: Fontmetrics for large Fonts has zero width - - JDK-8233621: Mismatch in jsse.enableMFLNExtension property name - - JDK-8234617: C1: Incorrect result of field load due to missing narrowing conversion - - JDK-8235243: handle VS2017 15.9 and VS2019 in abstract_vm_version - - JDK-8235325: build failure on Linux after 8235243 - - JDK-8235687: Contents/MacOS/libjli.dylib cannot be a symlink - - JDK-8236645: JDK 8u231 introduces a regression with incompatible handling of XML messages - - JDK-8237951: CTW: C2 compilation fails with "malformed control flow" - - JDK-8238225: Issues reported after replacing symlink at Contents/MacOS/libjli.dylib with binary - - JDK-8238380: java.base/unix/native/libjava/childproc.c "multiple definition" link errors with GCC10 - - JDK-8238386: (sctp) jdk.sctp/unix/native/libsctp/SctpNet.c "multiple definition" link errors with GCC10 - - JDK-8238388: libj2gss/NativeFunc.o "multiple definition" link errors with GCC10 - - JDK-8238898: Missing hash characters for header on license file - - JDK-8239385: KerberosTicket client name refers wrongly to sAMAccountName in AD - - JDK-8239819: XToolkit: Misread of screen information memory - - JDK-8240295: hs_err elapsed time in seconds is not accurate enough - - JDK-8240676: Meet not symmetric failure when running lucene on jdk8 - - JDK-8241888: Mirror jdk.security.allowNonCaAnchor system property with a security one - - JDK-8242498: Invalid "sun.awt.TimedWindowEvent" object leads to JVM crash - - JDK-8242556: Cannot load RSASSA-PSS public key with non-null params from byte array - - JDK-8243138: Enhance BaseLdapServer to support starttls extended request - - JDK-8243320: Add SSL root certificates to Oracle Root CA program - - JDK-8243321: Add Entrust root CA - G4 to Oracle Root CA program - - JDK-8243489: Thread CPU Load event may contain wrong data for CPU time under certain conditions - - JDK-8244151: Update MUSCLE PC/SC-Lite headers to the latest release 1.8.26 - - JDK-8244818: Java2D Queue Flusher crash while moving application window to external monitor - - JDK-8245467: Remove 8u TLSv1.2 implementation files - - JDK-8245469: Remove DTLS protocol implementation - - JDK-8245470: Fix JDK8 compatibility issues - - JDK-8245471: Revert JDK-8148188 - - JDK-8245472: Backport JDK-8038893 to JDK8 - - JDK-8245473: OCSP stapling support - - JDK-8245474: Add TLS_KRB5 cipher suites support according to RFC-2712 - - JDK-8245476: Disable TLSv1.3 protocol in the ClientHello message by default - - JDK-8245477: Adjust TLS tests location - - JDK-8245653: Remove 8u TLS tests - - JDK-8245681: Add TLSv1.3 regression test from 11.0.7 - - JDK-8246193: Possible NPE in ENC-PA-REP search in AS-REQ - - JDK-8246310: Clean commented-out code about ModuleEntry andPackageEntry in JFR - - JDK-8246384: Enable JFR by default on supported architectures for October 2020 release - - JDK-8248643: Remove extra leading space in JDK-8240295 8u backport - - JDK-8248851: CMS: Missing memory fences between free chunk check and klass read - - JDK-8249158: THREAD_START and THREAD_END event posted in primordial phase - - JDK-8249610: Make sun.security.krb5.Config.getBooleanObject(String... keys) method public - - JDK-8249677: Regression in 8u after JDK-8237117: Better ForkJoinPool behavior - - JDK-8250546: Expect changed behaviour reported in JDK-8249846 - - JDK-8250627: Use -XX:+/-UseContainerSupport for enabling/disabling Java container metrics - - JDK-8250755: Better cleanup for jdk/test/javax/imageio/plugins/shared/CanWriteSequence.java - - JDK-8250875: Incorrect parameter type for update_number in JDK_Version::jdk_update - - JDK-8251117: Cannot check P11Key size in P11Cipher and P11AEADCipher - - JDK-8251120: [8u] HotSpot build assumes ENABLE_JFR is set to either true or false - - JDK-8251341: Minimal Java specification change - - JDK-8251478: Backport TLSv1.3 regression tests to JDK8u - - JDK-8251546: 8u backport of JDK-8194298 breaks AIX and Solaris builds - - JDK-8252084: Minimal VM fails to bootcycle: undefined symbol: AgeTableTracer::is_tenuring_distribution_event_enabled - - JDK-8252573: 8u: Windows build failed after 8222079 backport - - JDK-8252886: [TESTBUG] sun/security/ec/TestEC.java : Compilation failed - - JDK-8254673: Call to JvmtiExport::post_vm_start() was removed by the fix for JDK-8249158 - - JDK-8254937: Revert JDK-8148854 for 8u272 - -Notes on individual issues: -=========================== - -core-svc/java.lang.management: - -JDK-8236876: OperatingSystemMXBean Methods Inside a Container Return Container Specific Data -============================================================================================ -When executing in a container, or other virtualized operating -environment, the following `OperatingSystemMXBean` methods in this -release return container specific information, if -available. Otherwise, they return host specific data: - -* getFreePhysicalMemorySize() -* getTotalPhysicalMemorySize() -* getFreeSwapSpaceSize() -* getTotalSwapSpaceSize() -* getSystemCpuLoad() - -security-libs/java.security: - -JDK-8250756: Added Entrust Root Certification Authority - G4 certificate -======================================================================== -The Entrust root certificate has been added to the cacerts truststore: - -Alias Name: entrustrootcag4 -Distinguished Name: CN=Entrust Root Certification Authority - G4, OU="(c) 2015 Entrust, Inc. - for authorized use only", OU=See www.entrust.net/legal-terms, O="Entrust, Inc.", C=US - -JDK-8250860: Added 3 SSL Corporation Root CA Certificates -========================================================= -The following root certificates have been added to the cacerts truststore for the SSL Corporation: - -Alias Name: sslrootrsaca -Distinguished Name: CN=SSL.com Root Certification Authority RSA, O=SSL Corporation, L=Houston, ST=Texas, C=US - -Alias Name: sslrootevrsaca -Distinguished Name: CN=SSL.com EV Root Certification Authority RSA R2, O=SSL Corporation, L=Houston, ST=Texas, C=US - -Alias Name: sslrooteccca -Distinguished Name: CN=SSL.com Root Certification Authority ECC, O=SSL Corporation, L=Houston, ST=Texas, C=US - -security-libs/javax.crypto:pkcs11: - -JDK-8221441: SunPKCS11 Provider Upgraded with Support for PKCS#11 v2.40 -======================================================================= -The SunPKCS11 provider has been updated with support for PKCS#11 -v2.40. This version adds support for more algorithms such as the -AES/GCM/NoPadding cipher, DSA signatures using SHA-2 family of message -digests, and RSASSA-PSS signatures when the corresponding PKCS11 -mechanisms are supported by the underlying PKCS11 library. - -security-libs/javax.security: - -JDK-8242059: Support for canonicalize in krb5.conf -================================================== -The 'canonicalize' flag in the [krb5.conf file][0] is now supported by -the JDK Kerberos implementation. When set to *true*, RFC 6806 [1] name -canonicalization is requested by clients in TGT requests to KDC -services (AS protocol). Otherwise, and by default, it is not -requested. - -The new default behavior is different from previous releases where -name canonicalization was always requested by clients in TGT requests -to KDC services (provided that support for RFC 6806[1] was not -explicitly disabled with the *sun.security.krb5.disableReferrals* -system or security properties). - -[0]: https://web.mit.edu/kerberos/krb5-devel/doc/admin/conf_files/krb5_conf.html -[1]: https://tools.ietf.org/html/rfc6806 - -security-libs/javax.xml.crypto: - -JDK-8202891: Updated xmldsig Implementation to Apache Santuario 2.1.1 -===================================================================== -The XMLDSig provider implementation in the `java.xml.crypto` module has been updated to version 2.1.1 of Apache Santuario. - -New features include: - -1. Support for the SHA-224 and SHA-3 DigestMethod algorithms specified -in RFC 6931. -2. Support for the HMAC-SHA224, RSA-SHA224, ECDSA-SHA224, and -RSASSA-PSS family of SignatureMethod algorithms specified in RFC 6931. - -JDK-8238185: New OpenJDK-specific JDK 8 Updates System Property to fallback to legacy Base64 Encoding format -============================================================================================================ -The upgrade to the Apache Santuario libraries (see above) introduced -an issue where XML signature using Base64 encoding resulted in -appending ` ` or ` ` to the encoded output. This behavioural -change was made in the Apache Santuario codebase to comply with RFC -2045. The Santuario team has adopted a position of keeping their -libraries compliant with RFC 2045. - -Earlier versions of OpenJDK 8 using the legacy encoder returns encoded -data in a format without ` ` or ` `. - -Therefore a new system property, specific to the 8 update stream, -`com.sun.org.apache.xml.internal.security.lineFeedOnly` is made -available to fall back to the legacy Base64 encoded format. - -Users can set this flag in one of two ways: - -1. -Dcom.sun.org.apache.xml.internal.security.lineFeedOnly=true - -2. System.setProperty("com.sun.org.apache.xml.internal.security.lineFeedOnly", "true") - -This new system property is disabled by default. It has no effect on -default behaviour nor when -`com.sun.org.apache.xml.internal.security.ignoreLineBreaks` property -is set. - -Later JDK family versions will only support the recommended property: - -`com.sun.org.apache.xml.internal.security.ignoreLineBreaks` - -JDK-8254177: US/Pacific-New Zone name removed as part of tzdata2020b -==================================================================== -Following JDK's update to tzdata2020b, the long-obsolete files -pacificnew and systemv have been removed. As a result, the -"US/Pacific-New" zone name declared in the pacificnew data file is no -longer available for use. - -Information regarding the update can be viewed at -https://mm.icann.org/pipermail/tz-announce/2020-October/000059.html - -New in release OpenJDK 8u265 (2020-07-27): -=========================================== -Live versions of these release notes can be found at: - * https://bitly.com/openjdk8u265 - * https://builds.shipilev.net/backports-monitor/release-notes-openjdk8u265.txt - -* Bug fixes - - JDK-8249677: Regression in 8u after JDK-8237117: Better ForkJoinPool behavior - - JDK-8250546: Expect changed behaviour reported in JDK-8249846 - -New in release OpenJDK 8u262 (2020-07-14): -=========================================== -Live versions of these release notes can be found at: - * https://bitly.com/oj8u262 - * https://builds.shipilev.net/backports-monitor/release-notes-openjdk8u262.txt - -* New features - - JDK-8223147: JFR Backport -* Security fixes - - JDK-8028431, CVE-2020-14579: NullPointerException in DerValue.equals(DerValue) - - JDK-8028591, CVE-2020-14578: NegativeArraySizeException in sun.security.util.DerInputStream.getUnalignedBitString() - - JDK-8230613: Better ASCII conversions - - JDK-8231800: Better listing of arrays - - JDK-8232014: Expand DTD support - - JDK-8233255: Better Swing Buttons - - JDK-8234032: Improve basic calendar services - - JDK-8234042: Better factory production of certificates - - JDK-8234418: Better parsing with CertificateFactory - - JDK-8234836: Improve serialization handling - - JDK-8236191: Enhance OID processing - - JDK-8237117, CVE-2020-14556: Better ForkJoinPool behavior - - JDK-8237592, CVE-2020-14577: Enhance certificate verification - - JDK-8238002, CVE-2020-14581: Better matrix operations - - JDK-8238804: Enhance key handling process - - JDK-8238842: AIOOBE in GIFImageReader.initializeStringTable - - JDK-8238843: Enhanced font handing - - JDK-8238920, CVE-2020-14583: Better Buffer support - - JDK-8238925: Enhance WAV file playback - - JDK-8240119, CVE-2020-14593: Less Affine Transformations - - JDK-8240482: Improved WAV file playback - - JDK-8241379: Update JCEKS support - - JDK-8241522: Manifest improved jar headers redux - - JDK-8242136, CVE-2020-14621: Better XML namespace handling -* Other changes - - JDK-4949105: Access Bridge lacks html tags parsing - - JDK-7147060: com/sun/org/apache/xml/internal/security/transforms/ClassLoaderTest.java doesn't run in agentvm mode - - JDK-8003209: JFR events for network utilization - - JDK-8030680: 292 cleanup from default method code assessment - - JDK-8035633: TEST_BUG: java/net/NetworkInterface/Equals.java and some tests failed on windows intermittently - - JDK-8037866: Replace the Fun class in tests with lambdas - - JDK-8041626: Shutdown tracing event - - JDK-8041915: Move 8 awt tests to OpenJDK regression tests tree - - JDK-8067796: (process) Process.waitFor(timeout, unit) doesn't throw NPE if timeout is less than, or equal to zero when unit == null - - JDK-8076475: Misuses of strncpy/strncat - - JDK-8130737: AffineTransformOp can't handle child raster with non-zero x-offset - - JDK-8141056: Erroneous assignment in HeapRegionSet.cpp - - JDK-8146612: C2: Precedence edges specification violated - - JDK-8148886: SEGV in sun.java2d.marlin.Renderer._endRendering - - JDK-8149338: JVM Crash caused by Marlin renderer not handling NaN coordinates - - JDK-8150986: serviceability/sa/jmap-hprof/JMapHProfLargeHeapTest.java failing because expects HPROF JAVA PROFILE 1.0.1 file format - - JDK-8151582: (ch) test java/nio/channels/AsyncCloseAndInterrupt.java failing due to "Connection succeeded" - - JDK-8165675: Trace event for thread park has incorrect unit for timeout - - JDK-8171934: ObjectSizeCalculator.getEffectiveMemoryLayoutSpecification() does not recognize OpenJDK's HotSpot VM - - JDK-8172559: [PIT][TEST_BUG] Move @test to be 1st annotation in java/awt/image/Raster/TestChildRasterOp.java - - JDK-8176182: 4 security tests are not run - - JDK-8178374: Problematic ByteBuffer handling in CipherSpi.bufferCrypt method - - JDK-8178910: Problemlist sample tests - - JDK-8181841: A TSA server returns timestamp with precision higher than milliseconds - - JDK-8183925: Decouple crash protection from watcher thread - - JDK-8191393: Random crashes during cfree+0x1c - - JDK-8195817: JFR.stop should require name of recording - - JDK-8195818: JFR.start should increase autogenerated name by one - - JDK-8195819: Remove recording=x from jcmd JFR.check output - - JDK-8196969: JTreg Failure: serviceability/sa/ClhsdbJstack.java causes NPE - - JDK-8199712: Flight Recorder - - JDK-8202578: Revisit location for class unload events - - JDK-8202835: jfr/event/os/TestSystemProcess.java fails on missing events - - JDK-8203287: Zero fails to build after JDK-8199712 (Flight Recorder) - - JDK-8203346: JFR: Inconsistent signature of jfr_add_string_constant - - JDK-8203664: JFR start failure after AppCDS archive created with JFR StartFlightRecording - - JDK-8203921: JFR thread sampling is missing fixes from JDK-8194552 - - JDK-8203929: Limit amount of data for JFR.dump - - JDK-8205516: JFR tool - - JDK-8207392: [PPC64] Implement JFR profiling - - JDK-8207829: FlightRecorderMXBeanImpl is leaking the first classloader which calls it - - JDK-8209960: -Xlog:jfr* doesn't work with the JFR - - JDK-8210024: JFR calls virtual is_Java_thread from ~Thread() - - JDK-8210776: Upgrade X Window System 6.8.2 to the latest XWD 1.0.7 - - JDK-8211239: Build fails without JFR: empty JFR events signatures mismatch - - JDK-8212232: Wrong metadata for the configuration of the cutoff for old object sample events - - JDK-8213015: Inconsistent settings between JFR.configure and -XX:FlightRecorderOptions - - JDK-8213421: Line number information for execution samples always 0 - - JDK-8213617: JFR should record the PID of the recorded process - - JDK-8213734: SAXParser.parse(File, ..) does not close resources when Exception occurs. - - JDK-8213914: [TESTBUG] Several JFR VM events are not covered by tests - - JDK-8213917: [TESTBUG] Shutdown JFR event is not covered by test - - JDK-8213966: The ZGC JFR events should be marked as experimental - - JDK-8214542: JFR: Old Object Sample event slow on a deep heap in debug builds - - JDK-8214750: Unnecessary

tags in jfr classes - - JDK-8214896: JFR Tool left files behind - - JDK-8214906: [TESTBUG] jfr/event/sampling/TestNative.java fails with UnsatisfiedLinkError - - JDK-8214925: JFR tool fails to execute - - JDK-8215175: Inconsistencies in JFR event metadata - - JDK-8215237: jdk.jfr.Recording javadoc does not compile - - JDK-8215284: Reduce noise induced by periodic task getFileSize() - - JDK-8215355: Object monitor deadlock with no threads holding the monitor (using jemalloc 5.1) - - JDK-8215362: JFR GTest JfrTestNetworkUtilization fails - - JDK-8215771: The jfr tool should pretty print reference chains - - JDK-8216064: -XX:StartFlightRecording:settings= doesn't work properly - - JDK-8216486: Possibility of integer overflow in JfrThreadSampler::run() - - JDK-8216528: test/jdk/java/rmi/transport/runtimeThreadInheritanceLeak/RuntimeThreadInheritanceLeak.java failing with Xcomp - - JDK-8216559: [JFR] Native libraries not correctly parsed from /proc/self/maps - - JDK-8216578: Remove unused/obsolete method in JFR code - - JDK-8216995: Clean up JFR command line processing - - JDK-8217744: [TESTBUG] JFR TestShutdownEvent fails on some systems due to process surviving SIGINT - - JDK-8217748: [TESTBUG] Exclude TestSig test case from JFR TestShutdownEvent - - JDK-8218935: Make jfr strncpy uses GCC 8.x friendly - - JDK-8220293: Deadlock in JFR string pool - - JDK-8223689: Add JFR Thread Sampling Support - - JDK-8223690: Add JFR BiasedLock Event Support - - JDK-8223691: Add JFR G1 Region Type Change Event Support - - JDK-8223692: Add JFR G1 Heap Summary Event Support - - JDK-8224172: assert(jfr_is_event_enabled(id)) failed: invariant - - JDK-8224475: JTextPane does not show images in HTML rendering - - JDK-8225068: Remove DocuSign root certificate that is expiring in May 2020 - - JDK-8225069: Remove Comodo root certificate that is expiring in May 2020 - - JDK-8226253: JAWS reports wrong number of radio buttons when buttons are hidden. - - JDK-8226779: [TESTBUG] Test JFR API from Java agent - - JDK-8226892: ActionListeners on JRadioButtons don't get notified when selection is changed with arrow keys - - JDK-8227011: Starting a JFR recording in response to JVMTI VMInit and / or Java agent premain corrupts memory - - JDK-8227269: Slow class loading when running with JDWP - - JDK-8227605: Kitchensink fails "assert((((klass)->trace_id() & (JfrTraceIdEpoch::leakp_in_use_this_epoch_bit())) != 0)) failed: invariant" - - JDK-8229366: JFR backport allows unchecked writing to memory - - JDK-8229401: Fix JFR code cache test failures - - JDK-8229708: JFR backport code does not initialize - - JDK-8229873: 8229401 broke jdk8u-jfr-incubator - - JDK-8229888: (zipfs) Updating an existing zip file does not preserve original permissions - - JDK-8229899: Make java.io.File.isInvalid() less racy - - JDK-8230448: [test] JFRSecurityTestSuite.java is failing on Windows - - JDK-8230597: Update GIFlib library to the 5.2.1 - - JDK-8230707: JFR related tests are failing - - JDK-8230769: BufImg_SetupICM add ReleasePrimitiveArrayCritical call in early return - - JDK-8230782: Robot.createScreenCapture() fails if ?awt.robot.gtk? is set to false - - JDK-8230856: Java_java_net_NetworkInterface_getByName0 on unix misses ReleaseStringUTFChars in early return - - JDK-8230926: [macosx] Two apostrophes are entered instead of one with "U.S. International - PC" layout - - JDK-8230947: TestLookForUntestedEvents.java is failing after JDK-8230707 - - JDK-8231995: two jtreg tests failed after 8229366 is fixed - - JDK-8233197: Invert JvmtiExport::post_vm_initialized() and Jfr:on_vm_start() start-up order for correct option parsing - - JDK-8233623: Add classpath exception to copyright in EventHandlerProxyCreator.java file - - JDK-8233880: Support compilers with multi-digit major version numbers - - JDK-8236002: CSR for JFR backport suggests not leaving out the package-info - - JDK-8236008: Some backup files were accidentally left in the hotspot tree - - JDK-8236074: Missed package-info - - JDK-8236174: Should update javadoc since tags - - JDK-8236996: Incorrect Roboto font rendering on Windows with subpixel antialiasing - - JDK-8238076: Fix OpenJDK 7 Bootstrap Broken by JFR Backport - - JDK-8238452: Keytool generates wrong expiration date if validity is set to 2050/01/01 - - JDK-8238555: Allow Initialization of SunPKCS11 with NSS when there are external FIPS modules in the NSSDB - - JDK-8238589: Necessary code cleanup in JFR for JDK8u - - JDK-8238590: Enable JFR by default during compilation in 8u - - JDK-8239055: Wrong implementation of VMState.hasListener - - JDK-8239476: JDK-8238589 broke windows build by moving OrderedPair - - JDK-8239479: minimal1 and zero builds are failing - - JDK-8239852: java/util/concurrent tests fail with -XX:+VerifyGraphEdges: assert(!VerifyGraphEdges) failed: verification should have failed - - JDK-8239867: correct over use of INCLUDE_JFR macro - - JDK-8240375: Disable JFR by default for July 2020 release - - JDK-8240576: JVM crashes after transformation in C2 IdealLoopTree::merge_many_backedges - - JDK-8241444: Metaspace::_class_vsm not initialized if compressed class pointers are disabled - - JDK-8241638: launcher time metrics always report 1 on Linux when _JAVA_LAUNCHER_DEBUG set - - JDK-8241750: x86_32 build failure after JDK-8227269 - - JDK-8241902: AIX Build broken after integration of JDK-8223147 (JFR Backport) - - JDK-8242788: Non-PCH build is broken after JDK-8191393 - - JDK-8242883: Incomplete backport of JDK-8078268: backport test part - - JDK-8243059: Build fails when --with-vendor-name contains a comma - - JDK-8243474: [TESTBUG] removed three tests of 0 bytes - - JDK-8243539: Copyright info (Year) should be updated for fix of 8241638 - - JDK-8243541: (tz) Upgrade time-zone data to tzdata2020a - - JDK-8244407: JVM crashes after transformation in C2 IdealLoopTree::split_fall_in - - JDK-8244461: [JDK 8u] Build fails with glibc 2.32 - - JDK-8244548: JDK 8u: sun.misc.Version.jdkUpdateVersion() returns wrong result - - JDK-8244777: ClassLoaderStats VM Op uses constant hash value - - JDK-8244843: JapanEraNameCompatTest fails - - JDK-8245167: Top package in method profiling shows null in JMC - - JDK-8246223: Windows build fails after JDK-8227269 - - JDK-8246703: [TESTBUG] Add test for JDK-8233197 - - JDK-8248399: Build installs jfr binary when JFR is disabled - - JDK-8248715: New JavaTimeSupplementary localisation for 'in' installed in wrong package - -Notes on individual issues: -=========================== - -hotspot/jfr: - -JDK-8240687: JDK Flight Recorder Integrated to OpenJDK 8u -========================================================= - -OpenJDK 8u now contains the backport of JEP 328: Flight Recorder -(https://openjdk.java.net/jeps/328) from later versions of OpenJDK. - -JFR is a low-overhead framework to collect and provide data helpful to -troubleshoot the performance of the OpenJDK runtime and of Java -applications. It consists of a new API to define custom events under -the jdk.jfr namespace and a JMX interface to interact with the -framework. The recording can also be initiated with the application -startup using the -XX:+FlightRecorder flag or via jcmd. JFR replaces -the +XX:EnableTracing feature introduced in JEP 167, providing a more -efficient way to retrieve the same information. For compatibility -reasons, +XX:EnableTracing is still accepted, however no data will be -printed. - -While JFR is not built by default upstream, it is included in Red Hat -binaries for supported architectures (x86_64, AArch64 & PowerPC 64) - -hotspot/runtime: - -JDK-8205622: JFR Start Failure After AppCDS Archive Created with JFR StartFlightRecording -========================================================================================= - -JFR will be disabled with a warning message if it is enabled during -CDS dumping. The user will see the following warning message: - -OpenJDK 64-Bit Server VM warning: JFR will be disabled during CDS dumping - -if JFR is enabled during CDS dumping such as in the following command -line: - -$ java -Xshare:dump -XX:StartFlightRecording=dumponexit=true - -security-libs/java.security: - -JDK-8244167: Removal of Comodo Root CA Certificate -================================================== - -The following expired Comodo root CA certificate was removed from the -`cacerts` keystore: + alias name "addtrustclass1ca [jdk]" - -Distinguished Name: CN=AddTrust Class 1 CA Root, OU=AddTrust TTP Network, O=AddTrust AB, C=SE - -JDK-8244166: Removal of DocuSign Root CA Certificate -==================================================== - -The following expired DocuSign root CA certificate was removed from - the `cacerts` keystore: + alias name "keynectisrootca [jdk]" - -Distinguished Name: CN=KEYNECTIS ROOT CA, OU=ROOT, O=KEYNECTIS, C=FR - -security-libs/javax.crypto:pkcs11: - -JDK-8240191: Allow SunPKCS11 initialization with NSS when external FIPS modules are present in the Security Modules Database -============================================================================================================================ - -The SunPKCS11 security provider can now be initialized with NSS when -FIPS-enabled external modules are configured in the Security Modules -Database (NSSDB). Prior to this change, the SunPKCS11 provider would -throw a RuntimeException with the message: "FIPS flag set for -non-internal module" when such a library was configured for NSS in -non-FIPS mode. - -This change allows the JDK to work properly with recent NSS releases -on GNU/Linux operating systems when the system-wide FIPS policy is -turned on. - -Further information can be found in JDK-8238555. - -New in release OpenJDK 8u252 (2020-04-14): -=========================================== -Live versions of these release notes can be found at: - * https://bitly.com/oj8u252 - * https://builds.shipilev.net/backports-monitor/release-notes-openjdk8u252.txt - -* Security fixes - - JDK-8223898, CVE-2020-2754: Forward references to Nashorn - - JDK-8223904, CVE-2020-2755: Improve Nashorn matching - - JDK-8224541, CVE-2020-2756: Better mapping of serial ENUMs - - JDK-8224549, CVE-2020-2757: Less Blocking Array Queues - - JDK-8225603: Enhancement for big integers - - JDK-8227542: Manifest improved jar headers - - JDK-8231415, CVE-2020-2773: Better signatures in XML - - JDK-8233250: Better X11 rendering - - JDK-8233410: Better Build Scripting - - JDK-8234027: Better JCEKS key support - - JDK-8234408, CVE-2020-2781: Improve TLS session handling - - JDK-8234825, CVE-2020-2800: Better Headings for HTTP Servers - - JDK-8234841, CVE-2020-2803: Enhance buffering of byte buffers - - JDK-8235274, CVE-2020-2805: Enhance typing of methods - - JDK-8236201, CVE-2020-2830: Better Scanner conversions - - JDK-8238960: linux-i586 builds are inconsistent as the newly build jdk is not able to reserve enough space for object heap -* Other changes - - JDK-8005819: Support cross-realm MSSFU - - JDK-8022263: use same Clang warnings on BSD as on Linux - - JDK-8038631: Create wrapper for awt.Robot with additional functionality - - JDK-8047212: runtime/ParallelClassLoading/bootstrap/random/inner-complex assert(ObjectSynchronizer::verify_objmon_isinpool(inf)) failed: monitor is invalid - - JDK-8055283: Expand ResourceHashtable with C_HEAP allocation, removal and some unit tests - - JDK-8068184: Fix for JDK-8032832 caused a deadlock - - JDK-8079693: Add support for ECDSA P-384 and P-521 curves to XML Signature - - JDK-8132130: some docs cleanup - - JDK-8135318: CMS wrong max_eden_size for check_gc_overhead_limit - - JDK-8144445: Maximum size checking in Marlin ArrayCache utility methods is not optimal - - JDK-8144446: Automate the Marlin crash test - - JDK-8144526: Remove Marlin logging use of deleted internal API - - JDK-8144630: Use PrivilegedAction to create Thread in Marlin RendererStats - - JDK-8144654: Improve Marlin logging - - JDK-8144718: Pisces / Marlin Strokers may generate invalid curves with huge coordinates and round joins - - JDK-8166976: TestCipherPBECons has wrong @run line - - JDK-8167409: Invalid value passed to critical JNI function - - JDK-8181872: C1: possible overflow when strength reducing integer multiply by constant - - JDK-8187078: -XX:+VerifyOops finds numerous problems when running JPRT - - JDK-8191227: issues with unsafe handle resolution - - JDK-8197441: Signature#initSign/initVerify for an invalid private/public key fails with ClassCastException for SunPKCS11 provider - - JDK-8204152: SignedObject throws NullPointerException for null keys with an initialized Signature object - - JDK-8215756: Memory leaks in the AWT on macOS - - JDK-8216472: (se) Stack overflow during selection operation leads to crash (win) - - JDK-8219244: NMT: Change ThreadSafepointState's allocation type from mtInternal to mtThread - - JDK-8219597: (bf) Heap buffer state changes could provoke unexpected exceptions - - JDK-8225128: Add exception for expiring DocuSign root to VerifyCACerts test - - JDK-8225130: Add exception for expiring Comodo roots to VerifyCACerts test - - JDK-8229022: BufferedReader performance can be improved by using StringBuilder - - JDK-8229345: Memory leak due to vtable stubs not being shared on SPARC - - JDK-8229872: (fs) Increase buffer size used with getmntent - - JDK-8230235: Rendering HTML with empty img attribute and documentBaseKey cause Exception - - JDK-8231430: C2: Memory stomp in max_array_length() for T_ILLEGAL type - - JDK-8235744: PIT: test/jdk/javax/swing/text/html/TestJLabelWithHTMLText.java times out in linux-x64 - - JDK-8235904: Infinite loop when rendering huge lines - - JDK-8236179: C1 register allocation error with T_ADDRESS - - JDK-8237368: Problem with NullPointerException in RMI TCPEndpoint.read - - JDK-8240521: Revert backport of 8231584: Deadlock with ClassLoader.findLibrary and System.loadLibrary call - - JDK-8241296: Segfault in JNIHandleBlock::oops_do() - - JDK-8241307: Marlin renderer should not be the default in 8u252 - -Notes on individual issues: -=========================== - -hotspot/svc: - -JDK-8174881: Binary format for HPROF updated -============================================ - -When dumping the heap in binary format, HPROF format 1.0.2 is always -used now. Previously, format 1.0.1 was used for heaps smaller than -2GB. HPROF format 1.0.2 is also used by jhsdb jmap for the -serviceability agent. - -security-libs/java.security: - -JDK-8229518: Added Support for PKCS#1 v2.2 Algorithms Including RSASSA-PSS Signature -==================================================================================== - -The SunRsaSign and SunJCE providers have been enhanced with support -for more algorithms defined in PKCS#1 v2.2, such as RSASSA-PSS -signature and OAEP using FIPS 180-4 digest algorithms. New -constructors and methods have been added to relevant JCA/JCE classes -under the `java.security.spec` and `javax.crypto.spec` packages for -supporting additional RSASSA-PSS parameters. - -security-libs/javax.crypto: - -JDK-8205471: RSASSA-PSS Signature Support Added to SunMSCAPI -============================================================ - -The RSASSA-PSS signature algorithm support has been added to the SunMSCAPI provider. - -security-libs/javax.security: - -JDK-8227564: Allow SASL Mechanisms to Be Restricted -=================================================== - -A security property named `jdk.sasl.disabledMechanisms` has been added -that can be used to disable SASL mechanisms. Any disabled mechanism -will be ignored if it is specified in the `mechanisms` argument of -`Sasl.createSaslClient` or the `mechanism` argument of -`Sasl.createSaslServer`. The default value for this security property -is empty, which means that no mechanisms are disabled out-of-the-box. diff --git a/TestCryptoLevel.java b/TestCryptoLevel.java deleted file mode 100644 index b32b7aef7da5d2347ec3b7379434b6570d803b26..0000000000000000000000000000000000000000 --- a/TestCryptoLevel.java +++ /dev/null @@ -1,72 +0,0 @@ -/* TestCryptoLevel -- Ensure unlimited crypto policy is in use. - Copyright (C) 2012 Red Hat, Inc. - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU Affero General Public License as -published by the Free Software Foundation, either version 3 of the -License, or (at your option) any later version. - -This program 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 Affero General Public License for more details. - -You should have received a copy of the GNU Affero General Public License -along with this program. If not, see . -*/ - -import java.lang.reflect.Field; -import java.lang.reflect.Method; -import java.lang.reflect.InvocationTargetException; - -import java.security.Permission; -import java.security.PermissionCollection; - -public class TestCryptoLevel -{ - public static void main(String[] args) - throws NoSuchFieldException, ClassNotFoundException, - IllegalAccessException, InvocationTargetException - { - Class cls = null; - Method def = null, exempt = null; - - try - { - cls = Class.forName("javax.crypto.JceSecurity"); - } - catch (ClassNotFoundException ex) - { - System.err.println("Running a non-Sun JDK."); - System.exit(0); - } - try - { - def = cls.getDeclaredMethod("getDefaultPolicy"); - exempt = cls.getDeclaredMethod("getExemptPolicy"); - } - catch (NoSuchMethodException ex) - { - System.err.println("Running IcedTea with the original crypto patch."); - System.exit(0); - } - def.setAccessible(true); - exempt.setAccessible(true); - PermissionCollection defPerms = (PermissionCollection) def.invoke(null); - PermissionCollection exemptPerms = (PermissionCollection) exempt.invoke(null); - Class apCls = Class.forName("javax.crypto.CryptoAllPermission"); - Field apField = apCls.getDeclaredField("INSTANCE"); - apField.setAccessible(true); - Permission allPerms = (Permission) apField.get(null); - if (defPerms.implies(allPerms) && (exemptPerms == null || exemptPerms.implies(allPerms))) - { - System.err.println("Running with the unlimited policy."); - System.exit(0); - } - else - { - System.err.println("WARNING: Running with a restricted crypto policy."); - System.exit(-1); - } - } -} diff --git a/TestECDSA.java b/TestECDSA.java deleted file mode 100644 index 6eb9cb211ff59b7ff60167a2a2171e6a8b0e760d..0000000000000000000000000000000000000000 --- a/TestECDSA.java +++ /dev/null @@ -1,49 +0,0 @@ -/* TestECDSA -- Ensure ECDSA signatures are working. - Copyright (C) 2016 Red Hat, Inc. - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU Affero General Public License as -published by the Free Software Foundation, either version 3 of the -License, or (at your option) any later version. - -This program 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 Affero General Public License for more details. - -You should have received a copy of the GNU Affero General Public License -along with this program. If not, see . -*/ - -import java.math.BigInteger; -import java.security.KeyPair; -import java.security.KeyPairGenerator; -import java.security.Signature; - -/** - * @test - */ -public class TestECDSA { - - public static void main(String[] args) throws Exception { - KeyPairGenerator keyGen = KeyPairGenerator.getInstance("EC"); - KeyPair key = keyGen.generateKeyPair(); - - byte[] data = "This is a string to sign".getBytes("UTF-8"); - - Signature dsa = Signature.getInstance("NONEwithECDSA"); - dsa.initSign(key.getPrivate()); - dsa.update(data); - byte[] sig = dsa.sign(); - System.out.println("Signature: " + new BigInteger(1, sig).toString(16)); - - Signature dsaCheck = Signature.getInstance("NONEwithECDSA"); - dsaCheck.initVerify(key.getPublic()); - dsaCheck.update(data); - boolean success = dsaCheck.verify(sig); - if (!success) { - throw new RuntimeException("Test failed. Signature verification error"); - } - System.out.println("Test passed."); - } -} diff --git a/TestSecurityProperties.java b/TestSecurityProperties.java deleted file mode 100644 index 06a0b0769cba84cf05d349b75c649cb2830f425f..0000000000000000000000000000000000000000 --- a/TestSecurityProperties.java +++ /dev/null @@ -1,43 +0,0 @@ -import java.io.File; -import java.io.FileInputStream; -import java.security.Security; -import java.util.Properties; - -public class TestSecurityProperties { - // JDK 11 - private static final String JDK_PROPS_FILE_JDK_11 = System.getProperty("java.home") + "/conf/security/java.security"; - // JDK 8 - private static final String JDK_PROPS_FILE_JDK_8 = System.getProperty("java.home") + "/lib/security/java.security"; - - public static void main(String[] args) { - Properties jdkProps = new Properties(); - loadProperties(jdkProps); - for (Object key: jdkProps.keySet()) { - String sKey = (String)key; - String securityVal = Security.getProperty(sKey); - String jdkSecVal = jdkProps.getProperty(sKey); - if (!securityVal.equals(jdkSecVal)) { - String msg = "Expected value '" + jdkSecVal + "' for key '" + - sKey + "'" + " but got value '" + securityVal + "'"; - throw new RuntimeException("Test failed! " + msg); - } else { - System.out.println("DEBUG: " + sKey + " = " + jdkSecVal + " as expected."); - } - } - System.out.println("TestSecurityProperties PASSED!"); - } - - private static void loadProperties(Properties props) { - String javaVersion = System.getProperty("java.version"); - System.out.println("Debug: Java version is " + javaVersion); - String propsFile = JDK_PROPS_FILE_JDK_11; - if (javaVersion.startsWith("1.8.0")) { - propsFile = JDK_PROPS_FILE_JDK_8; - } - try (FileInputStream fin = new FileInputStream(new File(propsFile))) { - props.load(fin); - } catch (Exception e) { - throw new RuntimeException("Test failed!", e); - } - } -} diff --git a/config.guess b/config.guess deleted file mode 100644 index b79252d6b1034cbcce18ed21d4ed21a405f987e9..0000000000000000000000000000000000000000 --- a/config.guess +++ /dev/null @@ -1,1558 +0,0 @@ -#! /bin/sh -# Attempt to guess a canonical system name. -# Copyright 1992-2013 Free Software Foundation, Inc. - -timestamp='2013-06-10' - -# This file 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 3 of the License, or -# (at your option) any later version. -# -# This program 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 this program; if not, see . -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that -# program. This Exception is an additional permission under section 7 -# of the GNU General Public License, version 3 ("GPLv3"). -# -# Originally written by Per Bothner. -# -# You can get the latest version of this script from: -# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD -# -# Please send patches with a ChangeLog entry to config-patches@gnu.org. - - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] - -Output the configuration name of the system \`$me' is run on. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.guess ($timestamp) - -Originally written by Per Bothner. -Copyright 1992-2013 Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" >&2 - exit 1 ;; - * ) - break ;; - esac -done - -if test $# != 0; then - echo "$me: too many arguments$help" >&2 - exit 1 -fi - -trap 'exit 1' 1 2 15 - -# CC_FOR_BUILD -- compiler used by this script. Note that the use of a -# compiler to aid in system detection is discouraged as it requires -# temporary files to be created and, as you can see below, it is a -# headache to deal with in a portable fashion. - -# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still -# use `HOST_CC' if defined, but it is deprecated. - -# Portable tmp directory creation inspired by the Autoconf team. - -set_cc_for_build=' -trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; -trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; -: ${TMPDIR=/tmp} ; - { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; -dummy=$tmp/dummy ; -tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; -case $CC_FOR_BUILD,$HOST_CC,$CC in - ,,) echo "int x;" > $dummy.c ; - for c in cc gcc c89 c99 ; do - if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then - CC_FOR_BUILD="$c"; break ; - fi ; - done ; - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found ; - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac ; set_cc_for_build= ;' - -# This is needed to find uname on a Pyramid OSx when run in the BSD universe. -# (ghazi@noc.rutgers.edu 1994-08-24) -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then - PATH=$PATH:/.attbin ; export PATH -fi - -UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown -UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown -UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown -UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown - -case "${UNAME_SYSTEM}" in -Linux|GNU|GNU/*) - # If the system lacks a compiler, then just pick glibc. - # We could probably try harder. - LIBC=gnu - - eval $set_cc_for_build - cat <<-EOF > $dummy.c - #include - #if defined(__UCLIBC__) - LIBC=uclibc - #elif defined(__dietlibc__) - LIBC=dietlibc - #else - LIBC=gnu - #endif - EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` - ;; -esac - -# Note: order is significant - the case branches are not exclusive. - -case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in - *:NetBSD:*:*) - # NetBSD (nbsd) targets should (where applicable) match one or - # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, - # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently - # switched to ELF, *-*-netbsd* would select the old - # object file format. This provides both forward - # compatibility and a consistent mechanism for selecting the - # object file format. - # - # Note: NetBSD doesn't particularly care about the vendor - # portion of the name. We always set it to "unknown". - sysctl="sysctl -n hw.machine_arch" - UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ - /usr/sbin/$sysctl 2>/dev/null || echo unknown)` - case "${UNAME_MACHINE_ARCH}" in - armeb) machine=armeb-unknown ;; - arm*) machine=arm-unknown ;; - sh3el) machine=shl-unknown ;; - sh3eb) machine=sh-unknown ;; - sh5el) machine=sh5le-unknown ;; - *) machine=${UNAME_MACHINE_ARCH}-unknown ;; - esac - # The Operating System including object format, if it has switched - # to ELF recently, or will in the future. - case "${UNAME_MACHINE_ARCH}" in - arm*|i386|m68k|ns32k|sh3*|sparc|vax) - eval $set_cc_for_build - if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ELF__ - then - # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). - # Return netbsd for either. FIX? - os=netbsd - else - os=netbsdelf - fi - ;; - *) - os=netbsd - ;; - esac - # The OS release - # Debian GNU/NetBSD machines have a different userland, and - # thus, need a distinct triplet. However, they do not need - # kernel version information, so it can be replaced with a - # suitable tag, in the style of linux-gnu. - case "${UNAME_VERSION}" in - Debian*) - release='-gnu' - ;; - *) - release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` - ;; - esac - # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: - # contains redundant information, the shorter form: - # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "${machine}-${os}${release}" - exit ;; - *:Bitrig:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} - exit ;; - *:OpenBSD:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} - exit ;; - *:ekkoBSD:*:*) - echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} - exit ;; - *:SolidBSD:*:*) - echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} - exit ;; - macppc:MirBSD:*:*) - echo powerpc-unknown-mirbsd${UNAME_RELEASE} - exit ;; - *:MirBSD:*:*) - echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} - exit ;; - alpha:OSF1:*:*) - case $UNAME_RELEASE in - *4.0) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` - ;; - *5.*) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` - ;; - esac - # According to Compaq, /usr/sbin/psrinfo has been available on - # OSF/1 and Tru64 systems produced since 1995. I hope that - # covers most systems running today. This code pipes the CPU - # types through head -n 1, so we only detect the type of CPU 0. - ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` - case "$ALPHA_CPU_TYPE" in - "EV4 (21064)") - UNAME_MACHINE="alpha" ;; - "EV4.5 (21064)") - UNAME_MACHINE="alpha" ;; - "LCA4 (21066/21068)") - UNAME_MACHINE="alpha" ;; - "EV5 (21164)") - UNAME_MACHINE="alphaev5" ;; - "EV5.6 (21164A)") - UNAME_MACHINE="alphaev56" ;; - "EV5.6 (21164PC)") - UNAME_MACHINE="alphapca56" ;; - "EV5.7 (21164PC)") - UNAME_MACHINE="alphapca57" ;; - "EV6 (21264)") - UNAME_MACHINE="alphaev6" ;; - "EV6.7 (21264A)") - UNAME_MACHINE="alphaev67" ;; - "EV6.8CB (21264C)") - UNAME_MACHINE="alphaev68" ;; - "EV6.8AL (21264B)") - UNAME_MACHINE="alphaev68" ;; - "EV6.8CX (21264D)") - UNAME_MACHINE="alphaev68" ;; - "EV6.9A (21264/EV69A)") - UNAME_MACHINE="alphaev69" ;; - "EV7 (21364)") - UNAME_MACHINE="alphaev7" ;; - "EV7.9 (21364A)") - UNAME_MACHINE="alphaev79" ;; - esac - # A Pn.n version is a patched version. - # A Vn.n version is a released version. - # A Tn.n version is a released field test version. - # A Xn.n version is an unreleased experimental baselevel. - # 1.2 uses "1.2" for uname -r. - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - # Reset EXIT trap before exiting to avoid spurious non-zero exit code. - exitcode=$? - trap '' 0 - exit $exitcode ;; - Alpha\ *:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # Should we change UNAME_MACHINE based on the output of uname instead - # of the specific Alpha model? - echo alpha-pc-interix - exit ;; - 21064:Windows_NT:50:3) - echo alpha-dec-winnt3.5 - exit ;; - Amiga*:UNIX_System_V:4.0:*) - echo m68k-unknown-sysv4 - exit ;; - *:[Aa]miga[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-amigaos - exit ;; - *:[Mm]orph[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-morphos - exit ;; - *:OS/390:*:*) - echo i370-ibm-openedition - exit ;; - *:z/VM:*:*) - echo s390-ibm-zvmoe - exit ;; - *:OS400:*:*) - echo powerpc-ibm-os400 - exit ;; - arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - echo arm-acorn-riscix${UNAME_RELEASE} - exit ;; - arm*:riscos:*:*|arm*:RISCOS:*:*) - echo arm-unknown-riscos - exit ;; - SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) - echo hppa1.1-hitachi-hiuxmpp - exit ;; - Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) - # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - if test "`(/bin/universe) 2>/dev/null`" = att ; then - echo pyramid-pyramid-sysv3 - else - echo pyramid-pyramid-bsd - fi - exit ;; - NILE*:*:*:dcosx) - echo pyramid-pyramid-svr4 - exit ;; - DRS?6000:unix:4.0:6*) - echo sparc-icl-nx6 - exit ;; - DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) - case `/usr/bin/uname -p` in - sparc) echo sparc-icl-nx7; exit ;; - esac ;; - s390x:SunOS:*:*) - echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) - echo i386-pc-auroraux${UNAME_RELEASE} - exit ;; - i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) - eval $set_cc_for_build - SUN_ARCH="i386" - # If there is a compiler, see if it is configured for 64-bit objects. - # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. - # This test works for both compilers. - if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then - if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - SUN_ARCH="x86_64" - fi - fi - echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4*:SunOS:6*:*) - # According to config.sub, this is the proper way to canonicalize - # SunOS6. Hard to guess exactly what SunOS6 will be like, but - # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4*:SunOS:*:*) - case "`/usr/bin/arch -k`" in - Series*|S4*) - UNAME_RELEASE=`uname -v` - ;; - esac - # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` - exit ;; - sun3*:SunOS:*:*) - echo m68k-sun-sunos${UNAME_RELEASE} - exit ;; - sun*:*:4.2BSD:*) - UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 - case "`/bin/arch`" in - sun3) - echo m68k-sun-sunos${UNAME_RELEASE} - ;; - sun4) - echo sparc-sun-sunos${UNAME_RELEASE} - ;; - esac - exit ;; - aushp:SunOS:*:*) - echo sparc-auspex-sunos${UNAME_RELEASE} - exit ;; - # The situation for MiNT is a little confusing. The machine name - # can be virtually everything (everything which is not - # "atarist" or "atariste" at least should have a processor - # > m68000). The system name ranges from "MiNT" over "FreeMiNT" - # to the lowercase version "mint" (or "freemint"). Finally - # the system name "TOS" denotes a system which is actually not - # MiNT. But MiNT is downward compatible to TOS, so this should - # be no problem. - atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; - atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; - *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; - milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint${UNAME_RELEASE} - exit ;; - hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint${UNAME_RELEASE} - exit ;; - *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint${UNAME_RELEASE} - exit ;; - m68k:machten:*:*) - echo m68k-apple-machten${UNAME_RELEASE} - exit ;; - powerpc:machten:*:*) - echo powerpc-apple-machten${UNAME_RELEASE} - exit ;; - RISC*:Mach:*:*) - echo mips-dec-mach_bsd4.3 - exit ;; - RISC*:ULTRIX:*:*) - echo mips-dec-ultrix${UNAME_RELEASE} - exit ;; - VAX*:ULTRIX*:*:*) - echo vax-dec-ultrix${UNAME_RELEASE} - exit ;; - 2020:CLIX:*:* | 2430:CLIX:*:*) - echo clipper-intergraph-clix${UNAME_RELEASE} - exit ;; - mips:*:*:UMIPS | mips:*:*:RISCos) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c -#ifdef __cplusplus -#include /* for printf() prototype */ - int main (int argc, char *argv[]) { -#else - int main (argc, argv) int argc; char *argv[]; { -#endif - #if defined (host_mips) && defined (MIPSEB) - #if defined (SYSTYPE_SYSV) - printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_SVR4) - printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) - printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); - #endif - #endif - exit (-1); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c && - dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && - SYSTEM_NAME=`$dummy $dummyarg` && - { echo "$SYSTEM_NAME"; exit; } - echo mips-mips-riscos${UNAME_RELEASE} - exit ;; - Motorola:PowerMAX_OS:*:*) - echo powerpc-motorola-powermax - exit ;; - Motorola:*:4.3:PL8-*) - echo powerpc-harris-powermax - exit ;; - Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) - echo powerpc-harris-powermax - exit ;; - Night_Hawk:Power_UNIX:*:*) - echo powerpc-harris-powerunix - exit ;; - m88k:CX/UX:7*:*) - echo m88k-harris-cxux7 - exit ;; - m88k:*:4*:R4*) - echo m88k-motorola-sysv4 - exit ;; - m88k:*:3*:R3*) - echo m88k-motorola-sysv3 - exit ;; - AViiON:dgux:*:*) - # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] - then - if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ - [ ${TARGET_BINARY_INTERFACE}x = x ] - then - echo m88k-dg-dgux${UNAME_RELEASE} - else - echo m88k-dg-dguxbcs${UNAME_RELEASE} - fi - else - echo i586-dg-dgux${UNAME_RELEASE} - fi - exit ;; - M88*:DolphinOS:*:*) # DolphinOS (SVR3) - echo m88k-dolphin-sysv3 - exit ;; - M88*:*:R3*:*) - # Delta 88k system running SVR3 - echo m88k-motorola-sysv3 - exit ;; - XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) - echo m88k-tektronix-sysv3 - exit ;; - Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) - echo m68k-tektronix-bsd - exit ;; - *:IRIX*:*:*) - echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` - exit ;; - ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. - echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id - exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' - i*86:AIX:*:*) - echo i386-ibm-aix - exit ;; - ia64:AIX:*:*) - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} - exit ;; - *:AIX:2:3) - if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - - main() - { - if (!__power_pc()) - exit(1); - puts("powerpc-ibm-aix3.2.5"); - exit(0); - } -EOF - if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` - then - echo "$SYSTEM_NAME" - else - echo rs6000-ibm-aix3.2.5 - fi - elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then - echo rs6000-ibm-aix3.2.4 - else - echo rs6000-ibm-aix3.2 - fi - exit ;; - *:AIX:*:[4567]) - IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` - if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then - IBM_ARCH=rs6000 - else - IBM_ARCH=powerpc - fi - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${IBM_ARCH}-ibm-aix${IBM_REV} - exit ;; - *:AIX:*:*) - echo rs6000-ibm-aix - exit ;; - ibmrt:4.4BSD:*|romp-ibm:BSD:*) - echo romp-ibm-bsd4.4 - exit ;; - ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to - exit ;; # report: romp-ibm BSD 4.3 - *:BOSX:*:*) - echo rs6000-bull-bosx - exit ;; - DPX/2?00:B.O.S.:*:*) - echo m68k-bull-sysv3 - exit ;; - 9000/[34]??:4.3bsd:1.*:*) - echo m68k-hp-bsd - exit ;; - hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) - echo m68k-hp-bsd4.4 - exit ;; - 9000/[34678]??:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - case "${UNAME_MACHINE}" in - 9000/31? ) HP_ARCH=m68000 ;; - 9000/[34]?? ) HP_ARCH=m68k ;; - 9000/[678][0-9][0-9]) - if [ -x /usr/bin/getconf ]; then - sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "${sc_cpu_version}" in - 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 - 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 - 532) # CPU_PA_RISC2_0 - case "${sc_kernel_bits}" in - 32) HP_ARCH="hppa2.0n" ;; - 64) HP_ARCH="hppa2.0w" ;; - '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 - esac ;; - esac - fi - if [ "${HP_ARCH}" = "" ]; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - - #define _HPUX_SOURCE - #include - #include - - int main () - { - #if defined(_SC_KERNEL_BITS) - long bits = sysconf(_SC_KERNEL_BITS); - #endif - long cpu = sysconf (_SC_CPU_VERSION); - - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1"); break; - case CPU_PA_RISC2_0: - #if defined(_SC_KERNEL_BITS) - switch (bits) - { - case 64: puts ("hppa2.0w"); break; - case 32: puts ("hppa2.0n"); break; - default: puts ("hppa2.0"); break; - } break; - #else /* !defined(_SC_KERNEL_BITS) */ - puts ("hppa2.0"); break; - #endif - default: puts ("hppa1.0"); break; - } - exit (0); - } -EOF - (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` - test -z "$HP_ARCH" && HP_ARCH=hppa - fi ;; - esac - if [ ${HP_ARCH} = "hppa2.0w" ] - then - eval $set_cc_for_build - - # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating - # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler - # generating 64-bit code. GNU and HP use different nomenclature: - # - # $ CC_FOR_BUILD=cc ./config.guess - # => hppa2.0w-hp-hpux11.23 - # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess - # => hppa64-hp-hpux11.23 - - if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | - grep -q __LP64__ - then - HP_ARCH="hppa2.0w" - else - HP_ARCH="hppa64" - fi - fi - echo ${HP_ARCH}-hp-hpux${HPUX_REV} - exit ;; - ia64:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - echo ia64-hp-hpux${HPUX_REV} - exit ;; - 3050*:HI-UX:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - int - main () - { - long cpu = sysconf (_SC_CPU_VERSION); - /* The order matters, because CPU_IS_HP_MC68K erroneously returns - true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct - results, however. */ - if (CPU_IS_PA_RISC (cpu)) - { - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; - case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; - default: puts ("hppa-hitachi-hiuxwe2"); break; - } - } - else if (CPU_IS_HP_MC68K (cpu)) - puts ("m68k-hitachi-hiuxwe2"); - else puts ("unknown-hitachi-hiuxwe2"); - exit (0); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && - { echo "$SYSTEM_NAME"; exit; } - echo unknown-hitachi-hiuxwe2 - exit ;; - 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) - echo hppa1.1-hp-bsd - exit ;; - 9000/8??:4.3bsd:*:*) - echo hppa1.0-hp-bsd - exit ;; - *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) - echo hppa1.0-hp-mpeix - exit ;; - hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) - echo hppa1.1-hp-osf - exit ;; - hp8??:OSF1:*:*) - echo hppa1.0-hp-osf - exit ;; - i*86:OSF1:*:*) - if [ -x /usr/sbin/sysversion ] ; then - echo ${UNAME_MACHINE}-unknown-osf1mk - else - echo ${UNAME_MACHINE}-unknown-osf1 - fi - exit ;; - parisc*:Lites*:*:*) - echo hppa1.1-hp-lites - exit ;; - C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) - echo c1-convex-bsd - exit ;; - C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit ;; - C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) - echo c34-convex-bsd - exit ;; - C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) - echo c38-convex-bsd - exit ;; - C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) - echo c4-convex-bsd - exit ;; - CRAY*Y-MP:*:*:*) - echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*[A-Z]90:*:*:*) - echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ - | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ - -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ - -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*TS:*:*:*) - echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*T3E:*:*:*) - echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*SV1:*:*:*) - echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - *:UNICOS/mp:*:*) - echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) - FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` - echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; - 5000:UNIX_System_V:4.*:*) - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` - echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; - i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} - exit ;; - sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} - exit ;; - *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} - exit ;; - *:FreeBSD:*:*) - UNAME_PROCESSOR=`/usr/bin/uname -p` - case ${UNAME_PROCESSOR} in - amd64) - echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; - *) - echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; - esac - exit ;; - i*:CYGWIN*:*) - echo ${UNAME_MACHINE}-pc-cygwin - exit ;; - *:MINGW64*:*) - echo ${UNAME_MACHINE}-pc-mingw64 - exit ;; - *:MINGW*:*) - echo ${UNAME_MACHINE}-pc-mingw32 - exit ;; - i*:MSYS*:*) - echo ${UNAME_MACHINE}-pc-msys - exit ;; - i*:windows32*:*) - # uname -m includes "-pc" on this system. - echo ${UNAME_MACHINE}-mingw32 - exit ;; - i*:PW*:*) - echo ${UNAME_MACHINE}-pc-pw32 - exit ;; - *:Interix*:*) - case ${UNAME_MACHINE} in - x86) - echo i586-pc-interix${UNAME_RELEASE} - exit ;; - authenticamd | genuineintel | EM64T) - echo x86_64-unknown-interix${UNAME_RELEASE} - exit ;; - IA64) - echo ia64-unknown-interix${UNAME_RELEASE} - exit ;; - esac ;; - [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) - echo i${UNAME_MACHINE}-pc-mks - exit ;; - 8664:Windows_NT:*) - echo x86_64-pc-mks - exit ;; - i*:Windows_NT*:* | Pentium*:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we - # UNAME_MACHINE based on the output of uname instead of i386? - echo i586-pc-interix - exit ;; - i*:UWIN*:*) - echo ${UNAME_MACHINE}-pc-uwin - exit ;; - amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) - echo x86_64-unknown-cygwin - exit ;; - p*:CYGWIN*:*) - echo powerpcle-unknown-cygwin - exit ;; - prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - *:GNU:*:*) - # the GNU system - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` - exit ;; - *:GNU/*:*:*) - # other systems with GNU libc and userland - echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} - exit ;; - i*86:Minix:*:*) - echo ${UNAME_MACHINE}-pc-minix - exit ;; - aarch64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - aarch64_be:Linux:*:*) - UNAME_MACHINE=aarch64_be - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in - EV5) UNAME_MACHINE=alphaev5 ;; - EV56) UNAME_MACHINE=alphaev56 ;; - PCA56) UNAME_MACHINE=alphapca56 ;; - PCA57) UNAME_MACHINE=alphapca56 ;; - EV6) UNAME_MACHINE=alphaev6 ;; - EV67) UNAME_MACHINE=alphaev67 ;; - EV68*) UNAME_MACHINE=alphaev68 ;; - esac - objdump --private-headers /bin/sh | grep -q ld.so.1 - if test "$?" = 0 ; then LIBC="gnulibc1" ; fi - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - arc:Linux:*:* | arceb:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - arm*:Linux:*:*) - eval $set_cc_for_build - if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ARM_EABI__ - then - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - else - if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ARM_PCS_VFP - then - echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi - else - echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf - fi - fi - exit ;; - avr32*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - cris:Linux:*:*) - echo ${UNAME_MACHINE}-axis-linux-${LIBC} - exit ;; - crisv32:Linux:*:*) - echo ${UNAME_MACHINE}-axis-linux-${LIBC} - exit ;; - frv:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - hexagon:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - i*86:Linux:*:*) - echo ${UNAME_MACHINE}-pc-linux-${LIBC} - exit ;; - ia64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - m32r*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - mips:Linux:*:* | mips64:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #undef CPU - #undef ${UNAME_MACHINE} - #undef ${UNAME_MACHINE}el - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=${UNAME_MACHINE}el - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=${UNAME_MACHINE} - #else - CPU= - #endif - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } - ;; - or1k:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - or32:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - padre:Linux:*:*) - echo sparc-unknown-linux-${LIBC} - exit ;; - parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-${LIBC} - exit ;; - parisc:Linux:*:* | hppa:Linux:*:*) - # Look for CPU level - case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; - PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; - *) echo hppa-unknown-linux-${LIBC} ;; - esac - exit ;; - ppc64:Linux:*:*) - echo powerpc64-unknown-linux-${LIBC} - exit ;; - ppc:Linux:*:*) - echo powerpc-unknown-linux-${LIBC} - exit ;; - ppc64le:Linux:*:*) - echo powerpc64le-unknown-linux-${LIBC} - exit ;; - ppcle:Linux:*:*) - echo powerpcle-unknown-linux-${LIBC} - exit ;; - s390:Linux:*:* | s390x:Linux:*:*) - echo ${UNAME_MACHINE}-ibm-linux-${LIBC} - exit ;; - sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - tile*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - vax:Linux:*:*) - echo ${UNAME_MACHINE}-dec-linux-${LIBC} - exit ;; - x86_64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - xtensa*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - i*86:DYNIX/ptx:4*:*) - # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. - # earlier versions are messed up and put the nodename in both - # sysname and nodename. - echo i386-sequent-sysv4 - exit ;; - i*86:UNIX_SV:4.2MP:2.*) - # Unixware is an offshoot of SVR4, but it has its own version - # number series starting with 2... - # I am not positive that other SVR4 systems won't match this, - # I just have to hope. -- rms. - # Use sysv4.2uw... so that sysv4* matches it. - echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} - exit ;; - i*86:OS/2:*:*) - # If we were able to find `uname', then EMX Unix compatibility - # is probably installed. - echo ${UNAME_MACHINE}-pc-os2-emx - exit ;; - i*86:XTS-300:*:STOP) - echo ${UNAME_MACHINE}-unknown-stop - exit ;; - i*86:atheos:*:*) - echo ${UNAME_MACHINE}-unknown-atheos - exit ;; - i*86:syllable:*:*) - echo ${UNAME_MACHINE}-pc-syllable - exit ;; - i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) - echo i386-unknown-lynxos${UNAME_RELEASE} - exit ;; - i*86:*DOS:*:*) - echo ${UNAME_MACHINE}-pc-msdosdjgpp - exit ;; - i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) - UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` - if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} - else - echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} - fi - exit ;; - i*86:*:5:[678]*) - # UnixWare 7.x, OpenUNIX and OpenServer 6. - case `/bin/uname -X | grep "^Machine"` in - *486*) UNAME_MACHINE=i486 ;; - *Pentium) UNAME_MACHINE=i586 ;; - *Pent*|*Celeron) UNAME_MACHINE=i686 ;; - esac - echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} - exit ;; - i*86:*:3.2:*) - if test -f /usr/options/cb.name; then - UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then - UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` - (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 - (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ - && UNAME_MACHINE=i586 - (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ - && UNAME_MACHINE=i686 - (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ - && UNAME_MACHINE=i686 - echo ${UNAME_MACHINE}-pc-sco$UNAME_REL - else - echo ${UNAME_MACHINE}-pc-sysv32 - fi - exit ;; - pc:*:*:*) - # Left here for compatibility: - # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i586. - # Note: whatever this is, it MUST be the same as what config.sub - # prints for the "djgpp" host, or else GDB configury will decide that - # this is a cross-build. - echo i586-pc-msdosdjgpp - exit ;; - Intel:Mach:3*:*) - echo i386-pc-mach3 - exit ;; - paragon:*:*:*) - echo i860-intel-osf1 - exit ;; - i860:*:4.*:*) # i860-SVR4 - if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then - echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 - else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 - fi - exit ;; - mini*:CTIX:SYS*5:*) - # "miniframe" - echo m68010-convergent-sysv - exit ;; - mc68k:UNIX:SYSTEM5:3.51m) - echo m68k-convergent-sysv - exit ;; - M680?0:D-NIX:5.3:*) - echo m68k-diab-dnix - exit ;; - M68*:*:R3V[5678]*:*) - test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; - 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) - OS_REL='' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3${OS_REL}; exit; } - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; - 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4; exit; } ;; - NCR*:*:4.2:* | MPRAS*:*:4.2:*) - OS_REL='.3' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3${OS_REL}; exit; } - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } - /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; - m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos${UNAME_RELEASE} - exit ;; - mc68030:UNIX_System_V:4.*:*) - echo m68k-atari-sysv4 - exit ;; - TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos${UNAME_RELEASE} - exit ;; - rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos${UNAME_RELEASE} - exit ;; - PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) - echo powerpc-unknown-lynxos${UNAME_RELEASE} - exit ;; - SM[BE]S:UNIX_SV:*:*) - echo mips-dde-sysv${UNAME_RELEASE} - exit ;; - RM*:ReliantUNIX-*:*:*) - echo mips-sni-sysv4 - exit ;; - RM*:SINIX-*:*:*) - echo mips-sni-sysv4 - exit ;; - *:SINIX-*:*:*) - if uname -p 2>/dev/null >/dev/null ; then - UNAME_MACHINE=`(uname -p) 2>/dev/null` - echo ${UNAME_MACHINE}-sni-sysv4 - else - echo ns32k-sni-sysv - fi - exit ;; - PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort - # says - echo i586-unisys-sysv4 - exit ;; - *:UNIX_System_V:4*:FTX*) - # From Gerald Hewes . - # How about differentiating between stratus architectures? -djm - echo hppa1.1-stratus-sysv4 - exit ;; - *:*:*:FTX*) - # From seanf@swdc.stratus.com. - echo i860-stratus-sysv4 - exit ;; - i*86:VOS:*:*) - # From Paul.Green@stratus.com. - echo ${UNAME_MACHINE}-stratus-vos - exit ;; - *:VOS:*:*) - # From Paul.Green@stratus.com. - echo hppa1.1-stratus-vos - exit ;; - mc68*:A/UX:*:*) - echo m68k-apple-aux${UNAME_RELEASE} - exit ;; - news*:NEWS-OS:6*:*) - echo mips-sony-newsos6 - exit ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if [ -d /usr/nec ]; then - echo mips-nec-sysv${UNAME_RELEASE} - else - echo mips-unknown-sysv${UNAME_RELEASE} - fi - exit ;; - BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. - echo powerpc-be-beos - exit ;; - BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. - echo powerpc-apple-beos - exit ;; - BePC:BeOS:*:*) # BeOS running on Intel PC compatible. - echo i586-pc-beos - exit ;; - BePC:Haiku:*:*) # Haiku running on Intel PC compatible. - echo i586-pc-haiku - exit ;; - x86_64:Haiku:*:*) - echo x86_64-unknown-haiku - exit ;; - SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} - exit ;; - SX-5:SUPER-UX:*:*) - echo sx5-nec-superux${UNAME_RELEASE} - exit ;; - SX-6:SUPER-UX:*:*) - echo sx6-nec-superux${UNAME_RELEASE} - exit ;; - SX-7:SUPER-UX:*:*) - echo sx7-nec-superux${UNAME_RELEASE} - exit ;; - SX-8:SUPER-UX:*:*) - echo sx8-nec-superux${UNAME_RELEASE} - exit ;; - SX-8R:SUPER-UX:*:*) - echo sx8r-nec-superux${UNAME_RELEASE} - exit ;; - Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody${UNAME_RELEASE} - exit ;; - *:Rhapsody:*:*) - echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} - exit ;; - *:Darwin:*:*) - UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown - eval $set_cc_for_build - if test "$UNAME_PROCESSOR" = unknown ; then - UNAME_PROCESSOR=powerpc - fi - if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then - if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - case $UNAME_PROCESSOR in - i386) UNAME_PROCESSOR=x86_64 ;; - powerpc) UNAME_PROCESSOR=powerpc64 ;; - esac - fi - fi - echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} - exit ;; - *:procnto*:*:* | *:QNX:[0123456789]*:*) - UNAME_PROCESSOR=`uname -p` - if test "$UNAME_PROCESSOR" = "x86"; then - UNAME_PROCESSOR=i386 - UNAME_MACHINE=pc - fi - echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} - exit ;; - *:QNX:*:4*) - echo i386-pc-qnx - exit ;; - NEO-?:NONSTOP_KERNEL:*:*) - echo neo-tandem-nsk${UNAME_RELEASE} - exit ;; - NSE-*:NONSTOP_KERNEL:*:*) - echo nse-tandem-nsk${UNAME_RELEASE} - exit ;; - NSR-?:NONSTOP_KERNEL:*:*) - echo nsr-tandem-nsk${UNAME_RELEASE} - exit ;; - *:NonStop-UX:*:*) - echo mips-compaq-nonstopux - exit ;; - BS2000:POSIX*:*:*) - echo bs2000-siemens-sysv - exit ;; - DS/*:UNIX_System_V:*:*) - echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} - exit ;; - *:Plan9:*:*) - # "uname -m" is not consistent, so use $cputype instead. 386 - # is converted to i386 for consistency with other x86 - # operating systems. - if test "$cputype" = "386"; then - UNAME_MACHINE=i386 - else - UNAME_MACHINE="$cputype" - fi - echo ${UNAME_MACHINE}-unknown-plan9 - exit ;; - *:TOPS-10:*:*) - echo pdp10-unknown-tops10 - exit ;; - *:TENEX:*:*) - echo pdp10-unknown-tenex - exit ;; - KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) - echo pdp10-dec-tops20 - exit ;; - XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) - echo pdp10-xkl-tops20 - exit ;; - *:TOPS-20:*:*) - echo pdp10-unknown-tops20 - exit ;; - *:ITS:*:*) - echo pdp10-unknown-its - exit ;; - SEI:*:*:SEIUX) - echo mips-sei-seiux${UNAME_RELEASE} - exit ;; - *:DragonFly:*:*) - echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` - exit ;; - *:*VMS:*:*) - UNAME_MACHINE=`(uname -p) 2>/dev/null` - case "${UNAME_MACHINE}" in - A*) echo alpha-dec-vms ; exit ;; - I*) echo ia64-dec-vms ; exit ;; - V*) echo vax-dec-vms ; exit ;; - esac ;; - *:XENIX:*:SysV) - echo i386-pc-xenix - exit ;; - i*86:skyos:*:*) - echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' - exit ;; - i*86:rdos:*:*) - echo ${UNAME_MACHINE}-pc-rdos - exit ;; - i*86:AROS:*:*) - echo ${UNAME_MACHINE}-pc-aros - exit ;; - x86_64:VMkernel:*:*) - echo ${UNAME_MACHINE}-unknown-esx - exit ;; -esac - -eval $set_cc_for_build -cat >$dummy.c < -# include -#endif -main () -{ -#if defined (sony) -#if defined (MIPSEB) - /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, - I don't know.... */ - printf ("mips-sony-bsd\n"); exit (0); -#else -#include - printf ("m68k-sony-newsos%s\n", -#ifdef NEWSOS4 - "4" -#else - "" -#endif - ); exit (0); -#endif -#endif - -#if defined (__arm) && defined (__acorn) && defined (__unix) - printf ("arm-acorn-riscix\n"); exit (0); -#endif - -#if defined (hp300) && !defined (hpux) - printf ("m68k-hp-bsd\n"); exit (0); -#endif - -#if defined (NeXT) -#if !defined (__ARCHITECTURE__) -#define __ARCHITECTURE__ "m68k" -#endif - int version; - version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; - if (version < 4) - printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); - else - printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); - exit (0); -#endif - -#if defined (MULTIMAX) || defined (n16) -#if defined (UMAXV) - printf ("ns32k-encore-sysv\n"); exit (0); -#else -#if defined (CMU) - printf ("ns32k-encore-mach\n"); exit (0); -#else - printf ("ns32k-encore-bsd\n"); exit (0); -#endif -#endif -#endif - -#if defined (__386BSD__) - printf ("i386-pc-bsd\n"); exit (0); -#endif - -#if defined (sequent) -#if defined (i386) - printf ("i386-sequent-dynix\n"); exit (0); -#endif -#if defined (ns32000) - printf ("ns32k-sequent-dynix\n"); exit (0); -#endif -#endif - -#if defined (_SEQUENT_) - struct utsname un; - - uname(&un); - - if (strncmp(un.version, "V2", 2) == 0) { - printf ("i386-sequent-ptx2\n"); exit (0); - } - if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ - printf ("i386-sequent-ptx1\n"); exit (0); - } - printf ("i386-sequent-ptx\n"); exit (0); - -#endif - -#if defined (vax) -# if !defined (ultrix) -# include -# if defined (BSD) -# if BSD == 43 - printf ("vax-dec-bsd4.3\n"); exit (0); -# else -# if BSD == 199006 - printf ("vax-dec-bsd4.3reno\n"); exit (0); -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# endif -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# else - printf ("vax-dec-ultrix\n"); exit (0); -# endif -#endif - -#if defined (alliant) && defined (i860) - printf ("i860-alliant-bsd\n"); exit (0); -#endif - - exit (1); -} -EOF - -$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && - { echo "$SYSTEM_NAME"; exit; } - -# Apollos put the system type in the environment. - -test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } - -# Convex versions that predate uname can use getsysinfo(1) - -if [ -x /usr/convex/getsysinfo ] -then - case `getsysinfo -f cpu_type` in - c1*) - echo c1-convex-bsd - exit ;; - c2*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit ;; - c34*) - echo c34-convex-bsd - exit ;; - c38*) - echo c38-convex-bsd - exit ;; - c4*) - echo c4-convex-bsd - exit ;; - esac -fi - -cat >&2 < in order to provide the needed -information to handle your system. - -config.guess timestamp = $timestamp - -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null` - -hostinfo = `(hostinfo) 2>/dev/null` -/bin/universe = `(/bin/universe) 2>/dev/null` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` -/bin/arch = `(/bin/arch) 2>/dev/null` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` - -UNAME_MACHINE = ${UNAME_MACHINE} -UNAME_RELEASE = ${UNAME_RELEASE} -UNAME_SYSTEM = ${UNAME_SYSTEM} -UNAME_VERSION = ${UNAME_VERSION} -EOF - -exit 1 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/config.sub b/config.sub deleted file mode 100644 index 8b612ab89df97769d827a8b7f64e1dad21ac0b71..0000000000000000000000000000000000000000 --- a/config.sub +++ /dev/null @@ -1,1788 +0,0 @@ -#! /bin/sh -# Configuration validation subroutine script. -# Copyright 1992-2013 Free Software Foundation, Inc. - -timestamp='2013-04-24' - -# This file 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 3 of the License, or -# (at your option) any later version. -# -# This program 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 this program; if not, see . -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that -# program. This Exception is an additional permission under section 7 -# of the GNU General Public License, version 3 ("GPLv3"). - - -# Please send patches with a ChangeLog entry to config-patches@gnu.org. -# -# Configuration subroutine to validate and canonicalize a configuration type. -# Supply the specified configuration type as an argument. -# If it is invalid, we print an error message on stderr and exit with code 1. -# Otherwise, we print the canonical config type on stdout and succeed. - -# You can get the latest version of this script from: -# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD - -# This file is supposed to be the same for all GNU packages -# and recognize all the CPU types, system types and aliases -# that are meaningful with *any* GNU software. -# Each package is responsible for reporting which valid configurations -# it does not support. The user should be able to distinguish -# a failure to support a valid configuration from a meaningless -# configuration. - -# The goal of this file is to map all the various variations of a given -# machine specification into a single specification in the form: -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or in some cases, the newer four-part form: -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# It is wrong to echo any other type of specification. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] CPU-MFR-OPSYS - $0 [OPTION] ALIAS - -Canonicalize a configuration name. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.sub ($timestamp) - -Copyright 1992-2013 Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" - exit 1 ;; - - *local*) - # First pass through any local machine types. - echo $1 - exit ;; - - * ) - break ;; - esac -done - -case $# in - 0) echo "$me: missing argument$help" >&2 - exit 1;; - 1) ;; - *) echo "$me: too many arguments$help" >&2 - exit 1;; -esac - -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ - linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ - knetbsd*-gnu* | netbsd*-gnu* | \ - kopensolaris*-gnu* | \ - storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; - android-linux) - os=-linux-android - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown - ;; - *) - basic_machine=`echo $1 | sed 's/-[^-]*$//'` - if [ $basic_machine != $1 ] - then os=`echo $1 | sed 's/.*-/-/'` - else os=; fi - ;; -esac - -### Let's recognize common machines as not being operating systems so -### that things like config.sub decstation-3100 work. We also -### recognize some manufacturers as not being operating systems, so we -### can provide default operating systems below. -case $os in - -sun*os*) - # Prevent following clause from handling this invalid input. - ;; - -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ - -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ - -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis | -knuth | -cray | -microblaze*) - os= - basic_machine=$1 - ;; - -bluegene*) - os=-cnk - ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 - ;; - -scout) - ;; - -wrs) - os=-vxworks - basic_machine=$1 - ;; - -chorusos*) - os=-chorusos - basic_machine=$1 - ;; - -chorusrdb) - os=-chorusrdb - basic_machine=$1 - ;; - -hiux*) - os=-hiuxwe2 - ;; - -sco6) - os=-sco5v6 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco4) - os=-sco3.2v4 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2.[4-9]*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2v[4-9]*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco5v6*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco*) - os=-sco3.2v2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -udk*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -isc) - os=-isc2.2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -clix*) - basic_machine=clipper-intergraph - ;; - -isc*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -lynx*178) - os=-lynxos178 - ;; - -lynx*5) - os=-lynxos5 - ;; - -lynx*) - os=-lynxos - ;; - -ptx*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` - ;; - -windowsnt*) - os=`echo $os | sed -e 's/windowsnt/winnt/'` - ;; - -psos*) - os=-psos - ;; - -mint | -mint[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; -esac - -# Decode aliases for certain CPU-COMPANY combinations. -case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ - | aarch64 | aarch64_be \ - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ - | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ - | am33_2.0 \ - | arc | arceb \ - | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ - | avr | avr32 \ - | be32 | be64 \ - | bfin \ - | c4x | clipper \ - | d10v | d30v | dlx | dsp16xx \ - | epiphany \ - | fido | fr30 | frv \ - | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ - | hexagon \ - | i370 | i860 | i960 | ia64 \ - | ip2k | iq2000 \ - | le32 | le64 \ - | lm32 \ - | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ - | mips | mipsbe | mipseb | mipsel | mipsle \ - | mips16 \ - | mips64 | mips64el \ - | mips64octeon | mips64octeonel \ - | mips64orion | mips64orionel \ - | mips64r5900 | mips64r5900el \ - | mips64vr | mips64vrel \ - | mips64vr4100 | mips64vr4100el \ - | mips64vr4300 | mips64vr4300el \ - | mips64vr5000 | mips64vr5000el \ - | mips64vr5900 | mips64vr5900el \ - | mipsisa32 | mipsisa32el \ - | mipsisa32r2 | mipsisa32r2el \ - | mipsisa64 | mipsisa64el \ - | mipsisa64r2 | mipsisa64r2el \ - | mipsisa64sb1 | mipsisa64sb1el \ - | mipsisa64sr71k | mipsisa64sr71kel \ - | mipsr5900 | mipsr5900el \ - | mipstx39 | mipstx39el \ - | mn10200 | mn10300 \ - | moxie \ - | mt \ - | msp430 \ - | nds32 | nds32le | nds32be \ - | nios | nios2 | nios2eb | nios2el \ - | ns16k | ns32k \ - | open8 \ - | or1k | or32 \ - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle \ - | pyramid \ - | rl78 | rx \ - | score \ - | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ - | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ - | spu \ - | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ - | ubicom32 \ - | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ - | we32k \ - | x86 | xc16x | xstormy16 | xtensa \ - | z8k | z80) - basic_machine=$basic_machine-unknown - ;; - c54x) - basic_machine=tic54x-unknown - ;; - c55x) - basic_machine=tic55x-unknown - ;; - c6x) - basic_machine=tic6x-unknown - ;; - m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) - basic_machine=$basic_machine-unknown - os=-none - ;; - m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) - ;; - ms1) - basic_machine=mt-unknown - ;; - - strongarm | thumb | xscale) - basic_machine=arm-unknown - ;; - xgate) - basic_machine=$basic_machine-unknown - os=-none - ;; - xscaleeb) - basic_machine=armeb-unknown - ;; - - xscaleel) - basic_machine=armel-unknown - ;; - - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. - i*86 | x86_64) - basic_machine=$basic_machine-pc - ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ - | aarch64-* | aarch64_be-* \ - | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ - | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ - | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ - | avr-* | avr32-* \ - | be32-* | be64-* \ - | bfin-* | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c4x-* \ - | clipper-* | craynv-* | cydra-* \ - | d10v-* | d30v-* | dlx-* \ - | elxsi-* \ - | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ - | hexagon-* \ - | i*86-* | i860-* | i960-* | ia64-* \ - | ip2k-* | iq2000-* \ - | le32-* | le64-* \ - | lm32-* \ - | m32c-* | m32r-* | m32rle-* \ - | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ - | microblaze-* | microblazeel-* \ - | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ - | mips16-* \ - | mips64-* | mips64el-* \ - | mips64octeon-* | mips64octeonel-* \ - | mips64orion-* | mips64orionel-* \ - | mips64r5900-* | mips64r5900el-* \ - | mips64vr-* | mips64vrel-* \ - | mips64vr4100-* | mips64vr4100el-* \ - | mips64vr4300-* | mips64vr4300el-* \ - | mips64vr5000-* | mips64vr5000el-* \ - | mips64vr5900-* | mips64vr5900el-* \ - | mipsisa32-* | mipsisa32el-* \ - | mipsisa32r2-* | mipsisa32r2el-* \ - | mipsisa64-* | mipsisa64el-* \ - | mipsisa64r2-* | mipsisa64r2el-* \ - | mipsisa64sb1-* | mipsisa64sb1el-* \ - | mipsisa64sr71k-* | mipsisa64sr71kel-* \ - | mipsr5900-* | mipsr5900el-* \ - | mipstx39-* | mipstx39el-* \ - | mmix-* \ - | mt-* \ - | msp430-* \ - | nds32-* | nds32le-* | nds32be-* \ - | nios-* | nios2-* | nios2eb-* | nios2el-* \ - | none-* | np1-* | ns16k-* | ns32k-* \ - | open8-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ - | pyramid-* \ - | rl78-* | romp-* | rs6000-* | rx-* \ - | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ - | sparclite-* \ - | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ - | tahoe-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ - | tile*-* \ - | tron-* \ - | ubicom32-* \ - | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ - | vax-* \ - | we32k-* \ - | x86-* | x86_64-* | xc16x-* | xps100-* \ - | xstormy16-* | xtensa*-* \ - | ymp-* \ - | z8k-* | z80-*) - ;; - # Recognize the basic CPU types without company name, with glob match. - xtensa*) - basic_machine=$basic_machine-unknown - ;; - # Recognize the various machine names and aliases which stand - # for a CPU type and a company and sometimes even an OS. - 386bsd) - basic_machine=i386-unknown - os=-bsd - ;; - 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) - basic_machine=m68000-att - ;; - 3b*) - basic_machine=we32k-att - ;; - a29khif) - basic_machine=a29k-amd - os=-udi - ;; - abacus) - basic_machine=abacus-unknown - ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout - ;; - alliant | fx80) - basic_machine=fx80-alliant - ;; - altos | altos3068) - basic_machine=m68k-altos - ;; - am29k) - basic_machine=a29k-none - os=-bsd - ;; - amd64) - basic_machine=x86_64-pc - ;; - amd64-*) - basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; - amiga | amiga-*) - basic_machine=m68k-unknown - ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd - ;; - aros) - basic_machine=i386-pc - os=-aros - ;; - aux) - basic_machine=m68k-apple - os=-aux - ;; - balance) - basic_machine=ns32k-sequent - os=-dynix - ;; - blackfin) - basic_machine=bfin-unknown - os=-linux - ;; - blackfin-*) - basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` - os=-linux - ;; - bluegene*) - basic_machine=powerpc-ibm - os=-cnk - ;; - c54x-*) - basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - c55x-*) - basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - c6x-*) - basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - c90) - basic_machine=c90-cray - os=-unicos - ;; - cegcc) - basic_machine=arm-unknown - os=-cegcc - ;; - convex-c1) - basic_machine=c1-convex - os=-bsd - ;; - convex-c2) - basic_machine=c2-convex - os=-bsd - ;; - convex-c32) - basic_machine=c32-convex - os=-bsd - ;; - convex-c34) - basic_machine=c34-convex - os=-bsd - ;; - convex-c38) - basic_machine=c38-convex - os=-bsd - ;; - cray | j90) - basic_machine=j90-cray - os=-unicos - ;; - craynv) - basic_machine=craynv-cray - os=-unicosmp - ;; - cr16 | cr16-*) - basic_machine=cr16-unknown - os=-elf - ;; - crds | unos) - basic_machine=m68k-crds - ;; - crisv32 | crisv32-* | etraxfs*) - basic_machine=crisv32-axis - ;; - cris | cris-* | etrax*) - basic_machine=cris-axis - ;; - crx) - basic_machine=crx-unknown - os=-elf - ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; - decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) - basic_machine=mips-dec - ;; - decsystem10* | dec10*) - basic_machine=pdp10-dec - os=-tops10 - ;; - decsystem20* | dec20*) - basic_machine=pdp10-dec - os=-tops20 - ;; - delta | 3300 | motorola-3300 | motorola-delta \ - | 3300-motorola | delta-motorola) - basic_machine=m68k-motorola - ;; - delta88) - basic_machine=m88k-motorola - os=-sysv3 - ;; - dicos) - basic_machine=i686-pc - os=-dicos - ;; - djgpp) - basic_machine=i586-pc - os=-msdosdjgpp - ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx - ;; - dpx2* | dpx2*-bull) - basic_machine=m68k-bull - os=-sysv3 - ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon - ;; - elxsi) - basic_machine=elxsi-elxsi - os=-bsd - ;; - encore | umax | mmax) - basic_machine=ns32k-encore - ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=-ose - ;; - fx2800) - basic_machine=i860-alliant - ;; - genix) - basic_machine=ns32k-ns - ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv - ;; - go32) - basic_machine=i386-pc - os=-go32 - ;; - h3050r* | hiux*) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=-hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=-hms - ;; - harris) - basic_machine=m88k-harris - os=-sysv3 - ;; - hp300-*) - basic_machine=m68k-hp - ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux - ;; - hp3k9[0-9][0-9] | hp9[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k2[0-9][0-9] | hp9k31[0-9]) - basic_machine=m68000-hp - ;; - hp9k3[2-9][0-9]) - basic_machine=m68k-hp - ;; - hp9k6[0-9][0-9] | hp6[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k7[0-79][0-9] | hp7[0-79][0-9]) - basic_machine=hppa1.1-hp - ;; - hp9k78[0-9] | hp78[0-9]) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][13679] | hp8[0-9][13679]) - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][0-9] | hp8[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hppa-next) - os=-nextstep3 - ;; - hppaosf) - basic_machine=hppa1.1-hp - os=-osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=-proelf - ;; - i370-ibm* | ibm*) - basic_machine=i370-ibm - ;; - i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 - ;; - i*86v4*) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv4 - ;; - i*86v) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv - ;; - i*86sol2) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-solaris2 - ;; - i386mach) - basic_machine=i386-mach - os=-mach - ;; - i386-vsta | vsta) - basic_machine=i386-unknown - os=-vsta - ;; - iris | iris4d) - basic_machine=mips-sgi - case $os in - -irix*) - ;; - *) - os=-irix4 - ;; - esac - ;; - isi68 | isi) - basic_machine=m68k-isi - os=-sysv - ;; - m68knommu) - basic_machine=m68k-unknown - os=-linux - ;; - m68knommu-*) - basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` - os=-linux - ;; - m88k-omron*) - basic_machine=m88k-omron - ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv - ;; - merlin) - basic_machine=ns32k-utek - os=-sysv - ;; - microblaze*) - basic_machine=microblaze-xilinx - ;; - mingw64) - basic_machine=x86_64-pc - os=-mingw64 - ;; - mingw32) - basic_machine=i386-pc - os=-mingw32 - ;; - mingw32ce) - basic_machine=arm-unknown - os=-mingw32ce - ;; - miniframe) - basic_machine=m68000-convergent - ;; - *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; - mips3*-*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` - ;; - mips3*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown - ;; - monitor) - basic_machine=m68k-rom68k - os=-coff - ;; - morphos) - basic_machine=powerpc-unknown - os=-morphos - ;; - msdos) - basic_machine=i386-pc - os=-msdos - ;; - ms1-*) - basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` - ;; - msys) - basic_machine=i386-pc - os=-msys - ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; - nacl) - basic_machine=le32-unknown - os=-nacl - ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 - ;; - netbsd386) - basic_machine=i386-unknown - os=-netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - news1000) - basic_machine=m68030-sony - os=-newsos - ;; - news-3600 | risc-news) - basic_machine=mips-sony - os=-newsos - ;; - necv70) - basic_machine=v70-nec - os=-sysv - ;; - next | m*-next ) - basic_machine=m68k-next - case $os in - -nextstep* ) - ;; - -ns2*) - os=-nextstep2 - ;; - *) - os=-nextstep3 - ;; - esac - ;; - nh3000) - basic_machine=m68k-harris - os=-cxux - ;; - nh[45]000) - basic_machine=m88k-harris - os=-cxux - ;; - nindy960) - basic_machine=i960-intel - os=-nindy - ;; - mon960) - basic_machine=i960-intel - os=-mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=-nonstopux - ;; - np1) - basic_machine=np1-gould - ;; - neo-tandem) - basic_machine=neo-tandem - ;; - nse-tandem) - basic_machine=nse-tandem - ;; - nsr-tandem) - basic_machine=nsr-tandem - ;; - op50n-* | op60c-*) - basic_machine=hppa1.1-oki - os=-proelf - ;; - openrisc | openrisc-*) - basic_machine=or32-unknown - ;; - os400) - basic_machine=powerpc-ibm - os=-os400 - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k - ;; - pa-hitachi) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - paragon) - basic_machine=i860-intel - os=-osf - ;; - parisc) - basic_machine=hppa-unknown - os=-linux - ;; - parisc-*) - basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` - os=-linux - ;; - pbd) - basic_machine=sparc-tti - ;; - pbb) - basic_machine=m68k-tti - ;; - pc532 | pc532-*) - basic_machine=ns32k-pc532 - ;; - pc98) - basic_machine=i386-pc - ;; - pc98-*) - basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentium | p5 | k5 | k6 | nexgen | viac3) - basic_machine=i586-pc - ;; - pentiumpro | p6 | 6x86 | athlon | athlon_*) - basic_machine=i686-pc - ;; - pentiumii | pentium2 | pentiumiii | pentium3) - basic_machine=i686-pc - ;; - pentium4) - basic_machine=i786-pc - ;; - pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) - basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumpro-* | p6-* | 6x86-* | athlon-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentium4-*) - basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pn) - basic_machine=pn-gould - ;; - power) basic_machine=power-ibm - ;; - ppc | ppcbe) basic_machine=powerpc-unknown - ;; - ppc-* | ppcbe-*) - basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppcle | powerpclittle | ppc-le | powerpc-little) - basic_machine=powerpcle-unknown - ;; - ppcle-* | powerpclittle-*) - basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64) basic_machine=powerpc64-unknown - ;; - ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64le | powerpc64little | ppc64-le | powerpc64-little) - basic_machine=powerpc64le-unknown - ;; - ppc64le-* | powerpc64little-*) - basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ps2) - basic_machine=i386-ibm - ;; - pw32) - basic_machine=i586-unknown - os=-pw32 - ;; - rdos | rdos64) - basic_machine=x86_64-pc - os=-rdos - ;; - rdos32) - basic_machine=i386-pc - os=-rdos - ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff - ;; - rm[46]00) - basic_machine=mips-siemens - ;; - rtpc | rtpc-*) - basic_machine=romp-ibm - ;; - s390 | s390-*) - basic_machine=s390-ibm - ;; - s390x | s390x-*) - basic_machine=s390x-ibm - ;; - sa29200) - basic_machine=a29k-amd - os=-udi - ;; - sb1) - basic_machine=mipsisa64sb1-unknown - ;; - sb1el) - basic_machine=mipsisa64sb1el-unknown - ;; - sde) - basic_machine=mipsisa32-sde - os=-elf - ;; - sei) - basic_machine=mips-sei - os=-seiux - ;; - sequent) - basic_machine=i386-sequent - ;; - sh) - basic_machine=sh-hitachi - os=-hms - ;; - sh5el) - basic_machine=sh5le-unknown - ;; - sh64) - basic_machine=sh64-unknown - ;; - sparclite-wrs | simso-wrs) - basic_machine=sparclite-wrs - os=-vxworks - ;; - sps7) - basic_machine=m68k-bull - os=-sysv2 - ;; - spur) - basic_machine=spur-unknown - ;; - st2000) - basic_machine=m68k-tandem - ;; - stratus) - basic_machine=i860-stratus - os=-sysv4 - ;; - strongarm-* | thumb-*) - basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - sun2) - basic_machine=m68000-sun - ;; - sun2os3) - basic_machine=m68000-sun - os=-sunos3 - ;; - sun2os4) - basic_machine=m68000-sun - os=-sunos4 - ;; - sun3os3) - basic_machine=m68k-sun - os=-sunos3 - ;; - sun3os4) - basic_machine=m68k-sun - os=-sunos4 - ;; - sun4os3) - basic_machine=sparc-sun - os=-sunos3 - ;; - sun4os4) - basic_machine=sparc-sun - os=-sunos4 - ;; - sun4sol2) - basic_machine=sparc-sun - os=-solaris2 - ;; - sun3 | sun3-*) - basic_machine=m68k-sun - ;; - sun4) - basic_machine=sparc-sun - ;; - sun386 | sun386i | roadrunner) - basic_machine=i386-sun - ;; - sv1) - basic_machine=sv1-cray - os=-unicos - ;; - symmetry) - basic_machine=i386-sequent - os=-dynix - ;; - t3e) - basic_machine=alphaev5-cray - os=-unicos - ;; - t90) - basic_machine=t90-cray - os=-unicos - ;; - tile*) - basic_machine=$basic_machine-unknown - os=-linux-gnu - ;; - tx39) - basic_machine=mipstx39-unknown - ;; - tx39el) - basic_machine=mipstx39el-unknown - ;; - toad1) - basic_machine=pdp10-xkl - os=-tops20 - ;; - tower | tower-32) - basic_machine=m68k-ncr - ;; - tpf) - basic_machine=s390x-ibm - os=-tpf - ;; - udi29k) - basic_machine=a29k-amd - os=-udi - ;; - ultra3) - basic_machine=a29k-nyu - os=-sym1 - ;; - v810 | necv810) - basic_machine=v810-nec - os=-none - ;; - vaxv) - basic_machine=vax-dec - os=-sysv - ;; - vms) - basic_machine=vax-dec - os=-vms - ;; - vpp*|vx|vx-*) - basic_machine=f301-fujitsu - ;; - vxworks960) - basic_machine=i960-wrs - os=-vxworks - ;; - vxworks68) - basic_machine=m68k-wrs - os=-vxworks - ;; - vxworks29k) - basic_machine=a29k-wrs - os=-vxworks - ;; - w65*) - basic_machine=w65-wdc - os=-none - ;; - w89k-*) - basic_machine=hppa1.1-winbond - os=-proelf - ;; - xbox) - basic_machine=i686-pc - os=-mingw32 - ;; - xps | xps100) - basic_machine=xps100-honeywell - ;; - xscale-* | xscalee[bl]-*) - basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` - ;; - ymp) - basic_machine=ymp-cray - os=-unicos - ;; - z8k-*-coff) - basic_machine=z8k-unknown - os=-sim - ;; - z80-*-coff) - basic_machine=z80-unknown - os=-sim - ;; - none) - basic_machine=none-none - os=-none - ;; - -# Here we handle the default manufacturer of certain CPU types. It is in -# some cases the only manufacturer, in others, it is the most popular. - w89k) - basic_machine=hppa1.1-winbond - ;; - op50n) - basic_machine=hppa1.1-oki - ;; - op60c) - basic_machine=hppa1.1-oki - ;; - romp) - basic_machine=romp-ibm - ;; - mmix) - basic_machine=mmix-knuth - ;; - rs6000) - basic_machine=rs6000-ibm - ;; - vax) - basic_machine=vax-dec - ;; - pdp10) - # there are many clones, so DEC is not a safe bet - basic_machine=pdp10-unknown - ;; - pdp11) - basic_machine=pdp11-dec - ;; - we32k) - basic_machine=we32k-att - ;; - sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) - basic_machine=sh-unknown - ;; - sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) - basic_machine=sparc-sun - ;; - cydra) - basic_machine=cydra-cydrome - ;; - orion) - basic_machine=orion-highlevel - ;; - orion105) - basic_machine=clipper-highlevel - ;; - mac | mpw | mac-mpw) - basic_machine=m68k-apple - ;; - pmac | pmac-mpw) - basic_machine=powerpc-apple - ;; - *-unknown) - # Make sure to match an already-canonicalized machine name. - ;; - *) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; -esac - -# Here we canonicalize certain aliases for manufacturers. -case $basic_machine in - *-digital*) - basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` - ;; - *-commodore*) - basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` - ;; - *) - ;; -esac - -# Decode manufacturer-specific aliases for certain operating systems. - -if [ x"$os" != x"" ] -then -case $os in - # First match some system type aliases - # that might get confused with valid system types. - # -solaris* is a basic system type, with this one exception. - -auroraux) - os=-auroraux - ;; - -solaris1 | -solaris1.*) - os=`echo $os | sed -e 's|solaris1|sunos4|'` - ;; - -solaris) - os=-solaris2 - ;; - -svr4*) - os=-sysv4 - ;; - -unixware*) - os=-sysv4.2uw - ;; - -gnu/linux*) - os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` - ;; - # First accept the basic system types. - # The portable systems comes first. - # Each alternative MUST END IN A *, to match a version number. - # -sysv* is not here because it comes later, after sysvr4. - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ - | -sym* | -kopensolaris* | -plan9* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* | -aros* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ - | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ - | -bitrig* | -openbsd* | -solidbsd* \ - | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ - | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* | -cegcc* \ - | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ - | -linux-newlib* | -linux-musl* | -linux-uclibc* \ - | -uxpv* | -beos* | -mpeix* | -udk* \ - | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ - | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ - | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ - | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ - | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ - | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) - # Remember, each alternative MUST END IN *, to match a version number. - ;; - -qnx*) - case $basic_machine in - x86-* | i*86-*) - ;; - *) - os=-nto$os - ;; - esac - ;; - -nto-qnx*) - ;; - -nto*) - os=`echo $os | sed -e 's|nto|nto-qnx|'` - ;; - -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ - | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ - | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) - ;; - -mac*) - os=`echo $os | sed -e 's|mac|macos|'` - ;; - -linux-dietlibc) - os=-linux-dietlibc - ;; - -linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` - ;; - -sunos5*) - os=`echo $os | sed -e 's|sunos5|solaris2|'` - ;; - -sunos6*) - os=`echo $os | sed -e 's|sunos6|solaris3|'` - ;; - -opened*) - os=-openedition - ;; - -os400*) - os=-os400 - ;; - -wince*) - os=-wince - ;; - -osfrose*) - os=-osfrose - ;; - -osf*) - os=-osf - ;; - -utek*) - os=-bsd - ;; - -dynix*) - os=-bsd - ;; - -acis*) - os=-aos - ;; - -atheos*) - os=-atheos - ;; - -syllable*) - os=-syllable - ;; - -386bsd) - os=-bsd - ;; - -ctix* | -uts*) - os=-sysv - ;; - -nova*) - os=-rtmk-nova - ;; - -ns2 ) - os=-nextstep2 - ;; - -nsk*) - os=-nsk - ;; - # Preserve the version number of sinix5. - -sinix5.*) - os=`echo $os | sed -e 's|sinix|sysv|'` - ;; - -sinix*) - os=-sysv4 - ;; - -tpf*) - os=-tpf - ;; - -triton*) - os=-sysv3 - ;; - -oss*) - os=-sysv3 - ;; - -svr4) - os=-sysv4 - ;; - -svr3) - os=-sysv3 - ;; - -sysvr4) - os=-sysv4 - ;; - # This must come after -sysvr4. - -sysv*) - ;; - -ose*) - os=-ose - ;; - -es1800*) - os=-ose - ;; - -xenix) - os=-xenix - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - os=-mint - ;; - -aros*) - os=-aros - ;; - -zvmoe) - os=-zvmoe - ;; - -dicos*) - os=-dicos - ;; - -nacl*) - ;; - -none) - ;; - *) - # Get rid of the `-' at the beginning of $os. - os=`echo $os | sed 's/[^-]*-//'` - echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 - exit 1 - ;; -esac -else - -# Here we handle the default operating systems that come with various machines. -# The value should be what the vendor currently ships out the door with their -# machine or put another way, the most popular os provided with the machine. - -# Note that if you're going to try to match "-MANUFACTURER" here (say, -# "-sun"), then you have to tell the case statement up towards the top -# that MANUFACTURER isn't an operating system. Otherwise, code above -# will signal an error saying that MANUFACTURER isn't an operating -# system, and we'll never get to this point. - -case $basic_machine in - score-*) - os=-elf - ;; - spu-*) - os=-elf - ;; - *-acorn) - os=-riscix1.2 - ;; - arm*-rebel) - os=-linux - ;; - arm*-semi) - os=-aout - ;; - c4x-* | tic4x-*) - os=-coff - ;; - hexagon-*) - os=-elf - ;; - tic54x-*) - os=-coff - ;; - tic55x-*) - os=-coff - ;; - tic6x-*) - os=-coff - ;; - # This must come before the *-dec entry. - pdp10-*) - os=-tops20 - ;; - pdp11-*) - os=-none - ;; - *-dec | vax-*) - os=-ultrix4.2 - ;; - m68*-apollo) - os=-domain - ;; - i386-sun) - os=-sunos4.0.2 - ;; - m68000-sun) - os=-sunos3 - ;; - m68*-cisco) - os=-aout - ;; - mep-*) - os=-elf - ;; - mips*-cisco) - os=-elf - ;; - mips*-*) - os=-elf - ;; - or1k-*) - os=-elf - ;; - or32-*) - os=-coff - ;; - *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 - ;; - sparc-* | *-sun) - os=-sunos4.1.1 - ;; - *-be) - os=-beos - ;; - *-haiku) - os=-haiku - ;; - *-ibm) - os=-aix - ;; - *-knuth) - os=-mmixware - ;; - *-wec) - os=-proelf - ;; - *-winbond) - os=-proelf - ;; - *-oki) - os=-proelf - ;; - *-hp) - os=-hpux - ;; - *-hitachi) - os=-hiux - ;; - i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=-sysv - ;; - *-cbm) - os=-amigaos - ;; - *-dg) - os=-dgux - ;; - *-dolphin) - os=-sysv3 - ;; - m68k-ccur) - os=-rtu - ;; - m88k-omron*) - os=-luna - ;; - *-next ) - os=-nextstep - ;; - *-sequent) - os=-ptx - ;; - *-crds) - os=-unos - ;; - *-ns) - os=-genix - ;; - i370-*) - os=-mvs - ;; - *-next) - os=-nextstep3 - ;; - *-gould) - os=-sysv - ;; - *-highlevel) - os=-bsd - ;; - *-encore) - os=-bsd - ;; - *-sgi) - os=-irix - ;; - *-siemens) - os=-sysv4 - ;; - *-masscomp) - os=-rtu - ;; - f30[01]-fujitsu | f700-fujitsu) - os=-uxpv - ;; - *-rom68k) - os=-coff - ;; - *-*bug) - os=-coff - ;; - *-apple) - os=-macos - ;; - *-atari*) - os=-mint - ;; - *) - os=-none - ;; -esac -fi - -# Here we handle the case where we know the os, and the CPU type, but not the -# manufacturer. We pick the logical manufacturer. -vendor=unknown -case $basic_machine in - *-unknown) - case $os in - -riscix*) - vendor=acorn - ;; - -sunos*) - vendor=sun - ;; - -cnk*|-aix*) - vendor=ibm - ;; - -beos*) - vendor=be - ;; - -hpux*) - vendor=hp - ;; - -mpeix*) - vendor=hp - ;; - -hiux*) - vendor=hitachi - ;; - -unos*) - vendor=crds - ;; - -dgux*) - vendor=dg - ;; - -luna*) - vendor=omron - ;; - -genix*) - vendor=ns - ;; - -mvs* | -opened*) - vendor=ibm - ;; - -os400*) - vendor=ibm - ;; - -ptx*) - vendor=sequent - ;; - -tpf*) - vendor=ibm - ;; - -vxsim* | -vxworks* | -windiss*) - vendor=wrs - ;; - -aux*) - vendor=apple - ;; - -hms*) - vendor=hitachi - ;; - -mpw* | -macos*) - vendor=apple - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - vendor=atari - ;; - -vos*) - vendor=stratus - ;; - esac - basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` - ;; -esac - -echo $basic_machine$os -exit - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/dragonwell-rh1860986-disable_tlsv1.3_in_fips_mode.patch b/dragonwell-rh1860986-disable_tlsv1.3_in_fips_mode.patch deleted file mode 100644 index c738037a0a3dfbfa81902138f7966910fb1f0b4c..0000000000000000000000000000000000000000 --- a/dragonwell-rh1860986-disable_tlsv1.3_in_fips_mode.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff -u openjdk.orig/jdk/src/share/classes/sun/misc/SharedSecrets.java openjdk/jdk/src/share/classes/sun/misc/SharedSecrets.java ---- openjdk.orig/jdk/src/share/classes/sun/misc/SharedSecrets.java 2022-05-23 20:14:54.085148471 +0800 -+++ openjdk/jdk/src/share/classes/sun/misc/SharedSecrets.java 2022-05-23 20:17:47.474006244 +0800 -@@ -76,6 +76,7 @@ - private static IOEventAccess ioEventAccess; - private static IOUtilAccess ioUtilAccess; - private static NetAccess netAccess; -+ private static JavaSecuritySystemConfiguratorAccess javaSecuritySystemConfiguratorAccess; - - public static JavaUtilJarAccess javaUtilJarAccess() { - if (javaUtilJarAccess == null) { -@@ -270,6 +270,14 @@ - return javaxCryptoSealedObjectAccess; - } - -+ public static void setJavaSecuritySystemConfiguratorAccess(JavaSecuritySystemConfiguratorAccess jssca) { -+ javaSecuritySystemConfiguratorAccess = jssca; -+ } -+ -+ public static JavaSecuritySystemConfiguratorAccess getJavaSecuritySystemConfiguratorAccess() { -+ return javaSecuritySystemConfiguratorAccess; -+ } -+ - public static void setTenantAccess(TenantAccess access) { - tenantAccess = access; - } diff --git a/java-1.8.0-alibaba-dragonwell.spec b/java-1.8.0-alibaba-dragonwell.spec index d2151f909a27b8031398348f7e51eccfde72cc40..88c18c230e32df5c0b6eb5c43e7239034a541518 100644 --- a/java-1.8.0-alibaba-dragonwell.spec +++ b/java-1.8.0-alibaba-dragonwell.spec @@ -1,4 +1,4 @@ -%define anolis_release 2 +%define anolis_release 3 %bcond_without fastdebug %bcond_without slowdebug @@ -168,134 +168,9 @@ Source3: Alibaba_Dragonwell_8.10.11_x64_linux.tar.gz Source4: Alibaba_Dragonwell_8.10.11_aarch64_linux.tar.gz -# Release notes -Source7: NEWS - # Systemtap tapsets. Zipped up to keep it small. Source8: tapsets-icedtea-3.15.0.tar.xz -# Desktop files. Adapted from IcedTea -Source9: jconsole.desktop.in -Source10: policytool.desktop.in - -# nss configuration file -Source11: nss.cfg.in - -# Removed libraries that we link instead -Source12: java-1.8.0-openjdk-remove-intree-libraries.sh - -# Ensure we aren't using the limited crypto policy -Source13: TestCryptoLevel.java - -# Ensure ECDSA is working -Source14: TestECDSA.java -# Verify system crypto (policy) can be disabled via a property -Source15: TestSecurityProperties.java - -# Ensure vendor settings are correct -Source16: CheckVendor.java - -# nss fips configuration file -Source17: nss.fips.cfg.in - -Source20: repackReproduciblePolycies.sh - -# New versions of config files with aarch64 support. This is not upstream yet. -Source100: config.guess -Source101: config.sub - -Patch534: rh1648246-always_instruct_vm_to_assume_multiple_processors_are_available.patch -# RH1582504: Use RSA as default for keytool, as DSA is disabled in all crypto policies except LEGACY -Patch1003: rh1582504-rsa_default_for_keytool.patch - -# FIPS support patches -# RH1648249: Add PKCS11 provider to java.security -Patch1000: rh1648249-add_commented_out_nss_cfg_provider_to_java_security.patch -# RH1655466: Support RHEL FIPS mode using SunPKCS11 provider -Patch1001: rh1655466-global_crypto_and_fips.patch -# RH1760838: No ciphersuites available for SSLSocket in FIPS mode -Patch1002: rh1760838-fips_default_keystore_type.patch -# RH1860986: Disable TLSv1.3 with the NSS-FIPS provider until PKCS#11 v3.0 support is available -Patch1004: rh1860986-disable_tlsv1.3_in_fips_mode.patch -# RH1906862: Always initialise JavaSecuritySystemConfiguratorAccess -Patch1005: rh1906862-always_initialise_configurator_access.patch -# RH1929465: Improve system FIPS detection -Patch1006: rh1929465-improve_system_FIPS_detection-root.patch -Patch1007: rh1929465-improve_system_FIPS_detection-jdk.patch -# RH1996182: Login to the NSS software token in FIPS mode -Patch1008: rh1996182-login_to_nss_software_token.patch -# RH1991003: Allow plain key import unless com.redhat.fips.plainKeySupport is set to false -Patch1011: rh1991003-enable_fips_keys_import.patch -# RH2021263: Resolve outstanding FIPS issues -Patch1014: rh2021263-fips_ensure_security_initialised.patch -Patch1015: rh2021263-fips_missing_native_returns.patch -Patch1016: rh2021263-fips_separate_policy_and_fips_init.patch - -# Upstreamable patches -# PR2737: Allow multiple initialization of PKCS11 libraries -Patch5: pr2737-allow_multiple_pkcs11_library_initialisation_to_be_a_non_critical_error.patch -# PR2095, RH1163501: 2048-bit DH upper bound too small for Fedora infrastructure (sync with IcedTea 2.x) -Patch504: rh1163501-increase_2048_bit_dh_upper_bound_fedora_infrastructure_in_dhparametergenerator.patch -# Turn off strict overflow on IndicRearrangementProcessor{,2}.cpp following 8140543: Arrange font actions -Patch512: rh1649664-awt2dlibraries_compiled_with_no_strict_overflow.patch -# RH1337583, PR2974: PKCS#10 certificate requests now use CRLF line endings rather than system line endings -Patch523: pr2974-rh1337583-add_systemlineendings_option_to_keytool_and_use_line_separator_instead_of_crlf_in_pkcs10.patch -# PR3083, RH1346460: Regression in SSL debug output without an ECC provider -Patch528: pr3083-rh1346460-for_ssl_debug_return_null_instead_of_exception_when_theres_no_ecc_provider.patch -# PR2888: OpenJDK should check for system cacerts database (e.g. /etc/pki/java/cacerts) -# PR3575, RH1567204: System cacerts database handling should not affect jssecacerts -Patch539: pr2888-openjdk_should_check_for_system_cacerts_database_eg_etc_pki_java_cacerts.patch -# PR3183, RH1340845: Support Fedora/RHEL8 system crypto policy -Patch400: pr3183-rh1340845-support_fedora_rhel_system_crypto_policy.patch -# PR3655: Allow use of system crypto policy to be disabled by the user -Patch401: pr3655-toggle_system_crypto_policy.patch -# enable build of speculative store bypass hardened alt-java -Patch600: rh1750419-redhat_alt_java.patch -# JDK-8218811: replace open by os::open in hotspot coding -# This fixes a GCC 10 build issue -Patch111: jdk8218811-perfMemory_linux.patch -# JDK-8281098, PR3836: Extra compiler flags not passed to adlc build -Patch112: jdk8281098-pr3836-pass_compiler_flags_to_adlc.patch - -# Arch-specific upstreamable patches -# s390: PR3593: Use "%z" for size_t on s390 as size_t != intptr_t -Patch103: pr3593-s390_use_z_format_specifier_for_size_t_arguments_as_size_t_not_equals_to_int.patch -# x86: S8199936, PR3533: HotSpot generates code with unaligned stack, crashes on SSE operations (-mstackrealign workaround) -Patch105: jdk8199936-pr3533-enable_mstackrealign_on_x86_linux_as_well_as_x86_mac_os_x.patch -# S390 ambiguous log2_intptr calls -Patch107: s390-8214206_fix.patch - -# Patches which need backporting to 8u -# S8074839, PR2462: Resolve disabled warnings for libunpack and the unpack200 binary -# This fixes printf warnings that lead to build failure with -Werror=format-security from optflags -Patch502: pr2462-resolve_disabled_warnings_for_libunpack_and_the_unpack200_binary.patch -# PR3591: Fix for bug 3533 doesn't add -mstackrealign to JDK code -Patch571: jdk8199936-pr3591-enable_mstackrealign_on_x86_linux_as_well_as_x86_mac_os_x_jdk.patch -# 8143245, PR3548: Zero build requires disabled warnings -Patch574: jdk8143245-pr3548-zero_build_requires_disabled_warnings.patch -# s390: JDK-8203030, Type fixing for s390 -Patch102: jdk8203030-zero_s390_31_bit_size_t_type_conflicts_in_shared_code.patch -# 8035341: Allow using a system installed libpng -Patch202: jdk8035341-allow_using_system_installed_libpng.patch -# 8042159: Allow using a system-installed lcms2 -Patch203: jdk8042159-allow_using_system_installed_lcms2-root.patch -Patch204: jdk8042159-allow_using_system_installed_lcms2-jdk.patch -# JDK-8257794: Zero: assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1) failed: wrong on Linux/x86_32 -Patch581: jdk8257794-remove_broken_assert.patch -# JDK-8282231: x86-32: runtime call to SharedRuntime::ldiv corrupts registers -Patch582: jdk8282231-x86_32-missing_call_effects.patch - -# Patches ineligible for 8u - -# 8043805: Allow using a system-installed libjpeg -Patch201: jdk8043805-allow_using_system_installed_libjpeg.patch - -Patch2001: 0001-resolve-rsocket.patch -Patch2002: dragonwell-rh1860986-disable_tlsv1.3_in_fips_mode.patch - -# 833097: -Patch2003: pr833097-bugfix-openjkd-8-undeined-symbols.patch - BuildArch: x86_64 aarch64 BuildRequires: make vim @@ -717,58 +592,7 @@ Alibaba Dragonwell 1.8.0 Runtime Environment src fastdebug %setup -q -c -n %{dragbuildname} -T -a 0 mv %{dragbuildname} %{top_level_dir_name} chmod +x %{top_level_dir_name}/configure - -#sh %{SOURCE5} %{top_level_dir_name} -pushd %{top_level_dir_name} -cp %{SOURCE100} common/autoconf/build-aux/ -cp %{SOURCE101} common/autoconf/build-aux/ - -# System library fixes -%patch2001 -p1 -%patch201 -p1 -%patch202 -p1 -%patch203 -p1 -%patch204 -p1 - -# System security policy fixes -%patch400 -p1 -%patch401 -p1 -%patch5 -p1 - -# AArch64 fixes - -# x86 fixes -%patch105 -p1 -# Upstreamable fixes -%patch502 -p1 -%patch504 -p1 -%patch512 -p1 -%patch523 -p1 -%patch528 -p1 -%patch571 -p1 -%patch574 -p1 -%patch111 -p1 -%patch112 -p1 -%patch581 -p1 -%patch582 -p1 -# RPM-only fixes -%patch539 -p1 -%patch600 -p1 -%patch1000 -p1 -%patch1001 -p1 -%patch1002 -p1 -%patch1003 -p1 -%patch1004 -p1 -%patch2002 -p1 -%patch1005 -p1 -%patch1006 -p1 -%patch1007 -p1 -%patch1008 -p1 -%patch1011 -p1 -%patch1015 -p1 -%patch1016 -p1 -%patch2003 -p1 -popd +sed -i 's/WARNINGS_ARE_ERRORS = -Werror/WARNINGS_ARE_ERRORS = -Wno-all/g' %{top_level_dir_name}/hotspot/make/linux/makefiles/gcc.make # Extract systemtap tapsets tar --strip-components=1 -x -I xz -f %{SOURCE8} @@ -791,27 +615,6 @@ for suffix in %{build_loop} ; do sed -i -e "s:@prefix@:%{_jvmdir}/%{sdkdir -- $suffix}/:g" $OUTPUT_FILE done done -for suffix in %{build_loop} ; do - for file in %{SOURCE9} %{SOURCE10}; do - FILE=`basename $file | sed -e s:\.in$::g` - EXT="${FILE##*.}" - NAME="${FILE%.*}" - OUTPUT_FILE=$NAME$suffix.$EXT - sed -e "s:_SDKBINDIR_:%{sdkbindir -- $suffix}:g" $file > $OUTPUT_FILE - sed -i -e "s:_JREBINDIR_:%{jrebindir -- $suffix}:g" $OUTPUT_FILE - sed -i -e "s:@target_cpu@:%{_arch}:g" $OUTPUT_FILE - sed -i -e "s:@OPENJDK_VER@:%{version}-%{release}.%{_arch}$suffix:g" $OUTPUT_FILE - sed -i -e "s:@JAVA_VER@:%{javaver}:g" $OUTPUT_FILE - sed -i -e "s:@JAVA_VENDOR@:%{drag_origin}:g" $OUTPUT_FILE - done -done - -# Setup nss.cfg -sed -e "s:@NSS_LIBDIR@:%{NSS_LIBDIR}:g" %{SOURCE11} > nss.cfg - -# Setup nss.fips.cfg -sed -e "s:@NSS_LIBDIR@:%{NSS_LIBDIR}:g" %{SOURCE17} > nss.fips.cfg - %build # How many CPU's do we have? @@ -822,8 +625,8 @@ export NUM_PROC=${NUM_PROC:-1} export ARCH_DATA_MODEL=64 %endif -EXTRA_CFLAGS="%ourcppflags -Wno-error" -EXTRA_CPP_FLAGS="%ourcppflags" +EXTRA_CFLAGS="%ourcppflags -Wno-error -Wno-format-security" +EXTRA_CPP_FLAGS="%ourcppflags -Wno-error -Wno-format-security" EXTRA_ASFLAGS="${EXTRA_CFLAGS} -Wa,--generate-missing-build-notes=yes" export EXTRA_CFLAGS EXTRA_ASFLAGS @@ -866,10 +669,7 @@ function buildjdk() { --enable-unlimited-crypto \ --with-jvm-variants=server \ --with-zlib=system \ - --with-libjpeg=${link_opt} \ --with-giflib=${link_opt} \ - --with-libpng=${link_opt} \ - --with-lcms=${link_opt} \ --with-boot-jdk=${buildjdk} \ --with-num-cores="$NUM_PROC" \ --with-extra-cxxflags="$EXTRA_CPP_FLAGS" \ @@ -924,12 +724,6 @@ function installjdk() { fi } -#cp -LR --preserve=mode,timestamps %{bootjdk} newboot -#systemjdk=$(pwd)/newboot -#buildjdk build/newboot ${systemjdk} hotspot "release" "bundled" -#mv build/newboot/hotspot/dist/jre/lib/%{arch_dir}/server/libjvm.so newboot/jre/lib/%{arch_dir}/server - -#systemjdk=%{bootjdk} # prepare the jdk mkdir boot-jdk pushd boot-jdk @@ -970,8 +764,6 @@ for suffix in %{build_loop} ; do # Install nss.cfg right away as we will be using the JRE above export JAVA_HOME=$(pwd)/%{installoutputdir -- $suffix}/images/j2sdk-image - install -m 644 nss.cfg $JAVA_HOME/jre/lib/security/ - install -m 644 nss.fips.cfg $JAVA_HOME/jre/lib/security/ # Use system-wide tzdata rm $JAVA_HOME/jre/lib/tzdb.dat @@ -1058,7 +850,6 @@ for suffix in %{build_loop} ; do # Install release notes commondocdir=${RPM_BUILD_ROOT}%{_defaultdocdir}/%{uniquejavadocdir -- $suffix} install -d -m 755 ${commondocdir} - cp -a %{SOURCE7} ${commondocdir} # Install icons and menu entries for s in 16 24 32 48 ; do @@ -1067,13 +858,6 @@ for suffix in %{build_loop} ; do $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/java-%{javaver}-%{origin}.png done - # Install desktop files - install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/{applications,pixmaps} - for e in jconsole$suffix policytool$suffix ; do - desktop-file-install --vendor=%{uniquesuffix -- $suffix} --mode=644 \ - --dir=$RPM_BUILD_ROOT%{_datadir}/applications $e.desktop - done - mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/.java/.systemPrefs @@ -1100,14 +884,13 @@ for suffix in %{build_loop} ; do | sed 's|^|%dir |' \ >> %{name}-demo.files"$suffix" - bash %{SOURCE20} $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix} %{javaver} # https://bugzilla.redhat.com/show_bug.cgi?id=1183793 touch -t 201401010000 $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/lib/security/java.security # moving config files to /etc mkdir -p $RPM_BUILD_ROOT/%{etcjavadir -- $suffix}/lib/security/policy/unlimited/ mkdir -p $RPM_BUILD_ROOT/%{etcjavadir -- $suffix}/lib/security/policy/limited/ - for file in lib/security/cacerts lib/security/policy/unlimited/US_export_policy.jar lib/security/policy/unlimited/local_policy.jar lib/security/policy/limited/US_export_policy.jar lib/security/policy/limited/local_policy.jar lib/security/java.policy lib/security/java.security lib/security/blacklisted.certs lib/logging.properties lib/calendars.properties lib/security/nss.cfg lib/security/nss.fips.cfg lib/net.properties ; do + for file in lib/security/cacerts lib/security/policy/unlimited/US_export_policy.jar lib/security/policy/unlimited/local_policy.jar lib/security/policy/limited/US_export_policy.jar lib/security/policy/limited/local_policy.jar lib/security/java.policy lib/security/java.security lib/security/blacklisted.certs lib/logging.properties lib/net.properties ; do mv $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/$file $RPM_BUILD_ROOT/%{etcjavadir -- $suffix}/$file ln -sf %{etcjavadir -- $suffix}/$file $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir -- $suffix}/$file done @@ -1157,7 +940,6 @@ key=java alternatives \ --install %{_bindir}/java $key %{jrebindir}/java $PRIORITY --family %{family} \ --slave %{_jvmdir}/jre jre %{_jvmdir}/%{jredir} \ - --slave %{_bindir}/alt-java alt-java %{jrebindir}/alt-java \ --slave %{_bindir}/jjs jjs %{jrebindir}/jjs \ --slave %{_bindir}/keytool keytool %{jrebindir}/keytool \ --slave %{_bindir}/orbd orbd %{jrebindir}/orbd \ @@ -1375,7 +1157,6 @@ key=java alternatives \ --install %{_bindir}/java $key %{jrebindir -- %{slowdebug_build}}/java $PRIORITY --family %{family} \ --slave %{_jvmdir}/jre jre %{_jvmdir}/%{jredir -- %{slowdebug_build}} \ - --slave %{_bindir}/alt-java alt-java %{jrebindir -- %{slowdebug_build}}/alt-java \ --slave %{_bindir}/jjs jjs %{jrebindir -- %{slowdebug_build}}/jjs \ --slave %{_bindir}/keytool keytool %{jrebindir -- %{slowdebug_build}}/keytool \ --slave %{_bindir}/orbd orbd %{jrebindir -- %{slowdebug_build}}/orbd \ @@ -1623,7 +1404,6 @@ key=java alternatives \ --install %{_bindir}/java $key %{jrebindir -- %{fastdebug_build}}/java $PRIORITY --family %{family} \ --slave %{_jvmdir}/jre jre %{_jvmdir}/%{jredir -- %{fastdebug_build}} \ - --slave %{_bindir}/alt-java alt-java %{jrebindir -- %{fastdebug_build}}/alt-java \ --slave %{_bindir}/jjs jjs %{jrebindir -- %{fastdebug_build}}/jjs \ --slave %{_bindir}/keytool keytool %{jrebindir -- %{fastdebug_build}}/keytool \ --slave %{_bindir}/orbd orbd %{jrebindir -- %{fastdebug_build}}/orbd \ @@ -1813,11 +1593,12 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %if %{with release} %files %{_datadir}/icons/hicolor/*x*/apps/java-%{javaver}-%{origin}.png -%{_datadir}/applications/*policytool.desktop %{_jvmdir}/%{sdkdir}/jre/lib/%{arch_dir}/libjsoundalsa.so %{_jvmdir}/%{sdkdir}/jre/lib/%{arch_dir}/libsplashscreen.so %{_jvmdir}/%{sdkdir}/jre/lib/%{arch_dir}/libawt_xawt.so %{_jvmdir}/%{sdkdir}/jre/lib/%{arch_dir}/libjawt.so +%{_jvmdir}/%{sdkdir}/jre/lib/%{arch_dir}/libjpeg.so +%{_jvmdir}/%{sdkdir}/jre/lib/calendars.properties %{_jvmdir}/%{sdkdir}/jre/bin/policytool %ghost %{_bindir}/policytool @@ -1828,7 +1609,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %license %{_jvmdir}/%{jredir}/ASSEMBLY_EXCEPTION %license %{_jvmdir}/%{jredir}/LICENSE %license %{_jvmdir}/%{jredir}/THIRD_PARTY_README -%doc %{_defaultdocdir}/%{uniquejavadocdir}/NEWS %dir %{_jvmdir}/%{sdkdir} %{_jvmdir}/%{jrelnk} %dir %{_jvmdir}/%{jredir}/lib/security @@ -1837,7 +1617,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %dir %{_jvmdir}/%{jredir}/bin %dir %{_jvmdir}/%{jredir}/lib %{_jvmdir}/%{jredir}/bin/java -%{_jvmdir}/%{jredir}/bin/alt-java %{_jvmdir}/%{jredir}/bin/jjs %{_jvmdir}/%{jredir}/bin/keytool %{_jvmdir}/%{jredir}/bin/orbd @@ -1858,7 +1637,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %config(noreplace) %{etcjavadir}/lib/security/java.security %config(noreplace) %{etcjavadir}/lib/security/blacklisted.certs %config(noreplace) %{etcjavadir}/lib/logging.properties -%config(noreplace) %{etcjavadir}/lib/calendars.properties %{_jvmdir}/%{jredir}/lib/security/policy/unlimited/US_export_policy.jar %{_jvmdir}/%{jredir}/lib/security/policy/unlimited/local_policy.jar %{_jvmdir}/%{jredir}/lib/security/policy/limited/US_export_policy.jar @@ -1867,7 +1645,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{jredir}/lib/security/java.security %{_jvmdir}/%{jredir}/lib/security/blacklisted.certs %{_jvmdir}/%{jredir}/lib/logging.properties -%{_jvmdir}/%{jredir}/lib/calendars.properties %{_mandir}/man1/java-%{uniquesuffix}.1* %{_mandir}/man1/alt-java-%{uniquesuffix}.1* %{_mandir}/man1/jjs-%{uniquesuffix}.1* @@ -1880,10 +1657,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_mandir}/man1/tnameserv-%{uniquesuffix}.1* %{_mandir}/man1/unpack200-%{uniquesuffix}.1* %{_mandir}/man1/policytool-%{uniquesuffix}.1* -%{_jvmdir}/%{jredir}/lib/security/nss.cfg -%{_jvmdir}/%{jredir}/lib/security/nss.fips.cfg -%config(noreplace) %{etcjavadir}/lib/security/nss.cfg -%config(noreplace) %{etcjavadir}/lib/security/nss.fips.cfg %attr(444, root, root) %ghost %{_jvmdir}/%{jredir}/lib/%{arch_dir}/server/classes.jsa %attr(444, root, root) %ghost %{_jvmdir}/%{jredir}/lib/%{arch_dir}/client/classes.jsa %dir %{etcjavasubdir} @@ -1914,7 +1687,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{jredir}/lib/%{arch_dir}/libjaas_unix.so %{_jvmdir}/%{jredir}/lib/%{arch_dir}/libjava.so %{_jvmdir}/%{jredir}/lib/%{arch_dir}/libjava_crw_demo.so -%{_jvmdir}/%{jredir}/lib/%{arch_dir}/libjavajpeg.so %{_jvmdir}/%{jredir}/lib/%{arch_dir}/libjdwp.so %{_jvmdir}/%{jredir}/lib/%{arch_dir}/libjgroup.so %{_jvmdir}/%{jredir}/lib/%{arch_dir}/libjsdt.so @@ -1929,7 +1701,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{jredir}/lib/%{arch_dir}/libsaproc.so %{_jvmdir}/%{jredir}/lib/%{arch_dir}/libsctp.so %{_jvmdir}/%{jredir}/lib/%{arch_dir}/libsunec.so -%{_jvmdir}/%{jredir}/lib/%{arch_dir}/libsystemconf.so %{_jvmdir}/%{jredir}/lib/%{arch_dir}/libunpack.so %{_jvmdir}/%{jredir}/lib/%{arch_dir}/libverify.so %{_jvmdir}/%{jredir}/lib/%{arch_dir}/libzip.so @@ -2005,7 +1776,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{sdkdir}/bin/jar %{_jvmdir}/%{sdkdir}/bin/jarsigner %{_jvmdir}/%{sdkdir}/bin/java -%{_jvmdir}/%{sdkdir}/bin/alt-java %{_jvmdir}/%{sdkdir}/bin/javac %{_jvmdir}/%{sdkdir}/bin/javadoc %{_jvmdir}/%{sdkdir}/bin/javah @@ -2054,7 +1824,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{sdkdir}/lib/dt.jar %{_jvmdir}/%{sdkdir}/lib/jexec %{_jvmdir}/%{sdkdir}/lib/tools.jar -%{_datadir}/applications/*jconsole.desktop %{_mandir}/man1/appletviewer-%{uniquesuffix}.1* %{_mandir}/man1/extcheck-%{uniquesuffix}.1* %{_mandir}/man1/idlj-%{uniquesuffix}.1* @@ -2162,11 +1931,12 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %if %{with slowdebug} %files slowdebug %{_datadir}/icons/hicolor/*x*/apps/java-%{javaver}-%{origin}.png -%{_datadir}/applications/*policytool%{slowdebug_build}.desktop %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/jre/lib/%{arch_dir}/libjsoundalsa.so %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/jre/lib/%{arch_dir}/libsplashscreen.so %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/jre/lib/%{arch_dir}/libawt_xawt.so %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/jre/lib/%{arch_dir}/libjawt.so +%{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/jre/lib/%{arch_dir}/libjpeg.so +%{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/jre/lib/calendars.properties %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/jre/bin/policytool %files headless-slowdebug @@ -2176,7 +1946,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %license %{_jvmdir}/%{jredir -- %{slowdebug_build}}/ASSEMBLY_EXCEPTION %license %{_jvmdir}/%{jredir -- %{slowdebug_build}}/LICENSE %license %{_jvmdir}/%{jredir -- %{slowdebug_build}}/THIRD_PARTY_README -%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{slowdebug_build}}/NEWS %dir %{_jvmdir}/%{sdkdir -- %{slowdebug_build}} %{_jvmdir}/%{jrelnk -- %{slowdebug_build}} %dir %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/security @@ -2185,7 +1954,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %dir %{_jvmdir}/%{jredir -- %{slowdebug_build}}/bin %dir %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib %{_jvmdir}/%{jredir -- %{slowdebug_build}}/bin/java -%{_jvmdir}/%{jredir -- %{slowdebug_build}}/bin/alt-java %{_jvmdir}/%{jredir -- %{slowdebug_build}}/bin/jjs %{_jvmdir}/%{jredir -- %{slowdebug_build}}/bin/keytool %{_jvmdir}/%{jredir -- %{slowdebug_build}}/bin/orbd @@ -2206,7 +1974,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %config(noreplace) %{etcjavadir -- %{slowdebug_build}}/lib/security/java.security %config(noreplace) %{etcjavadir -- %{slowdebug_build}}/lib/security/blacklisted.certs %config(noreplace) %{etcjavadir -- %{slowdebug_build}}/lib/logging.properties -%config(noreplace) %{etcjavadir -- %{slowdebug_build}}/lib/calendars.properties %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/security/policy/unlimited/US_export_policy.jar %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/security/policy/unlimited/local_policy.jar %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/security/policy/limited/US_export_policy.jar @@ -2215,7 +1982,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/security/java.security %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/security/blacklisted.certs %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/logging.properties -%{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/calendars.properties %{_mandir}/man1/java-%{uniquesuffix -- %{slowdebug_build}}.1* %{_mandir}/man1/alt-java-%{uniquesuffix -- %{slowdebug_build}}.1* %{_mandir}/man1/jjs-%{uniquesuffix -- %{slowdebug_build}}.1* @@ -2228,10 +1994,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_mandir}/man1/tnameserv-%{uniquesuffix -- %{slowdebug_build}}.1* %{_mandir}/man1/unpack200-%{uniquesuffix -- %{slowdebug_build}}.1* %{_mandir}/man1/policytool-%{uniquesuffix -- %{slowdebug_build}}.1* -%{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/security/nss.cfg -%{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/security/nss.fips.cfg -%config(noreplace) %{etcjavadir -- %{slowdebug_build}}/lib/security/nss.cfg -%config(noreplace) %{etcjavadir -- %{slowdebug_build}}/lib/security/nss.fips.cfg %attr(444, root, root) %ghost %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/server/classes.jsa %attr(444, root, root) %ghost %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/client/classes.jsa %dir %{etcjavasubdir} @@ -2262,7 +2024,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libjaas_unix.so %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libjava.so %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libjava_crw_demo.so -%{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libjavajpeg.so %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libjdwp.so %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libjgroup.so %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libjsdt.so @@ -2277,7 +2038,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libsaproc.so %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libsctp.so %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libsunec.so -%{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libsystemconf.so %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libunpack.so %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libverify.so %{_jvmdir}/%{jredir -- %{slowdebug_build}}/lib/%{arch_dir}/libzip.so @@ -2340,7 +2100,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/bin/jar %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/bin/jarsigner %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/bin/java -%{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/bin/alt-java %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/bin/javac %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/bin/javadoc %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/bin/javah @@ -2389,7 +2148,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/lib/dt.jar %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/lib/jexec %{_jvmdir}/%{sdkdir -- %{slowdebug_build}}/lib/tools.jar -%{_datadir}/applications/*jconsole%{slowdebug_build}.desktop %{_mandir}/man1/appletviewer-%{uniquesuffix -- %{slowdebug_build}}.1* %{_mandir}/man1/extcheck-%{uniquesuffix -- %{slowdebug_build}}.1* %{_mandir}/man1/idlj-%{uniquesuffix -- %{slowdebug_build}}.1* @@ -2439,11 +2197,12 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %if %{with fastdebug} %files fastdebug %{_datadir}/icons/hicolor/*x*/apps/java-%{javaver}-%{origin}.png -%{_datadir}/applications/*policytool%{fastdebug_build}.desktop %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/jre/lib/%{arch_dir}/libjsoundalsa.so %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/jre/lib/%{arch_dir}/libsplashscreen.so %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/jre/lib/%{arch_dir}/libawt_xawt.so %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/jre/lib/%{arch_dir}/libjawt.so +%{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/jre/lib/%{arch_dir}/libjpeg.so +%{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/jre/lib/calendars.properties %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/jre/bin/policytool %files headless-fastdebug @@ -2452,7 +2211,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %license %{_jvmdir}/%{jredir -- %{fastdebug_build}}/ASSEMBLY_EXCEPTION %license %{_jvmdir}/%{jredir -- %{fastdebug_build}}/LICENSE %license %{_jvmdir}/%{jredir -- %{fastdebug_build}}/THIRD_PARTY_README -%doc %{_defaultdocdir}/%{uniquejavadocdir -- %{fastdebug_build}}/NEWS %dir %{_jvmdir}/%{sdkdir -- %{fastdebug_build}} %{_jvmdir}/%{jrelnk -- %{fastdebug_build}} %dir %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/security @@ -2461,7 +2219,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %dir %{_jvmdir}/%{jredir -- %{fastdebug_build}}/bin %dir %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib %{_jvmdir}/%{jredir -- %{fastdebug_build}}/bin/java -%{_jvmdir}/%{jredir -- %{fastdebug_build}}/bin/alt-java %{_jvmdir}/%{jredir -- %{fastdebug_build}}/bin/jjs %{_jvmdir}/%{jredir -- %{fastdebug_build}}/bin/keytool %{_jvmdir}/%{jredir -- %{fastdebug_build}}/bin/orbd @@ -2482,7 +2239,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %config(noreplace) %{etcjavadir -- %{fastdebug_build}}/lib/security/java.security %config(noreplace) %{etcjavadir -- %{fastdebug_build}}/lib/security/blacklisted.certs %config(noreplace) %{etcjavadir -- %{fastdebug_build}}/lib/logging.properties -%config(noreplace) %{etcjavadir -- %{fastdebug_build}}/lib/calendars.properties %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/security/policy/unlimited/US_export_policy.jar %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/security/policy/unlimited/local_policy.jar %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/security/policy/limited/US_export_policy.jar @@ -2491,7 +2247,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/security/java.security %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/security/blacklisted.certs %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/logging.properties -%{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/calendars.properties %{_mandir}/man1/java-%{uniquesuffix -- %{fastdebug_build}}.1* %{_mandir}/man1/alt-java-%{uniquesuffix -- %{fastdebug_build}}.1* %{_mandir}/man1/jjs-%{uniquesuffix -- %{fastdebug_build}}.1* @@ -2504,10 +2259,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_mandir}/man1/tnameserv-%{uniquesuffix -- %{fastdebug_build}}.1* %{_mandir}/man1/unpack200-%{uniquesuffix -- %{fastdebug_build}}.1* %{_mandir}/man1/policytool-%{uniquesuffix -- %{fastdebug_build}}.1* -%{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/security/nss.cfg -%{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/security/nss.fips.cfg -%config(noreplace) %{etcjavadir -- %{fastdebug_build}}/lib/security/nss.cfg -%config(noreplace) %{etcjavadir -- %{fastdebug_build}}/lib/security/nss.fips.cfg %attr(444, root, root) %ghost %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/server/classes.jsa %attr(444, root, root) %ghost %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/client/classes.jsa %dir %{etcjavasubdir} @@ -2538,7 +2289,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libjaas_unix.so %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libjava.so %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libjava_crw_demo.so -%{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libjavajpeg.so %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libjdwp.so %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libjgroup.so %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libjsdt.so @@ -2553,7 +2303,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libsaproc.so %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libsctp.so %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libsunec.so -%{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libsystemconf.so %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libunpack.so %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libverify.so %{_jvmdir}/%{jredir -- %{fastdebug_build}}/lib/%{arch_dir}/libzip.so @@ -2616,7 +2365,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/bin/jar %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/bin/jarsigner %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/bin/java -%{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/bin/alt-java %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/bin/javac %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/bin/javadoc %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/bin/javah @@ -2665,7 +2413,6 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/lib/dt.jar %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/lib/jexec %{_jvmdir}/%{sdkdir -- %{fastdebug_build}}/lib/tools.jar -%{_datadir}/applications/*jconsole%{fastdebug_build}.desktop %{_mandir}/man1/appletviewer-%{uniquesuffix -- %{fastdebug_build}}.1* %{_mandir}/man1/extcheck-%{uniquesuffix -- %{fastdebug_build}}.1* %{_mandir}/man1/idlj-%{uniquesuffix -- %{fastdebug_build}}.1* @@ -2709,6 +2456,9 @@ alternatives --install %{_jvmdir}/java-%{javaver}-%{origin} $key %{_jvmdir}/%{sd %endif %changelog +* Thu Nov 23 2023 lvfei.lv - 3:8.15.16.372-3 +- remove all patches + * Fri Sep 15 2023 lvfei.lv - 3:8.15.16.372-2 - fix the version of package diff --git a/java-1.8.0-openjdk-remove-intree-libraries.sh b/java-1.8.0-openjdk-remove-intree-libraries.sh deleted file mode 100644 index 201a2209060aaf8a2544578e6aac2e6f4f7bf6ea..0000000000000000000000000000000000000000 --- a/java-1.8.0-openjdk-remove-intree-libraries.sh +++ /dev/null @@ -1,131 +0,0 @@ -#!/bin/sh - -ZIP_SRC=openjdk/jdk/src/share/native/java/util/zip/zlib -JPEG_SRC=openjdk/jdk/src/share/native/sun/awt/image/jpeg -GIF_SRC=openjdk/jdk/src/share/native/sun/awt/giflib -PNG_SRC=openjdk/jdk/src/share/native/sun/awt/libpng -LCMS_SRC=openjdk/jdk/src/share/native/sun/java2d/cmm/lcms - -echo "Removing built-in libs (they will be linked)" - -echo "Removing zlib" -if [ ! -d ${ZIP_SRC} ]; then - echo "${ZIP_SRC} does not exist. Refusing to proceed." - exit 1 -fi -rm -rvf ${ZIP_SRC} - -echo "Removing libjpeg" -if [ ! -f ${JPEG_SRC}/jdhuff.c ]; then # some file that sound definitely exist - echo "${JPEG_SRC} does not contain jpeg sources. Refusing to proceed." - exit 1 -fi - -rm -vf ${JPEG_SRC}/jcomapi.c -rm -vf ${JPEG_SRC}/jdapimin.c -rm -vf ${JPEG_SRC}/jdapistd.c -rm -vf ${JPEG_SRC}/jdcoefct.c -rm -vf ${JPEG_SRC}/jdcolor.c -rm -vf ${JPEG_SRC}/jdct.h -rm -vf ${JPEG_SRC}/jddctmgr.c -rm -vf ${JPEG_SRC}/jdhuff.c -rm -vf ${JPEG_SRC}/jdhuff.h -rm -vf ${JPEG_SRC}/jdinput.c -rm -vf ${JPEG_SRC}/jdmainct.c -rm -vf ${JPEG_SRC}/jdmarker.c -rm -vf ${JPEG_SRC}/jdmaster.c -rm -vf ${JPEG_SRC}/jdmerge.c -rm -vf ${JPEG_SRC}/jdphuff.c -rm -vf ${JPEG_SRC}/jdpostct.c -rm -vf ${JPEG_SRC}/jdsample.c -rm -vf ${JPEG_SRC}/jerror.c -rm -vf ${JPEG_SRC}/jerror.h -rm -vf ${JPEG_SRC}/jidctflt.c -rm -vf ${JPEG_SRC}/jidctfst.c -rm -vf ${JPEG_SRC}/jidctint.c -rm -vf ${JPEG_SRC}/jidctred.c -rm -vf ${JPEG_SRC}/jinclude.h -rm -vf ${JPEG_SRC}/jmemmgr.c -rm -vf ${JPEG_SRC}/jmemsys.h -rm -vf ${JPEG_SRC}/jmemnobs.c -rm -vf ${JPEG_SRC}/jmorecfg.h -rm -vf ${JPEG_SRC}/jpegint.h -rm -vf ${JPEG_SRC}/jpeglib.h -rm -vf ${JPEG_SRC}/jquant1.c -rm -vf ${JPEG_SRC}/jquant2.c -rm -vf ${JPEG_SRC}/jutils.c -rm -vf ${JPEG_SRC}/jcapimin.c -rm -vf ${JPEG_SRC}/jcapistd.c -rm -vf ${JPEG_SRC}/jccoefct.c -rm -vf ${JPEG_SRC}/jccolor.c -rm -vf ${JPEG_SRC}/jcdctmgr.c -rm -vf ${JPEG_SRC}/jchuff.c -rm -vf ${JPEG_SRC}/jchuff.h -rm -vf ${JPEG_SRC}/jcinit.c -rm -vf ${JPEG_SRC}/jconfig.h -rm -vf ${JPEG_SRC}/jcmainct.c -rm -vf ${JPEG_SRC}/jcmarker.c -rm -vf ${JPEG_SRC}/jcmaster.c -rm -vf ${JPEG_SRC}/jcparam.c -rm -vf ${JPEG_SRC}/jcphuff.c -rm -vf ${JPEG_SRC}/jcprepct.c -rm -vf ${JPEG_SRC}/jcsample.c -rm -vf ${JPEG_SRC}/jctrans.c -rm -vf ${JPEG_SRC}/jdtrans.c -rm -vf ${JPEG_SRC}/jfdctflt.c -rm -vf ${JPEG_SRC}/jfdctfst.c -rm -vf ${JPEG_SRC}/jfdctint.c -rm -vf ${JPEG_SRC}/jversion.h -rm -vf ${JPEG_SRC}/README - -echo "Removing giflib" -if [ ! -d ${GIF_SRC} ]; then - echo "${GIF_SRC} does not exist. Refusing to proceed." - exit 1 -fi -rm -rvf ${GIF_SRC} - -echo "Removing libpng" -if [ ! -d ${PNG_SRC} ]; then - echo "${PNG_SRC} does not exist. Refusing to proceed." - exit 1 -fi -rm -rvf ${PNG_SRC} - -echo "Removing lcms" -if [ ! -d ${LCMS_SRC} ]; then - echo "${LCMS_SRC} does not exist. Refusing to proceed." - exit 1 -fi -# temporary change to move bundled LCMS -if [ ! true ]; then -rm -vf ${LCMS_SRC}/cmsalpha.c -rm -vf ${LCMS_SRC}/cmscam02.c -rm -vf ${LCMS_SRC}/cmscgats.c -rm -vf ${LCMS_SRC}/cmscnvrt.c -rm -vf ${LCMS_SRC}/cmserr.c -rm -vf ${LCMS_SRC}/cmsgamma.c -rm -vf ${LCMS_SRC}/cmsgmt.c -rm -vf ${LCMS_SRC}/cmshalf.c -rm -vf ${LCMS_SRC}/cmsintrp.c -rm -vf ${LCMS_SRC}/cmsio0.c -rm -vf ${LCMS_SRC}/cmsio1.c -rm -vf ${LCMS_SRC}/cmslut.c -rm -vf ${LCMS_SRC}/cmsmd5.c -rm -vf ${LCMS_SRC}/cmsmtrx.c -rm -vf ${LCMS_SRC}/cmsnamed.c -rm -vf ${LCMS_SRC}/cmsopt.c -rm -vf ${LCMS_SRC}/cmspack.c -rm -vf ${LCMS_SRC}/cmspcs.c -rm -vf ${LCMS_SRC}/cmsplugin.c -rm -vf ${LCMS_SRC}/cmsps2.c -rm -vf ${LCMS_SRC}/cmssamp.c -rm -vf ${LCMS_SRC}/cmssm.c -rm -vf ${LCMS_SRC}/cmstypes.c -rm -vf ${LCMS_SRC}/cmsvirt.c -rm -vf ${LCMS_SRC}/cmswtpnt.c -rm -vf ${LCMS_SRC}/cmsxform.c -rm -vf ${LCMS_SRC}/lcms2.h -rm -vf ${LCMS_SRC}/lcms2_internal.h -rm -vf ${LCMS_SRC}/lcms2_plugin.h -fi diff --git a/jconsole.desktop.in b/jconsole.desktop.in deleted file mode 100644 index 8a3b04d96ad002afa677ca8f6d7683bedac1dff8..0000000000000000000000000000000000000000 --- a/jconsole.desktop.in +++ /dev/null @@ -1,10 +0,0 @@ -[Desktop Entry] -Name=OpenJDK @JAVA_VER@ for @target_cpu@ Monitoring & Management Console (@OPENJDK_VER@) -Comment=Monitor and manage OpenJDK applications -Exec=_SDKBINDIR_/jconsole -Icon=java-@JAVA_VER@-@JAVA_VENDOR@ -Terminal=false -Type=Application -StartupWMClass=sun-tools-jconsole-JConsole -Categories=Development;Profiling;Java; -Version=1.0 diff --git a/jdk8035341-allow_using_system_installed_libpng.patch b/jdk8035341-allow_using_system_installed_libpng.patch deleted file mode 100644 index 53661d8c43e8a898f318e9fa7da6dbc40c1b7b41..0000000000000000000000000000000000000000 --- a/jdk8035341-allow_using_system_installed_libpng.patch +++ /dev/null @@ -1,115 +0,0 @@ -diff -ruN jdk8/common/autoconf/libraries.m4 jdk8/common/autoconf/libraries.m4 ---- jdk8/common/autoconf/libraries.m4 2013-11-14 20:08:01.845065585 -0500 -+++ jdk8/common/autoconf/libraries.m4 2013-11-14 20:10:56.186553066 -0500 -@@ -676,6 +676,47 @@ - - ############################################################################### - # -+ # Check for the png library -+ # -+ -+ AC_ARG_WITH(libpng, [AS_HELP_STRING([--with-libpng], -+ [use libpng from build system or OpenJDK source (system, bundled) @<:@bundled@:>@])]) -+ -+ AC_CHECK_LIB(png, png_sig_cmp, -+ [ LIBPNG_FOUND=yes ], -+ [ LIBPNG_FOUND=no ]) -+ -+ AC_MSG_CHECKING([for which libpng to use]) -+ -+ # default is bundled -+ DEFAULT_LIBPNG=bundled -+ -+ # -+ # if user didn't specify, use DEFAULT_LIBPNG -+ # -+ if test "x${with_libpng}" = "x"; then -+ with_libpng=${DEFAULT_libpng} -+ fi -+ -+ -+ if test "x${with_libpng}" = "xbundled"; then -+ USE_EXTERNAL_LIBPNG=false -+ AC_MSG_RESULT([bundled]) -+ elif test "x${with_libpng}" = "xsystem"; then -+ if test "x${LIBPNG_FOUND}" = "xyes"; then -+ USE_EXTERNAL_LIBPNG=true -+ AC_MSG_RESULT([system]) -+ else -+ AC_MSG_RESULT([system not found]) -+ AC_MSG_ERROR([--with-libpng=system specified, but no libpng found!]) -+ fi -+ else -+ AC_MSG_ERROR([Invalid value of --with-libpng: ${with_libpng}, use 'system' or 'bundled']) -+ fi -+ AC_SUBST(USE_EXTERNAL_LIBPNG) -+ -+ ############################################################################### -+ # - # Check for the zlib library - # - -diff -ruN jdk8/common/autoconf/spec.gmk.in jdk8/common/autoconf/spec.gmk.in ---- jdk8/common/autoconf/spec.gmk.in 2013-10-31 19:24:33.000000000 -0400 -+++ jdk8/common/autoconf/spec.gmk.in 2013-11-14 21:10:56.365976518 -0500 -@@ -548,6 +548,7 @@ - ENABLE_JFR=@ENABLE_JFR@ - ENABLE_INTREE_EC=@ENABLE_INTREE_EC@ - USE_EXTERNAL_LIBJPEG:=@USE_EXTERNAL_LIBJPEG@ -+USE_EXTERNAL_LIBPNG:=@USE_EXTERNAL_LIBPNG@ - USE_EXTERNAL_LIBGIF:=@USE_EXTERNAL_LIBGIF@ - USE_EXTERNAL_LIBZ:=@USE_EXTERNAL_LIBZ@ - LIBZIP_CAN_USE_MMAP:=@LIBZIP_CAN_USE_MMAP@ -diff -ruN jdk8/jdk/make/lib/Awt2dLibraries.gmk jdk8/jdk/make/lib/Awt2dLibraries.gmk ---- jdk8/jdk/make/lib/Awt2dLibraries.gmk 2013-11-14 20:08:01.845065585 -0500 -+++ jdk8/jdk/make/lib/Awt2dLibraries.gmk 2013-11-14 20:14:10.791982343 -0500 -@@ -1183,7 +1183,6 @@ - - ifndef BUILD_HEADLESS_ONLY - LIBSPLASHSCREEN_DIRS := \ -- $(JDK_TOPDIR)/src/share/native/sun/awt/libpng \ - $(JDK_TOPDIR)/src/share/native/sun/awt/splashscreen - - ifeq ($(USE_EXTERNAL_LIBGIF), true) -@@ -1200,6 +1199,13 @@ - LIBJPEG_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/awt/jpeg - endif - -+ ifeq ($(USE_EXTERNAL_LIBPNG), true) -+ LIBPNG_LDFLAGS := -lpng -+ else -+ LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/share/native/sun/awt/image/libpng -+ LIBPNG_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/awt/libpng -+ endif -+ - ifneq ($(OPENJDK_TARGET_OS), macosx) - LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt/splashscreen - else -@@ -1263,12 +1269,12 @@ - LANG := C, \ - OPTIMIZATION := LOW, \ - CFLAGS := $(LIBSPLASHSCREEN_CFLAGS) $(CFLAGS_JDKLIB) \ -- $(GIFLIB_CFLAGS) $(LIBJPEG_CFLAGS), \ -+ $(GIFLIB_CFLAGS) $(LIBJPEG_CFLAGS) $(LIBPNG_CFLAGS), \ - MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libsplashscreen/mapfile-vers, \ - LDFLAGS := $(LDFLAGS_JDKLIB) \ - $(call SET_SHARED_LIBRARY_ORIGIN), \ - LDFLAGS_SUFFIX := $(LIBSPLASHSCREEN_LDFLAGS_SUFFIX) \ -- $(LIBZ) $(GIFLIB_LDFLAGS) $(LIBJPEG_LDFLAGS), \ -+ $(LIBZ) $(GIFLIB_LDFLAGS) $(LIBJPEG_LDFLAGS) $(LIBPNG_LDFLAGS), \ - LDFLAGS_SUFFIX_solaris := -lc, \ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ - RC_FLAGS := $(RC_FLAGS) \ -diff -ruN jdk8/jdk/src/share/native/sun/awt/splashscreen/splashscreen_png.c jdk8/jdk/src/share/native/sun/awt/splashscreen/splashscreen_png.c ---- jdk8/jdk/src/share/native/sun/awt/splashscreen/splashscreen_png.c 2013-10-31 19:44:18.000000000 -0400 -+++ jdk8/jdk/src/share/native/sun/awt/splashscreen/splashscreen_png.c 2013-11-14 20:14:41.363892797 -0500 -@@ -25,8 +25,7 @@ - - #include "splashscreen_impl.h" - --#include "../libpng/png.h" -- -+#include - #include - - #define SIG_BYTES 8 diff --git a/jdk8042159-allow_using_system_installed_lcms2-jdk.patch b/jdk8042159-allow_using_system_installed_lcms2-jdk.patch deleted file mode 100644 index ebfbdd29edf690c049fc048f4413f970ed51febb..0000000000000000000000000000000000000000 --- a/jdk8042159-allow_using_system_installed_lcms2-jdk.patch +++ /dev/null @@ -1,68 +0,0 @@ -diff --git openjdk.orig/jdk/make/lib/Awt2dLibraries.gmk openjdk/jdk/make/lib/Awt2dLibraries.gmk ---- openjdk.orig/jdk/make/lib/Awt2dLibraries.gmk -+++ openjdk/jdk/make/lib/Awt2dLibraries.gmk -@@ -665,18 +665,35 @@ - endif - endif - -+LIBLCMS_DIR := $(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms -+ -+ifeq ($(USE_EXTERNAL_LCMS), true) -+ # If we're using an external library, we'll just need the wrapper part. -+ # By including it explicitely, all other files will be excluded. -+ BUILD_LIBLCMS_INCLUDE_FILES := LCMS.c -+ BUILD_LIBLCMS_HEADERS := -+else -+ BUILD_LIBLCMS_INCLUDE_FILES := -+ # If we're using the bundled library, we'll need to include it in the -+ # include path explicitly. Otherwise the system headers will be used. -+ BUILD_LIBLCMS_HEADERS := -I$(LIBLCMS_DIR) -+endif -+ - # TODO: Update awt lib path when awt is converted - $(eval $(call SetupNativeCompilation,BUILD_LIBLCMS, \ - LIBRARY := lcms, \ - OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ -- SRC := $(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms, \ -+ SRC := $(LIBLCMS_DIR), \ -+ INCLUDE_FILES := $(BUILD_LIBLCMS_INCLUDE_FILES), \ - LANG := C, \ - OPTIMIZATION := HIGHEST, \ - CFLAGS := $(filter-out -xc99=%none, $(CFLAGS_JDKLIB)) \ - -DCMS_DONT_USE_FAST_FLOOR \ - $(SHARED_LIBRARY_FLAGS) \ - -I$(JDK_TOPDIR)/src/share/native/sun/java2d \ -- -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug, \ -+ -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \ -+ $(BUILD_LIBLCMS_HEADERS) \ -+ $(LCMS_CFLAGS), \ - CFLAGS_solaris := -xc99=no_lib, \ - CFLAGS_windows := -DCMS_IS_WINDOWS_, \ - MAPFILE := $(JDK_TOPDIR)/make/mapfiles/liblcms/mapfile-vers, \ -@@ -684,10 +701,10 @@ - $(call SET_SHARED_LIBRARY_ORIGIN), \ - LDFLAGS_solaris := /usr/lib$(OPENJDK_TARGET_CPU_ISADIR)/libm.so.2, \ - LDFLAGS_windows := $(WIN_AWT_LIB) $(WIN_JAVA_LIB), \ -- LDFLAGS_SUFFIX_solaris := -lawt -ljava -ljvm -lc, \ -- LDFLAGS_SUFFIX_macosx := $(LIBM) -lawt -ljava -ljvm, \ -- LDFLAGS_SUFFIX_linux := -lm -lawt -ljava -ljvm, \ -- LDFLAGS_SUFFIX_aix := -lm -lawt -ljava -ljvm,\ -+ LDFLAGS_SUFFIX_solaris := -lawt -ljava -ljvm -lc $(LCMS_LIBS), \ -+ LDFLAGS_SUFFIX_macosx := $(LIBM) -lawt -ljava -ljvm $(LCMS_LIBS), \ -+ LDFLAGS_SUFFIX_linux := -lm -lawt -ljava -ljvm $(LCMS_LIBS), \ -+ LDFLAGS_SUFFIX_aix := -lm -lawt -ljava -ljvm $(LCMS_LIBS),\ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ - RC_FLAGS := $(RC_FLAGS) \ - -D "JDK_FNAME=lcms.dll" \ -diff --git openjdk.orig/jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c ---- openjdk.orig/jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c -+++ openjdk/jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c -@@ -30,7 +30,7 @@ - #include "jni_util.h" - #include "Trace.h" - #include "Disposer.h" --#include "lcms2.h" -+#include - #include "jlong.h" - - diff --git a/jdk8042159-allow_using_system_installed_lcms2-root.patch b/jdk8042159-allow_using_system_installed_lcms2-root.patch deleted file mode 100644 index 7ce90b17540136b58380ad5fe47a969613d0cb85..0000000000000000000000000000000000000000 --- a/jdk8042159-allow_using_system_installed_lcms2-root.patch +++ /dev/null @@ -1,50 +0,0 @@ -diff -ruN openjdk/common/autoconf/libraries.m4 openjdk/common/autoconf/libraries.m4 ---- openjdk/common/autoconf/libraries.m4 2013-11-14 22:04:38.039440136 -0500 -+++ openjdk/common/autoconf/libraries.m4 2013-11-14 22:05:11.474356424 -0500 -@@ -676,6 +676,46 @@ - - ############################################################################### - # -+ # Check for the lcms2 library -+ # -+ -+ AC_ARG_WITH(lcms, [AS_HELP_STRING([--with-lcms], -+ [use lcms2 from build system or OpenJDK source (system, bundled) @<:@bundled@:>@])]) -+ -+ AC_CHECK_LIB(lcms2, cmsOpenProfileFromFile, -+ [ LCMS_FOUND=yes ], -+ [ LCMS_FOUND=no ]) -+ -+ AC_MSG_CHECKING([for which lcms to use]) -+ -+ DEFAULT_LCMS=bundled -+ -+ # -+ # If user didn't specify, use DEFAULT_LCMS -+ # -+ if test "x${with_lcms}" = "x"; then -+ with_lcms=${DEFAULT_LCMS} -+ fi -+ -+ if test "x${with_lcms}" = "xbundled"; then -+ USE_EXTERNAL_LCMS=false -+ AC_MSG_RESULT([bundled]) -+ elif test "x${with_lcms}" = "xsystem"; then -+ if test "x${LCMS_FOUND}" = "xyes"; then -+ USE_EXTERNAL_LCMS=true -+ AC_MSG_RESULT([system]) -+ else -+ AC_MSG_RESULT([system not found]) -+ AC_MSG_ERROR([--with-lcms=system specified, but no lcms found!]) -+ fi -+ else -+ AC_MSG_ERROR([Invalid value for --with-lcms: ${with_lcms}, use 'system' or 'bundled']) -+ fi -+ -+ AC_SUBST(USE_EXTERNAL_LCMS) -+ -+ ############################################################################### -+ # - # Check for the png library - # - diff --git a/jdk8043805-allow_using_system_installed_libjpeg.patch b/jdk8043805-allow_using_system_installed_libjpeg.patch deleted file mode 100644 index 003f32bf37f228d31bdd93ebbb1c528a6e3a1777..0000000000000000000000000000000000000000 --- a/jdk8043805-allow_using_system_installed_libjpeg.patch +++ /dev/null @@ -1,228 +0,0 @@ -diff -ruN jdk8/common/autoconf/libraries.m4 jdk8/common/autoconf/libraries.m4 ---- jdk8/common/autoconf/libraries.m4 2013-10-31 19:24:33.000000000 -0400 -+++ jdk8/common/autoconf/libraries.m4 2013-11-14 21:55:20.249903347 -0500 -@@ -601,12 +601,42 @@ - # - - USE_EXTERNAL_LIBJPEG=true -- AC_CHECK_LIB(jpeg, main, [], -- [ USE_EXTERNAL_LIBJPEG=false -- AC_MSG_NOTICE([Will use jpeg decoder bundled with the OpenJDK source]) -- ]) -+ AC_ARG_WITH(libjpeg, [AS_HELP_STRING([--with-libjpeg], -+ [use libjpeg from build system or OpenJDK sources (system, bundled) @<:@bundled@:>@])]) -+ -+ AC_CHECK_LIB(jpeg, jpeg_destroy_compress, -+ [ LIBJPEG_FOUND=yes ], -+ [ LIBJPEG_FOUND=no ]) -+ -+ AC_MSG_CHECKING([for which libjpeg to use]) -+ -+ # default is bundled -+ DEFAULT_LIBJPEG=bundled -+ -+ # -+ # if user didn't specify, use DEFAULT_LIBJPEG -+ # -+ if test "x${with_libjpeg}" = "x"; then -+ with_libjpeg=${DEFAULT_LIBJPEG} -+ fi -+ -+ if test "x${with_libjpeg}" = "xbundled"; then -+ USE_EXTERNAL_LIBJPEG=false -+ AC_MSG_RESULT([bundled]) -+ elif test "x${with_libjpeg}" = "xsystem"; then -+ if test "x${LIBJPEG_FOUND}" = "xyes"; then -+ USE_EXTERNAL_LIBJPEG=true -+ AC_MSG_RESULT([system]) -+ else -+ AC_MSG_RESULT([system not found]) -+ AC_MSG_ERROR([--with-libjpeg=system specified, but no libjpeg found]) -+ fi -+ else -+ AC_MSG_ERROR([Invalid use of --with-libjpeg: ${with_libjpeg}, use 'system' or 'bundled']) -+ fi - AC_SUBST(USE_EXTERNAL_LIBJPEG) - -+ - ############################################################################### - # - # Check for the gif library -diff -ruN jdk8/jdk/make/lib/Awt2dLibraries.gmk jdk8/jdk/make/lib/Awt2dLibraries.gmk ---- jdk8/jdk/make/lib/Awt2dLibraries.gmk 2013-10-31 19:44:18.000000000 -0400 -+++ jdk8/jdk/make/lib/Awt2dLibraries.gmk 2013-11-14 21:56:01.020796703 -0500 -@@ -693,17 +693,17 @@ - ########################################################################################## - - ifdef OPENJDK -- BUILD_LIBJPEG_MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjpeg/mapfile-vers -+ BUILD_LIBJAVAJPEG_MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjpeg/mapfile-vers - else -- BUILD_LIBJPEG_MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjpeg/mapfile-vers-closed -- BUILD_LIBJPEG_CLOSED_SRC := $(JDK_TOPDIR)/src/closed/share/native/sun/awt/image/jpeg -- BUILD_LIBJPEG_CLOSED_INCLUDES := -I$(BUILD_LIBJPEG_CLOSED_SRC) -+ BUILD_LIBJAVAJPEG_MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjpeg/mapfile-vers-closed -+ BUILD_LIBJAVAJPEG_CLOSED_SRC := $(JDK_TOPDIR)/src/closed/share/native/sun/awt/image/jpeg -+ BUILD_LIBJAVAJPEG_CLOSED_INCLUDES := -I$(BUILD_LIBJPEG_CLOSED_SRC) - endif - --BUILD_LIBJPEG_REORDER := -+BUILD_LIBJAVAJPEG_REORDER := - ifeq ($(OPENJDK_TARGET_OS), solaris) - ifneq ($(OPENJDK_TARGET_CPU), x86_64) -- BUILD_LIBJPEG_REORDER := $(JDK_TOPDIR)/make/mapfiles/libjpeg/reorder-$(OPENJDK_TARGET_CPU) -+ BUILD_LIBJAVAJPEG_REORDER := $(JDK_TOPDIR)/make/mapfiles/libjpeg/reorder-$(OPENJDK_TARGET_CPU) - endif - endif - -@@ -718,37 +718,38 @@ - # $(shell $(EXPR) $(CC_MAJORVER) \> 4 \| \ - # \( $(CC_MAJORVER) = 4 \& $(CC_MINORVER) \>= 3 \) ) - # ifeq ($(CC_43_OR_NEWER), 1) --# BUILD_LIBJPEG_CFLAGS_linux += -Wno-clobbered -+# BUILD_LIBJAVAJPEG_CFLAGS_linux += -Wno-clobbered - # endif - #endif - --$(eval $(call SetupNativeCompilation,BUILD_LIBJPEG, \ -- LIBRARY := jpeg, \ -+$(eval $(call SetupNativeCompilation,BUILD_LIBJAVAJPEG, \ -+ LIBRARY := javajpeg, \ - OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ -- SRC := $(BUILD_LIBJPEG_CLOSED_SRC) \ -+ SRC := $(BUILD_LIBJAVAJPEG_CLOSED_SRC) \ - $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg, \ - LANG := C, \ - OPTIMIZATION := HIGHEST, \ - CFLAGS := $(CFLAGS_JDKLIB) \ -- $(BUILD_LIBJPEG_CLOSED_INCLUDES) \ -+ $(BUILD_LIBJAVAJPEG_CLOSED_INCLUDES) \ - -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg, \ -- MAPFILE := $(BUILD_LIBJPEG_MAPFILE), \ -- LDFLAGS := $(LDFLAGS_JDKLIB) \ -+ MAPFILE := $(BUILD_LIBJAVAJPEG_MAPFILE), \ -+ LDFLAGS := $(subst -Xlinker --as-needed,, \ -+ $(subst -Wl$(COMMA)--as-needed,, $(LDFLAGS_JDKLIB))) -ljpeg \ - $(call SET_SHARED_LIBRARY_ORIGIN), \ - LDFLAGS_windows := $(WIN_JAVA_LIB) jvm.lib, \ - LDFLAGS_SUFFIX := $(LDFLAGS_JDKLIB_SUFFIX), \ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ - RC_FLAGS := $(RC_FLAGS) \ -- -D "JDK_FNAME=jpeg.dll" \ -- -D "JDK_INTERNAL_NAME=jpeg" \ -+ -D "JDK_FNAME=javajpeg.dll" \ -+ -D "JDK_INTERNAL_NAME=javajpeg" \ - -D "JDK_FTYPE=0x2L", \ -- REORDER := $(BUILD_LIBJPEG_REORDER), \ -- OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjpeg, \ -+ REORDER := $(BUILD_LIBJAVAJPEG_REORDER), \ -+ OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjavajpeg, \ - DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) - --$(BUILD_LIBJPEG): $(BUILD_LIBJAVA) -+$(BUILD_LIBJAVAJPEG): $(BUILD_LIBJAVA) - --BUILD_LIBRARIES += $(BUILD_LIBJPEG) -+BUILD_LIBRARIES += $(BUILD_LIBJAVAJPEG) - - ########################################################################################## - -@@ -1127,7 +1128,6 @@ - - ifndef BUILD_HEADLESS_ONLY - LIBSPLASHSCREEN_DIRS := \ -- $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg \ - $(JDK_TOPDIR)/src/share/native/sun/awt/libpng \ - $(JDK_TOPDIR)/src/share/native/sun/awt/splashscreen - -@@ -1138,6 +1138,13 @@ - GIFLIB_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/awt/giflib - endif - -+ ifeq ($(USE_EXTERNAL_LIBJPEG), true) -+ LIBJPEG_LDFLAGS := -ljpeg -+ else -+ LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg -+ LIBJPEG_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/awt/jpeg -+ endif -+ - ifneq ($(OPENJDK_TARGET_OS), macosx) - LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt/splashscreen - else -@@ -1193,11 +1200,13 @@ - EXCLUDE_FILES := imageioJPEG.c jpegdecoder.c pngtest.c, \ - LANG := C, \ - OPTIMIZATION := LOW, \ -- CFLAGS := $(LIBSPLASHSCREEN_CFLAGS) $(CFLAGS_JDKLIB) $(GIFLIB_CFLAGS), \ -+ CFLAGS := $(LIBSPLASHSCREEN_CFLAGS) $(CFLAGS_JDKLIB) \ -+ $(GIFLIB_CFLAGS) $(LIBJPEG_CFLAGS), \ - MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libsplashscreen/mapfile-vers, \ - LDFLAGS := $(LDFLAGS_JDKLIB) \ - $(call SET_SHARED_LIBRARY_ORIGIN), \ -- LDFLAGS_SUFFIX := $(LIBSPLASHSCREEN_LDFLAGS_SUFFIX) $(LIBZ) $(GIFLIB_LDFLAGS), \ -+ LDFLAGS_SUFFIX := $(LIBSPLASHSCREEN_LDFLAGS_SUFFIX) \ -+ $(LIBZ) $(GIFLIB_LDFLAGS) $(LIBJPEG_LDFLAGS), \ - LDFLAGS_SUFFIX_solaris := -lc, \ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ - RC_FLAGS := $(RC_FLAGS) \ -diff -ruN jdk8/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java jdk8/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java ---- jdk8/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java 2013-10-31 19:44:18.000000000 -0400 -+++ jdk8/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java 2013-11-14 21:55:20.250903340 -0500 -@@ -89,7 +89,7 @@ - java.security.AccessController.doPrivileged( - new java.security.PrivilegedAction() { - public Void run() { -- System.loadLibrary("jpeg"); -+ System.loadLibrary("javajpeg"); - return null; - } - }); -diff -ruN jdk8/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java jdk8/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java ---- jdk8/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java 2013-10-31 19:44:18.000000000 -0400 -+++ jdk8/jdk/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java 2013-11-14 21:55:20.250903340 -0500 -@@ -179,7 +179,7 @@ - java.security.AccessController.doPrivileged( - new java.security.PrivilegedAction() { - public Void run() { -- System.loadLibrary("jpeg"); -+ System.loadLibrary("javajpeg"); - return null; - } - }); -diff -ruN jdk8/jdk/src/share/classes/sun/awt/image/JPEGImageDecoder.java jdk8/jdk/src/share/classes/sun/awt/image/JPEGImageDecoder.java ---- jdk8/jdk/src/share/classes/sun/awt/image/JPEGImageDecoder.java 2013-10-31 19:44:18.000000000 -0400 -+++ jdk8/jdk/src/share/classes/sun/awt/image/JPEGImageDecoder.java 2013-11-14 21:55:20.251903376 -0500 -@@ -56,7 +56,7 @@ - java.security.AccessController.doPrivileged( - new java.security.PrivilegedAction() { - public Void run() { -- System.loadLibrary("jpeg"); -+ System.loadLibrary("javajpeg"); - return null; - } - }); -diff -ruN jdk8/jdk/src/share/native/sun/awt/splashscreen/splashscreen_jpeg.c jdk8/jdk/src/share/native/sun/awt/splashscreen/splashscreen_jpeg.c ---- jdk8/jdk/src/share/native/sun/awt/splashscreen/splashscreen_jpeg.c 2013-10-31 19:44:18.000000000 -0400 -+++ jdk8/jdk/src/share/native/sun/awt/splashscreen/splashscreen_jpeg.c 2013-11-14 21:55:20.251903376 -0500 -@@ -25,7 +25,6 @@ - - #include "splashscreen_impl.h" - --#include "jinclude.h" - #include "jpeglib.h" - #include "jerror.h" - -@@ -107,11 +106,11 @@ - if (cinfo->src == NULL) { /* first time for this JPEG object? */ - cinfo->src = (struct jpeg_source_mgr *) - (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, -- JPOOL_PERMANENT, SIZEOF(stream_source_mgr)); -+ JPOOL_PERMANENT, sizeof(stream_source_mgr)); - src = (stream_src_ptr) cinfo->src; - src->buffer = (JOCTET *) - (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, -- JPOOL_PERMANENT, INPUT_BUF_SIZE * SIZEOF(JOCTET)); -+ JPOOL_PERMANENT, INPUT_BUF_SIZE * sizeof(JOCTET)); - } - - src = (stream_src_ptr) cinfo->src; diff --git a/jdk8143245-pr3548-zero_build_requires_disabled_warnings.patch b/jdk8143245-pr3548-zero_build_requires_disabled_warnings.patch deleted file mode 100644 index 239cd68a418a34b22d44b507120baf81bdfb3578..0000000000000000000000000000000000000000 --- a/jdk8143245-pr3548-zero_build_requires_disabled_warnings.patch +++ /dev/null @@ -1,148 +0,0 @@ -# HG changeset patch -# User sgehwolf -# Date 1525714161 -3600 -# Mon May 07 18:29:21 2018 +0100 -# Node ID afb31413c73cbc06420fdb447aa90a7a38258904 -# Parent bcbc64dfb629c5f188bbf59b8f986ad95963ed60 -8143245, PR3548: Zero build requires disabled warnings -Reviewed-by: dholmes, coleenp - -diff --git openjdk.orig/hotspot/make/linux/makefiles/zeroshark.make openjdk/hotspot/make/linux/makefiles/zeroshark.make ---- openjdk.orig/hotspot/make/linux/makefiles/zeroshark.make -+++ openjdk/hotspot/make/linux/makefiles/zeroshark.make -@@ -1,5 +1,5 @@ - # --# Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved. -+# Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved. - # Copyright 2007, 2008 Red Hat, Inc. - # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - # -@@ -29,12 +29,7 @@ - ifeq ($(JVM_VARIANT_ZEROSHARK), true) - WARNING_FLAGS += -Wno-undef - endif --# Suppress some warning flags that are normally turned on for hotspot, --# because some of the zero code has not been updated accordingly. --WARNING_FLAGS += -Wno-return-type \ -- -Wno-format-nonliteral -Wno-format-security \ -- -Wno-maybe-uninitialized -- -+ - - # If FDLIBM_CFLAGS is non-empty it holds CFLAGS needed to be passed to - # the compiler so as to be able to produce optimized objects -diff --git openjdk.orig/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp openjdk/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp ---- openjdk.orig/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp -+++ openjdk/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp -@@ -102,7 +102,7 @@ - return result; - default: - ShouldNotReachHere(); -- return result; // silence compiler warnings -+ return NULL_WORD; // silence compiler warnings - } - } - -diff --git openjdk.orig/hotspot/src/cpu/zero/vm/interpreterRT_zero.cpp openjdk/hotspot/src/cpu/zero/vm/interpreterRT_zero.cpp ---- openjdk.orig/hotspot/src/cpu/zero/vm/interpreterRT_zero.cpp -+++ openjdk/hotspot/src/cpu/zero/vm/interpreterRT_zero.cpp -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved. - * Copyright 2007, 2008, 2010 Red Hat, Inc. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * -@@ -62,7 +62,7 @@ - } - - void InterpreterRuntime::SignatureHandlerGeneratorBase::push(BasicType type) { -- ffi_type *ftype; -+ ffi_type *ftype = NULL; - switch (type) { - case T_VOID: - ftype = &ffi_type_void; -diff --git openjdk.orig/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp openjdk/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp ---- openjdk.orig/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp -+++ openjdk/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp -@@ -1,6 +1,6 @@ - /* - * Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved. -- * Copyright 2007, 2008, 2009, 2010 Red Hat, Inc. -+ * Copyright 2016 Red Hat, Inc. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it -@@ -61,6 +61,7 @@ - - frame os::get_sender_for_C_frame(frame* fr) { - ShouldNotCallThis(); -+ return frame(NULL, NULL); // silence compile warning. - } - - frame os::current_frame() { -@@ -98,16 +99,19 @@ - - address os::Linux::ucontext_get_pc(ucontext_t* uc) { - ShouldNotCallThis(); -+ return NULL; // silence compile warnings - } - - ExtendedPC os::fetch_frame_from_context(void* ucVoid, - intptr_t** ret_sp, - intptr_t** ret_fp) { - ShouldNotCallThis(); -+ return NULL; // silence compile warnings - } - - frame os::fetch_frame_from_context(void* ucVoid) { - ShouldNotCallThis(); -+ return frame(NULL, NULL); // silence compile warnings - } - - extern "C" JNIEXPORT int -@@ -247,11 +251,16 @@ - } - #endif // !PRODUCT - -- const char *fmt = "caught unhandled signal %d"; - char buf[64]; - -- sprintf(buf, fmt, sig); -+ sprintf(buf, "caught unhandled signal %d", sig); -+ -+// Silence -Wformat-security warning for fatal() -+PRAGMA_DIAG_PUSH -+PRAGMA_FORMAT_NONLITERAL_IGNORED - fatal(buf); -+PRAGMA_DIAG_POP -+ return true; // silence compiler warnings - } - - void os::Linux::init_thread_fpu_state(void) { -@@ -260,6 +269,7 @@ - - int os::Linux::get_fpu_control_word() { - ShouldNotCallThis(); -+ return -1; // silence compile warnings - } - - void os::Linux::set_fpu_control_word(int fpu) { -diff --git openjdk.orig/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.hpp openjdk/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.hpp ---- openjdk.orig/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.hpp -+++ openjdk/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.hpp -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. - * Copyright 2007, 2008, 2009, 2010 Red Hat, Inc. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * -@@ -110,6 +110,7 @@ - void* ucontext, - bool isInJava) { - ShouldNotCallThis(); -+ return false; // silence compile warning - } - - bool pd_get_top_frame_for_profiling(frame* fr_addr, diff --git a/jdk8199936-pr3533-enable_mstackrealign_on_x86_linux_as_well_as_x86_mac_os_x.patch b/jdk8199936-pr3533-enable_mstackrealign_on_x86_linux_as_well_as_x86_mac_os_x.patch deleted file mode 100644 index 0af9d5170558d02f7652381b6598fab09ad72f96..0000000000000000000000000000000000000000 --- a/jdk8199936-pr3533-enable_mstackrealign_on_x86_linux_as_well_as_x86_mac_os_x.patch +++ /dev/null @@ -1,58 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1526122977 -3600 -# Sat May 12 12:02:57 2018 +0100 -# Node ID 00ccc73498628a51a45301322e64ce2ad06e49be -# Parent aecf9f48f7b5c6148b62713a6b746301435b57cc -PR3533: HotSpot generates code with unaligned stack, crashes on SSE operations -Summary: Enable -mstackrealign on x86 Linux as well as x86 Mac OS X - -diff --git openjdk.orig///common/autoconf/flags.m4 openjdk///common/autoconf/flags.m4 ---- openjdk.orig///common/autoconf/flags.m4 -+++ openjdk///common/autoconf/flags.m4 -@@ -402,6 +402,21 @@ - AC_SUBST($2CXXSTD_CXXFLAG) - fi - -+ # -+ # NOTE: check for -mstackrealign needs to be below potential addition of -m32 -+ # -+ if test "x$OPENJDK_TARGET_CPU" = xx86 && test "x$OPENJDK_TARGET_OS" = xmacosx -o \ -+ "x$OPENJDK_TARGET_OS" = xlinux; then -+ # On 32-bit MacOSX the OS requires C-entry points to be 16 byte aligned. -+ # While waiting for a better solution, the current workaround is to use -mstackrealign -+ # This is also required on Linux systems which use libraries compiled with SSE instructions -+ REALIGN_CFLAG="-mincoming-stack-boundary=2 -mpreferred-stack-boundary=4" -+ FLAGS_COMPILER_CHECK_ARGUMENTS([$REALIGN_CFLAG -Werror], [], -+ AC_MSG_ERROR([The selected compiler $CXX does not support -mstackrealign! Try to put another compiler in the path.]) -+ ) -+ AC_SUBST([REALIGN_CFLAG]) -+ fi -+ - if test "x$CFLAGS" != "x${ADDED_CFLAGS}"; then - AC_MSG_WARN([Ignoring CFLAGS($CFLAGS) found in environment. Use --with-extra-cflags]) - fi -diff --git openjdk.orig///common/autoconf/hotspot-spec.gmk.in openjdk///common/autoconf/hotspot-spec.gmk.in ---- openjdk.orig///common/autoconf/hotspot-spec.gmk.in -+++ openjdk///common/autoconf/hotspot-spec.gmk.in -@@ -112,7 +112,8 @@ - RC:=@HOTSPOT_RC@ - - EXTRA_CFLAGS=@LEGACY_EXTRA_CFLAGS@ $(NO_DELETE_NULL_POINTER_CHECKS_CFLAG) \ -- $(NO_LIFETIME_DSE_CFLAG) $(CXXSTD_CXXFLAG) -+ $(NO_LIFETIME_DSE_CFLAG) $(CXXSTD_CXXFLAG) \ -+ $(REALIGN_CFLAG) - EXTRA_CXXFLAGS=@LEGACY_EXTRA_CXXFLAGS@ - EXTRA_LDFLAGS=@LEGACY_EXTRA_LDFLAGS@ - EXTRA_ASFLAGS=@LEGACY_EXTRA_ASFLAGS@ -diff --git openjdk.orig///common/autoconf/spec.gmk.in openjdk///common/autoconf/spec.gmk.in ---- openjdk.orig///common/autoconf/spec.gmk.in -+++ openjdk///common/autoconf/spec.gmk.in -@@ -366,6 +366,7 @@ - - NO_DELETE_NULL_POINTER_CHECKS_CFLAG=@NO_DELETE_NULL_POINTER_CHECKS_CFLAG@ - NO_LIFETIME_DSE_CFLAG=@NO_LIFETIME_DSE_CFLAG@ -+REALIGN_CFLAG=@REALIGN_CFLAG@ - CXXSTD_CXXFLAG=@CXXSTD_CXXFLAG@ - - CXX:=@FIXPATH@ @CCACHE@ @CXX@ diff --git a/jdk8199936-pr3591-enable_mstackrealign_on_x86_linux_as_well_as_x86_mac_os_x_jdk.patch b/jdk8199936-pr3591-enable_mstackrealign_on_x86_linux_as_well_as_x86_mac_os_x_jdk.patch deleted file mode 100644 index 7ac077bd64db42964556853b27f7b48b6879eca0..0000000000000000000000000000000000000000 --- a/jdk8199936-pr3591-enable_mstackrealign_on_x86_linux_as_well_as_x86_mac_os_x_jdk.patch +++ /dev/null @@ -1,20 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1526489197 -3600 -# Wed May 16 17:46:37 2018 +0100 -# Node ID 64e87a408afd2b56d59dad73dee28d4b99463810 -# Parent 00ccc73498628a51a45301322e64ce2ad06e49be -PR3591: Fix for bug 3533 doesn't add -mstackrealign to JDK code - -diff --git openjdk.orig///common/autoconf/flags.m4 openjdk///common/autoconf/flags.m4 ---- openjdk.orig///common/autoconf/flags.m4 -+++ openjdk///common/autoconf/flags.m4 -@@ -401,6 +401,8 @@ - FLAGS_COMPILER_CHECK_ARGUMENTS([$REALIGN_CFLAG -Werror], [], - AC_MSG_ERROR([The selected compiler $CXX does not support -mstackrealign! Try to put another compiler in the path.]) - ) -+ CFLAGS_JDK="${CFLAGS_JDK} ${REALIGN_CFLAG}" -+ CXXFLAGS_JDK="${CXXFLAGS_JDK} ${REALIGN_CFLAG}" - AC_SUBST([REALIGN_CFLAG]) - fi - diff --git a/jdk8203030-zero_s390_31_bit_size_t_type_conflicts_in_shared_code.patch b/jdk8203030-zero_s390_31_bit_size_t_type_conflicts_in_shared_code.patch deleted file mode 100644 index 4098bdca1bf2412fa213ff139788c9ade8077165..0000000000000000000000000000000000000000 --- a/jdk8203030-zero_s390_31_bit_size_t_type_conflicts_in_shared_code.patch +++ /dev/null @@ -1,328 +0,0 @@ -diff -r 4689eaf1a5c9 src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -2689,7 +2689,7 @@ - if (ResizeOldPLAB && CMSOldPLABResizeQuicker) { - size_t multiple = _num_blocks[word_sz]/(CMSOldPLABToleranceFactor*CMSOldPLABNumRefills*n_blks); - n_blks += CMSOldPLABReactivityFactor*multiple*n_blks; -- n_blks = MIN2(n_blks, CMSOldPLABMax); -+ n_blks = MIN2(n_blks, (size_t)CMSOldPLABMax); - } - assert(n_blks > 0, "Error"); - _cfls->par_get_chunk_of_blocks(word_sz, n_blks, fl); -diff -r 4689eaf1a5c9 src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -961,7 +961,7 @@ - if (free_percentage < desired_free_percentage) { - size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage)); - assert(desired_capacity >= capacity(), "invalid expansion size"); -- size_t expand_bytes = MAX2(desired_capacity - capacity(), MinHeapDeltaBytes); -+ size_t expand_bytes = MAX2(desired_capacity - capacity(), (size_t)MinHeapDeltaBytes); - if (PrintGCDetails && Verbose) { - size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage)); - gclog_or_tty->print_cr("\nFrom compute_new_size: "); -@@ -6591,7 +6591,7 @@ - HeapWord* curAddr = _markBitMap.startWord(); - while (curAddr < _markBitMap.endWord()) { - size_t remaining = pointer_delta(_markBitMap.endWord(), curAddr); -- MemRegion chunk(curAddr, MIN2(CMSBitMapYieldQuantum, remaining)); -+ MemRegion chunk(curAddr, MIN2((size_t)CMSBitMapYieldQuantum, remaining)); - _markBitMap.clear_large_range(chunk); - if (ConcurrentMarkSweepThread::should_yield() && - !foregroundGCIsActive() && -@@ -6889,7 +6889,7 @@ - return; - } - // Double capacity if possible -- size_t new_capacity = MIN2(_capacity*2, MarkStackSizeMax); -+ size_t new_capacity = MIN2(_capacity*2, (size_t)MarkStackSizeMax); - // Do not give up existing stack until we have managed to - // get the double capacity that we desired. - ReservedSpace rs(ReservedSpace::allocation_align_size_up( -diff -r 4689eaf1a5c9 src/share/vm/gc_implementation/g1/concurrentMark.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -3916,7 +3916,7 @@ - // of things to do) or totally (at the very end). - size_t target_size; - if (partially) { -- target_size = MIN2((size_t)_task_queue->max_elems()/3, GCDrainStackTargetSize); -+ target_size = MIN2((size_t)_task_queue->max_elems()/3, (size_t)GCDrainStackTargetSize); - } else { - target_size = 0; - } -diff -r 4689eaf1a5c9 src/share/vm/gc_implementation/g1/g1BiasedArray.hpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/g1BiasedArray.hpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/g1BiasedArray.hpp Tue Sep 08 22:20:44 2020 -0400 -@@ -78,7 +78,8 @@ - size_t num_target_elems = pointer_delta(end, bottom, mapping_granularity_in_bytes); - idx_t bias = (uintptr_t)bottom / mapping_granularity_in_bytes; - address base = create_new_base_array(num_target_elems, target_elem_size_in_bytes); -- initialize_base(base, num_target_elems, bias, target_elem_size_in_bytes, log2_intptr(mapping_granularity_in_bytes)); -+ initialize_base(base, num_target_elems, bias, target_elem_size_in_bytes, -+ log2_intptr((uintptr_t)mapping_granularity_in_bytes)); - } - - size_t bias() const { return _bias; } -diff -r 4689eaf1a5c9 src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -1729,7 +1729,7 @@ - - verify_region_sets_optional(); - -- size_t expand_bytes = MAX2(word_size * HeapWordSize, MinHeapDeltaBytes); -+ size_t expand_bytes = MAX2(word_size * HeapWordSize, (size_t)MinHeapDeltaBytes); - ergo_verbose1(ErgoHeapSizing, - "attempt heap expansion", - ergo_format_reason("allocation request failed") -diff -r 4689eaf1a5c9 src/share/vm/gc_implementation/g1/g1ConcurrentMarkObjArrayProcessor.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/g1ConcurrentMarkObjArrayProcessor.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/g1ConcurrentMarkObjArrayProcessor.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -41,7 +41,7 @@ - } - - size_t G1CMObjArrayProcessor::process_array_slice(objArrayOop obj, HeapWord* start_from, size_t remaining) { -- size_t words_to_scan = MIN2(remaining, ObjArrayMarkingStride); -+ size_t words_to_scan = MIN2(remaining, (size_t)ObjArrayMarkingStride); - - if (remaining > ObjArrayMarkingStride) { - push_array_slice(start_from + ObjArrayMarkingStride); -diff -r 4689eaf1a5c9 src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.hpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.hpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.hpp Tue Sep 08 22:20:44 2020 -0400 -@@ -89,7 +89,7 @@ - void pretouch_internal(size_t start_page, size_t end_page); - - // Returns the index of the page which contains the given address. -- uintptr_t addr_to_page_index(char* addr) const; -+ size_t addr_to_page_index(char* addr) const; - // Returns the address of the given page index. - char* page_start(size_t index) const; - -diff -r 4689eaf1a5c9 src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -38,7 +38,7 @@ - _cancel(false), - _empty(true), - _dropped(0) { -- _nqueues = MAX2(ParallelGCThreads, (size_t)1); -+ _nqueues = MAX2(ParallelGCThreads, (uintx)1); - _queues = NEW_C_HEAP_ARRAY(G1StringDedupWorkerQueue, _nqueues, mtGC); - for (size_t i = 0; i < _nqueues; i++) { - new (_queues + i) G1StringDedupWorkerQueue(G1StringDedupWorkerQueue::default_segment_size(), _max_cache_size, _max_size); -diff -r 4689eaf1a5c9 src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -120,7 +120,7 @@ - }; - - G1StringDedupEntryCache::G1StringDedupEntryCache(size_t max_size) : -- _nlists(MAX2(ParallelGCThreads, (size_t)1)), -+ _nlists(MAX2(ParallelGCThreads, (uintx)1)), - _max_list_length(0), - _cached(PaddedArray::create_unfreeable((uint)_nlists)), - _overflowed(PaddedArray::create_unfreeable((uint)_nlists)) { -diff -r 4689eaf1a5c9 src/share/vm/gc_implementation/g1/heapRegion.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -110,7 +110,7 @@ - if (FLAG_IS_DEFAULT(G1HeapRegionSize)) { - size_t average_heap_size = (initial_heap_size + max_heap_size) / 2; - region_size = MAX2(average_heap_size / HeapRegionBounds::target_number(), -- (uintx) HeapRegionBounds::min_size()); -+ HeapRegionBounds::min_size()); - } - - int region_size_log = log2_long((jlong) region_size); -diff -r 4689eaf1a5c9 src/share/vm/gc_implementation/parNew/parNewGeneration.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -194,7 +194,7 @@ - const size_t num_overflow_elems = of_stack->size(); - const size_t space_available = queue->max_elems() - queue->size(); - const size_t num_take_elems = MIN3(space_available / 4, -- ParGCDesiredObjsFromOverflowList, -+ (size_t)ParGCDesiredObjsFromOverflowList, - num_overflow_elems); - // Transfer the most recent num_take_elems from the overflow - // stack to our work queue. -diff -r 4689eaf1a5c9 src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -912,7 +912,7 @@ - - void PSParallelCompact::initialize_dead_wood_limiter() - { -- const size_t max = 100; -+ const uintx max = 100; - _dwl_mean = double(MIN2(ParallelOldDeadWoodLimiterMean, max)) / 100.0; - _dwl_std_dev = double(MIN2(ParallelOldDeadWoodLimiterStdDev, max)) / 100.0; - _dwl_first_term = 1.0 / (sqrt(2.0 * M_PI) * _dwl_std_dev); -diff -r 4689eaf1a5c9 src/share/vm/memory/collectorPolicy.cpp ---- openjdk.orig/hotspot/src/share/vm/memory/collectorPolicy.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -385,7 +385,7 @@ - uintx calculated_size = NewSize + OldSize; - double shrink_factor = (double) MaxHeapSize / calculated_size; - uintx smaller_new_size = align_size_down((uintx)(NewSize * shrink_factor), _gen_alignment); -- FLAG_SET_ERGO(uintx, NewSize, MAX2(young_gen_size_lower_bound(), smaller_new_size)); -+ FLAG_SET_ERGO(uintx, NewSize, MAX2((uintx)young_gen_size_lower_bound(), smaller_new_size)); - _initial_gen0_size = NewSize; - - // OldSize is already aligned because above we aligned MaxHeapSize to -@@ -433,7 +433,7 @@ - // yield a size that is too small) and bound it by MaxNewSize above. - // Ergonomics plays here by previously calculating the desired - // NewSize and MaxNewSize. -- max_new_size = MIN2(MAX2(max_new_size, NewSize), MaxNewSize); -+ max_new_size = MIN2(MAX2(max_new_size, (size_t)NewSize), (size_t)MaxNewSize); - } - assert(max_new_size > 0, "All paths should set max_new_size"); - -@@ -455,23 +455,25 @@ - // lower limit. - _min_gen0_size = NewSize; - desired_new_size = NewSize; -- max_new_size = MAX2(max_new_size, NewSize); -+ max_new_size = MAX2(max_new_size, (size_t)NewSize); - } else if (FLAG_IS_ERGO(NewSize)) { - // If NewSize is set ergonomically, we should use it as a lower - // limit, but use NewRatio to calculate the initial size. - _min_gen0_size = NewSize; - desired_new_size = -- MAX2(scale_by_NewRatio_aligned(_initial_heap_byte_size), NewSize); -- max_new_size = MAX2(max_new_size, NewSize); -+ MAX2(scale_by_NewRatio_aligned(_initial_heap_byte_size), (size_t)NewSize); -+ max_new_size = MAX2(max_new_size, (size_t)NewSize); - } else { - // For the case where NewSize is the default, use NewRatio - // to size the minimum and initial generation sizes. - // Use the default NewSize as the floor for these values. If - // NewRatio is overly large, the resulting sizes can be too - // small. -- _min_gen0_size = MAX2(scale_by_NewRatio_aligned(_min_heap_byte_size), NewSize); -+ _min_gen0_size = MAX2(scale_by_NewRatio_aligned(_min_heap_byte_size), -+ (size_t)NewSize); - desired_new_size = -- MAX2(scale_by_NewRatio_aligned(_initial_heap_byte_size), NewSize); -+ MAX2(scale_by_NewRatio_aligned(_initial_heap_byte_size), -+ (size_t)NewSize); - } - - assert(_min_gen0_size > 0, "Sanity check"); -@@ -573,7 +575,7 @@ - } else { - // It's been explicitly set on the command line. Use the - // OldSize and then determine the consequences. -- _min_gen1_size = MIN2(OldSize, _min_heap_byte_size - _min_gen0_size); -+ _min_gen1_size = MIN2((size_t)OldSize, _min_heap_byte_size - _min_gen0_size); - _initial_gen1_size = OldSize; - - // If the user has explicitly set an OldSize that is inconsistent -diff -r 4689eaf1a5c9 src/share/vm/memory/metaspace.cpp ---- openjdk.orig/hotspot/src/share/vm/memory/metaspace.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/memory/metaspace.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -1482,7 +1482,7 @@ - - void MetaspaceGC::post_initialize() { - // Reset the high-water mark once the VM initialization is done. -- _capacity_until_GC = MAX2(MetaspaceAux::committed_bytes(), MetaspaceSize); -+ _capacity_until_GC = MAX2(MetaspaceAux::committed_bytes(), (size_t)MetaspaceSize); - } - - bool MetaspaceGC::can_expand(size_t word_size, bool is_class) { -@@ -1542,7 +1542,7 @@ - (size_t)MIN2(min_tmp, double(MaxMetaspaceSize)); - // Don't shrink less than the initial generation size - minimum_desired_capacity = MAX2(minimum_desired_capacity, -- MetaspaceSize); -+ (size_t)MetaspaceSize); - - if (PrintGCDetails && Verbose) { - gclog_or_tty->print_cr("\nMetaspaceGC::compute_new_size: "); -@@ -1600,7 +1600,7 @@ - const double max_tmp = used_after_gc / minimum_used_percentage; - size_t maximum_desired_capacity = (size_t)MIN2(max_tmp, double(MaxMetaspaceSize)); - maximum_desired_capacity = MAX2(maximum_desired_capacity, -- MetaspaceSize); -+ (size_t)MetaspaceSize); - if (PrintGCDetails && Verbose) { - gclog_or_tty->print_cr(" " - " maximum_free_percentage: %6.2f" -@@ -3320,7 +3320,7 @@ - // Make the first class chunk bigger than a medium chunk so it's not put - // on the medium chunk list. The next chunk will be small and progress - // from there. This size calculated by -version. -- _first_class_chunk_word_size = MIN2((size_t)MediumChunk*6, -+ _first_class_chunk_word_size = MIN2((uintx)MediumChunk*6, - (CompressedClassSpaceSize/BytesPerWord)*2); - _first_class_chunk_word_size = align_word_size_up(_first_class_chunk_word_size); - // Arbitrarily set the initial virtual space to a multiple -diff -r 4689eaf1a5c9 src/share/vm/oops/objArrayKlass.inline.hpp ---- openjdk.orig/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp Tue Sep 08 22:20:44 2020 -0400 -@@ -48,7 +48,7 @@ - const size_t beg_index = size_t(index); - assert(beg_index < len || len == 0, "index too large"); - -- const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride); -+ const size_t stride = MIN2(len - beg_index, (size_t)ObjArrayMarkingStride); - const size_t end_index = beg_index + stride; - T* const base = (T*)a->base(); - T* const beg = base + beg_index; -@@ -82,7 +82,7 @@ - const size_t beg_index = size_t(index); - assert(beg_index < len || len == 0, "index too large"); - -- const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride); -+ const size_t stride = MIN2(len - beg_index, (size_t)ObjArrayMarkingStride); - const size_t end_index = beg_index + stride; - T* const base = (T*)a->base(); - T* const beg = base + beg_index; -diff -r 4689eaf1a5c9 src/share/vm/runtime/arguments.cpp ---- openjdk.orig/hotspot/src/share/vm/runtime/arguments.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/runtime/arguments.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -1301,7 +1301,7 @@ - // NewSize was set on the command line and it is larger than - // preferred_max_new_size. - if (!FLAG_IS_DEFAULT(NewSize)) { // NewSize explicitly set at command-line -- FLAG_SET_ERGO(uintx, MaxNewSize, MAX2(NewSize, preferred_max_new_size)); -+ FLAG_SET_ERGO(uintx, MaxNewSize, MAX2((size_t)NewSize, preferred_max_new_size)); - } else { - FLAG_SET_ERGO(uintx, MaxNewSize, preferred_max_new_size); - } -@@ -1326,8 +1326,8 @@ - // Unless explicitly requested otherwise, make young gen - // at least min_new, and at most preferred_max_new_size. - if (FLAG_IS_DEFAULT(NewSize)) { -- FLAG_SET_ERGO(uintx, NewSize, MAX2(NewSize, min_new)); -- FLAG_SET_ERGO(uintx, NewSize, MIN2(preferred_max_new_size, NewSize)); -+ FLAG_SET_ERGO(uintx, NewSize, MAX2((size_t)NewSize, min_new)); -+ FLAG_SET_ERGO(uintx, NewSize, MIN2(preferred_max_new_size, (size_t)NewSize)); - if (PrintGCDetails && Verbose) { - // Too early to use gclog_or_tty - tty->print_cr("CMS ergo set NewSize: " SIZE_FORMAT, NewSize); -@@ -1337,7 +1337,7 @@ - // so it's NewRatio x of NewSize. - if (FLAG_IS_DEFAULT(OldSize)) { - if (max_heap > NewSize) { -- FLAG_SET_ERGO(uintx, OldSize, MIN2(NewRatio*NewSize, max_heap - NewSize)); -+ FLAG_SET_ERGO(uintx, OldSize, MIN2((size_t)(NewRatio*NewSize), max_heap - NewSize)); - if (PrintGCDetails && Verbose) { - // Too early to use gclog_or_tty - tty->print_cr("CMS ergo set OldSize: " SIZE_FORMAT, OldSize); -diff -r 4689eaf1a5c9 src/share/vm/runtime/os.cpp ---- openjdk.orig/hotspot/src/share/vm/runtime/os.cpp Mon Aug 31 07:09:56 2020 +0100 -+++ openjdk/hotspot/src/share/vm/runtime/os.cpp Tue Sep 08 22:20:44 2020 -0400 -@@ -1272,7 +1272,7 @@ - } - - void os::set_memory_serialize_page(address page) { -- int count = log2_intptr(sizeof(class JavaThread)) - log2_int(64); -+ int count = log2_intptr((uintptr_t)sizeof(class JavaThread)) - log2_int(64); - _mem_serialize_page = (volatile int32_t *)page; - // We initialize the serialization page shift count here - // We assume a cache line size of 64 bytes diff --git a/jdk8218811-perfMemory_linux.patch b/jdk8218811-perfMemory_linux.patch deleted file mode 100644 index 7b3d2f7efc34ec2d5216b855ad5304b6ffd7a6a2..0000000000000000000000000000000000000000 --- a/jdk8218811-perfMemory_linux.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git openjdk.orig/hotspot/src/os/linux/vm/perfMemory_linux.cpp openjdk/hotspot/src/os/linux/vm/perfMemory_linux.cpp ---- openjdk.orig/hotspot/src/os/linux/vm/perfMemory_linux.cpp -+++ openjdk/hotspot/src/os/linux/vm/perfMemory_linux.cpp -@@ -878,7 +878,7 @@ - - // open the file - int result; -- RESTARTABLE(::open(filename, oflags), result); -+ RESTARTABLE(::open(filename, oflags, 0), result); - if (result == OS_ERR) { - if (errno == ENOENT) { - THROW_MSG_(vmSymbols::java_lang_IllegalArgumentException(), diff --git a/jdk8257794-remove_broken_assert.patch b/jdk8257794-remove_broken_assert.patch deleted file mode 100644 index bb88013beb1a6985ede7ec6b26f88808b6cd6c69..0000000000000000000000000000000000000000 --- a/jdk8257794-remove_broken_assert.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git openjdk.orig/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp ---- openjdk.orig/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp -+++ openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp -@@ -493,9 +493,6 @@ - assert(labs(istate->_stack_base - istate->_stack_limit) == (istate->_method->max_stack() + extra_stack_entries - + 1), "bad stack limit"); - } --#ifndef SHARK -- IA32_ONLY(assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1, "wrong")); --#endif // !SHARK - } - // Verify linkages. - interpreterState l = istate; diff --git a/jdk8281098-pr3836-pass_compiler_flags_to_adlc.patch b/jdk8281098-pr3836-pass_compiler_flags_to_adlc.patch deleted file mode 100644 index 774a08e589ad96a4f6917a8fceae72c48f63ed05..0000000000000000000000000000000000000000 --- a/jdk8281098-pr3836-pass_compiler_flags_to_adlc.patch +++ /dev/null @@ -1,67 +0,0 @@ -# HG changeset patch -# User Andrew John Hughes -# Date 1620365804 -3600 -# Fri May 07 06:36:44 2021 +0100 -# Node ID 39b62f35eca823b4c9a98bc1dc0cb9acb87360f8 -# Parent 723b59ed1afe878c5cd35f080399c8ceec4f776b -PR3836: Extra compiler flags not passed to adlc build - -diff --git openjdk.orig/hotspot/make/aix/makefiles/adlc.make openjdk/hotspot/make/aix/makefiles/adlc.make ---- openjdk.orig/hotspot/make/aix/makefiles/adlc.make -+++ openjdk/hotspot/make/aix/makefiles/adlc.make -@@ -69,6 +69,11 @@ - CFLAGS_WARN = -w - CFLAGS += $(CFLAGS_WARN) - -+# Extra flags from gnumake's invocation or environment -+CFLAGS += $(EXTRA_CFLAGS) -+LFLAGS += $(EXTRA_CFLAGS) $(EXTRA_LDFLAGS) -+ASFLAGS += $(EXTRA_ASFLAGS) -+ - OBJECTNAMES = \ - adlparse.o \ - archDesc.o \ -diff --git openjdk.orig/hotspot/make/bsd/makefiles/adlc.make openjdk/hotspot/make/bsd/makefiles/adlc.make ---- openjdk.orig/hotspot/make/bsd/makefiles/adlc.make -+++ openjdk/hotspot/make/bsd/makefiles/adlc.make -@@ -71,6 +71,11 @@ - endif - CFLAGS += $(CFLAGS_WARN) - -+# Extra flags from gnumake's invocation or environment -+CFLAGS += $(EXTRA_CFLAGS) -+LFLAGS += $(EXTRA_CFLAGS) $(EXTRA_LDFLAGS) -+ASFLAGS += $(EXTRA_ASFLAGS) -+ - OBJECTNAMES = \ - adlparse.o \ - archDesc.o \ -diff --git openjdk.orig/hotspot/make/linux/makefiles/adlc.make openjdk/hotspot/make/linux/makefiles/adlc.make ---- openjdk.orig/hotspot/make/linux/makefiles/adlc.make -+++ openjdk/hotspot/make/linux/makefiles/adlc.make -@@ -69,6 +69,11 @@ - CFLAGS_WARN = $(WARNINGS_ARE_ERRORS) - CFLAGS += $(CFLAGS_WARN) - -+# Extra flags from gnumake's invocation or environment -+CFLAGS += $(EXTRA_CFLAGS) -+LFLAGS += $(EXTRA_CFLAGS) $(EXTRA_LDFLAGS) -+ASFLAGS += $(EXTRA_ASFLAGS) -+ - OBJECTNAMES = \ - adlparse.o \ - archDesc.o \ -diff --git openjdk.orig/hotspot/make/solaris/makefiles/adlc.make openjdk/hotspot/make/solaris/makefiles/adlc.make ---- openjdk.orig/hotspot/make/solaris/makefiles/adlc.make -+++ openjdk/hotspot/make/solaris/makefiles/adlc.make -@@ -85,6 +85,10 @@ - endif - CFLAGS += $(CFLAGS_WARN) - -+# Extra flags from gnumake's invocation or environment -+CFLAGS += $(EXTRA_CFLAGS) -+ASFLAGS += $(EXTRA_ASFLAGS) -+ - ifeq ("${Platform_compiler}", "sparcWorks") - # Enable the following CFLAGS addition if you need to compare the - # built ELF objects. diff --git a/jdk8282231-x86_32-missing_call_effects.patch b/jdk8282231-x86_32-missing_call_effects.patch deleted file mode 100644 index ab341b661e8de4f6e544f52dd151f64468823965..0000000000000000000000000000000000000000 --- a/jdk8282231-x86_32-missing_call_effects.patch +++ /dev/null @@ -1,35 +0,0 @@ -diff --git openjdk.orig/hotspot/src/cpu/x86/vm/x86_32.ad openjdk/hotspot/src/cpu/x86/vm/x86_32.ad -index c8f4ee1613..cc0f4eef14 100644 ---- openjdk.orig/hotspot/src/cpu/x86/vm/x86_32.ad -+++ openjdk/hotspot/src/cpu/x86/vm/x86_32.ad -@@ -1,5 +1,5 @@ - // --// Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. -+// Copyright (c) 1997, 2022, 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 -@@ -7665,9 +7665,9 @@ instruct divI_eReg(eAXRegI rax, eDXRegI rdx, eCXRegI div, eFlagsReg cr) %{ - %} - - // Divide Register Long --instruct divL_eReg( eADXRegL dst, eRegL src1, eRegL src2, eFlagsReg cr, eCXRegI cx, eBXRegI bx ) %{ -+instruct divL_eReg(eADXRegL dst, eRegL src1, eRegL src2) %{ - match(Set dst (DivL src1 src2)); -- effect( KILL cr, KILL cx, KILL bx ); -+ effect(CALL); - ins_cost(10000); - format %{ "PUSH $src1.hi\n\t" - "PUSH $src1.lo\n\t" -@@ -7713,9 +7713,9 @@ instruct modI_eReg(eDXRegI rdx, eAXRegI rax, eCXRegI div, eFlagsReg cr) %{ - %} - - // Remainder Register Long --instruct modL_eReg( eADXRegL dst, eRegL src1, eRegL src2, eFlagsReg cr, eCXRegI cx, eBXRegI bx ) %{ -+instruct modL_eReg(eADXRegL dst, eRegL src1, eRegL src2) %{ - match(Set dst (ModL src1 src2)); -- effect( KILL cr, KILL cx, KILL bx ); -+ effect(CALL); - ins_cost(10000); - format %{ "PUSH $src1.hi\n\t" - "PUSH $src1.lo\n\t" diff --git a/nss.cfg.in b/nss.cfg.in deleted file mode 100644 index 377a39c2e414f108f73c7a92cd512cec908394c0..0000000000000000000000000000000000000000 --- a/nss.cfg.in +++ /dev/null @@ -1,5 +0,0 @@ -name = NSS -nssLibraryDirectory = @NSS_LIBDIR@ -nssDbMode = noDb -attributes = compatibility -handleStartupErrors = ignoreMultipleInitialisation diff --git a/nss.fips.cfg.in b/nss.fips.cfg.in deleted file mode 100644 index 1aff15393208511b786ed5924d298591f387d8e1..0000000000000000000000000000000000000000 --- a/nss.fips.cfg.in +++ /dev/null @@ -1,6 +0,0 @@ -name = NSS-FIPS -nssLibraryDirectory = @NSS_LIBDIR@ -nssSecmodDirectory = sql:/etc/pki/nssdb -nssDbMode = readOnly -nssModule = fips - diff --git a/policytool.desktop.in b/policytool.desktop.in deleted file mode 100644 index 5f4cb4a86df11309657200a234083c29361a1a20..0000000000000000000000000000000000000000 --- a/policytool.desktop.in +++ /dev/null @@ -1,10 +0,0 @@ -[Desktop Entry] -Name=OpenJDK @JAVA_VER@ for @target_cpu@ Policy Tool (@OPENJDK_VER@) -Comment=Manage OpenJDK policy files -Exec=_JREBINDIR_/policytool -Icon=java-@JAVA_VER@-@JAVA_VENDOR@ -Terminal=false -Type=Application -StartupWMClass=sun-security-tools-PolicyTool -Categories=Settings;Java; -Version=1.0 diff --git a/pr2462-resolve_disabled_warnings_for_libunpack_and_the_unpack200_binary.patch b/pr2462-resolve_disabled_warnings_for_libunpack_and_the_unpack200_binary.patch deleted file mode 100644 index 17e1f69c3b1a5e01f3b9a4b8f088d4122f30d813..0000000000000000000000000000000000000000 --- a/pr2462-resolve_disabled_warnings_for_libunpack_and_the_unpack200_binary.patch +++ /dev/null @@ -1,302 +0,0 @@ -# HG changeset patch -# User mikael -# Date 1426870964 25200 -# Fri Mar 20 10:02:44 2015 -0700 -# Node ID ee13ce369705a700b867f8c77423580b7b22cc13 -# Parent 7847ccfb240b35ed0dd328f0404b713b20e0905a -8074839: Resolve disabled warnings for libunpack and the unpack200 binary -Reviewed-by: dholmes, ksrini - -diff --git openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/bytes.h openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/bytes.h ---- openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/bytes.h -+++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/bytes.h -@@ -63,7 +63,7 @@ - bytes res; - res.ptr = ptr + beg; - res.len = end - beg; -- assert(res.len == 0 || inBounds(res.ptr) && inBounds(res.limit()-1)); -+ assert(res.len == 0 || (inBounds(res.ptr) && inBounds(res.limit()-1))); - return res; - } - // building C strings inside byte buffers: -diff --git openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp ---- openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp -+++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp -@@ -292,7 +292,7 @@ - - if (uPtr->aborting()) { - THROW_IOE(uPtr->get_abort_message()); -- return false; -+ return null; - } - - // We have fetched all the files. -@@ -310,7 +310,7 @@ - JNIEXPORT jlong JNICALL - Java_com_sun_java_util_jar_pack_NativeUnpack_finish(JNIEnv *env, jobject pObj) { - unpacker* uPtr = get_unpacker(env, pObj, false); -- CHECK_EXCEPTION_RETURN_VALUE(uPtr, NULL); -+ CHECK_EXCEPTION_RETURN_VALUE(uPtr, 0); - size_t consumed = uPtr->input_consumed(); - free_unpacker(env, pObj, uPtr); - return consumed; -@@ -320,6 +320,7 @@ - Java_com_sun_java_util_jar_pack_NativeUnpack_setOption(JNIEnv *env, jobject pObj, - jstring pProp, jstring pValue) { - unpacker* uPtr = get_unpacker(env, pObj); -+ CHECK_EXCEPTION_RETURN_VALUE(uPtr, false); - const char* prop = env->GetStringUTFChars(pProp, JNI_FALSE); - CHECK_EXCEPTION_RETURN_VALUE(prop, false); - const char* value = env->GetStringUTFChars(pValue, JNI_FALSE); -diff --git openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp ---- openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp -+++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp -@@ -142,31 +142,28 @@ - return progname; - } - --static const char* usage_lines[] = { -- "Usage: %s [-opt... | --option=value]... x.pack[.gz] y.jar\n", -- "\n", -- "Unpacking Options\n", -- " -H{h}, --deflate-hint={h} override transmitted deflate hint: true, false, or keep (default)\n", -- " -r, --remove-pack-file remove input file after unpacking\n", -- " -v, --verbose increase program verbosity\n", -- " -q, --quiet set verbosity to lowest level\n", -- " -l{F}, --log-file={F} output to the given log file, or '-' for standard output (default)\n", -- " -?, -h, --help print this message\n", -- " -V, --version print program version\n", -- " -J{X} Java VM argument (ignored)\n", -- null --}; -+#define USAGE_HEADER "Usage: %s [-opt... | --option=value]... x.pack[.gz] y.jar\n" -+#define USAGE_OPTIONS \ -+ "\n" \ -+ "Unpacking Options\n" \ -+ " -H{h}, --deflate-hint={h} override transmitted deflate hint: true, false, or keep (default)\n" \ -+ " -r, --remove-pack-file remove input file after unpacking\n" \ -+ " -v, --verbose increase program verbosity\n" \ -+ " -q, --quiet set verbosity to lowest level\n" \ -+ " -l{F}, --log-file={F} output to the given log file, or '-' for standard output (default)\n" \ -+ " -?, -h, --help print this message\n" \ -+ " -V, --version print program version\n" \ -+ " -J{X} Java VM argument (ignored)\n" - - static void usage(unpacker* u, const char* progname, bool full = false) { - // WinMain does not set argv[0] to the progrname - progname = (progname != null) ? nbasename(progname) : "unpack200"; -- for (int i = 0; usage_lines[i] != null; i++) { -- fprintf(u->errstrm, usage_lines[i], progname); -- if (!full) { -- fprintf(u->errstrm, -- "(For more information, run %s --help .)\n", progname); -- break; -- } -+ -+ fprintf(u->errstrm, USAGE_HEADER, progname); -+ if (full) { -+ fprintf(u->errstrm, USAGE_OPTIONS); -+ } else { -+ fprintf(u->errstrm, "(For more information, run %s --help .)\n", progname); - } - } - -diff --git openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/unpack.cpp openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/unpack.cpp ---- openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/unpack.cpp -+++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/unpack.cpp -@@ -222,9 +222,9 @@ - } - - #ifdef PRODUCT -- char* string() { return 0; } -+ const char* string() { return NULL; } - #else -- char* string(); // see far below -+ const char* string(); // see far below - #endif - }; - -@@ -715,13 +715,13 @@ - // Now we can size the whole archive. - // Read everything else into a mega-buffer. - rp = hdr.rp; -- int header_size_0 = (int)(rp - input.base()); // used-up header (4byte + 3int) -- int header_size_1 = (int)(rplimit - rp); // buffered unused initial fragment -- int header_size = header_size_0+header_size_1; -+ size_t header_size_0 = (rp - input.base()); // used-up header (4byte + 3int) -+ size_t header_size_1 = (rplimit - rp); // buffered unused initial fragment -+ size_t header_size = header_size_0 + header_size_1; - unsized_bytes_read = header_size_0; - CHECK; - if (foreign_buf) { -- if (archive_size > (size_t)header_size_1) { -+ if (archive_size > header_size_1) { - abort("EOF reading fixed input buffer"); - return; - } -@@ -735,7 +735,7 @@ - return; - } - input.set(U_NEW(byte, add_size(header_size_0, archive_size, C_SLOP)), -- (size_t) header_size_0 + archive_size); -+ header_size_0 + archive_size); - CHECK; - assert(input.limit()[0] == 0); - // Move all the bytes we read initially into the real buffer. -@@ -958,13 +958,13 @@ - nentries = next_entry; - - // place a limit on future CP growth: -- int generous = 0; -+ size_t generous = 0; - generous = add_size(generous, u->ic_count); // implicit name - generous = add_size(generous, u->ic_count); // outer - generous = add_size(generous, u->ic_count); // outer.utf8 - generous = add_size(generous, 40); // WKUs, misc - generous = add_size(generous, u->class_count); // implicit SourceFile strings -- maxentries = add_size(nentries, generous); -+ maxentries = (uint)add_size(nentries, generous); - - // Note that this CP does not include "empty" entries - // for longs and doubles. Those are introduced when -@@ -982,8 +982,9 @@ - } - - // Initialize *all* our entries once -- for (int i = 0 ; i < maxentries ; i++) -+ for (uint i = 0 ; i < maxentries ; i++) { - entries[i].outputIndex = REQUESTED_NONE; -+ } - - initGroupIndexes(); - // Initialize hashTab to a generous power-of-two size. -@@ -3677,21 +3678,22 @@ - - unpacker* debug_u; - --static bytes& getbuf(int len) { // for debugging only! -+static bytes& getbuf(size_t len) { // for debugging only! - static int bn = 0; - static bytes bufs[8]; - bytes& buf = bufs[bn++ & 7]; -- while ((int)buf.len < len+10) -+ while (buf.len < len + 10) { - buf.realloc(buf.len ? buf.len * 2 : 1000); -+ } - buf.ptr[0] = 0; // for the sake of strcat - return buf; - } - --char* entry::string() { -+const char* entry::string() { - bytes buf; - switch (tag) { - case CONSTANT_None: -- return (char*)""; -+ return ""; - case CONSTANT_Signature: - if (value.b.ptr == null) - return ref(0)->string(); -@@ -3711,26 +3713,28 @@ - break; - default: - if (nrefs == 0) { -- buf = getbuf(20); -- sprintf((char*)buf.ptr, TAG_NAME[tag]); -+ return TAG_NAME[tag]; - } else if (nrefs == 1) { - return refs[0]->string(); - } else { -- char* s1 = refs[0]->string(); -- char* s2 = refs[1]->string(); -- buf = getbuf((int)strlen(s1) + 1 + (int)strlen(s2) + 4 + 1); -+ const char* s1 = refs[0]->string(); -+ const char* s2 = refs[1]->string(); -+ buf = getbuf(strlen(s1) + 1 + strlen(s2) + 4 + 1); - buf.strcat(s1).strcat(" ").strcat(s2); - if (nrefs > 2) buf.strcat(" ..."); - } - } -- return (char*)buf.ptr; -+ return (const char*)buf.ptr; - } - - void print_cp_entry(int i) { - entry& e = debug_u->cp.entries[i]; -- char buf[30]; -- sprintf(buf, ((uint)e.tag < CONSTANT_Limit)? TAG_NAME[e.tag]: "%d", e.tag); -- printf(" %d\t%s %s\n", i, buf, e.string()); -+ -+ if ((uint)e.tag < CONSTANT_Limit) { -+ printf(" %d\t%s %s\n", i, TAG_NAME[e.tag], e.string()); -+ } else { -+ printf(" %d\t%d %s\n", i, e.tag, e.string()); -+ } - } - - void print_cp_entries(int beg, int end) { -diff --git openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/unpack.h openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/unpack.h ---- openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/unpack.h -+++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/unpack.h -@@ -209,7 +209,7 @@ - byte* rp; // read pointer (< rplimit <= input.limit()) - byte* rplimit; // how much of the input block has been read? - julong bytes_read; -- int unsized_bytes_read; -+ size_t unsized_bytes_read; - - // callback to read at least one byte, up to available input - typedef jlong (*read_input_fn_t)(unpacker* self, void* buf, jlong minlen, jlong maxlen); -diff --git openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/utils.cpp openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/utils.cpp ---- openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/utils.cpp -+++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/utils.cpp -@@ -81,7 +81,7 @@ - int assert_failed(const char* p) { - char message[1<<12]; - sprintf(message, "@assert failed: %s\n", p); -- fprintf(stdout, 1+message); -+ fprintf(stdout, "%s", 1+message); - breakpoint(); - unpack_abort(message); - return 0; -diff --git openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp ---- openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp -+++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp -@@ -84,7 +84,7 @@ - } - - // Write data to the ZIP output stream. --void jar::write_data(void* buff, int len) { -+void jar::write_data(void* buff, size_t len) { - while (len > 0) { - int rc = (int)fwrite(buff, 1, len, jarfp); - if (rc <= 0) { -@@ -323,12 +323,12 @@ - // Total number of disks (int) - header64[36] = (ushort)SWAP_BYTES(1); - header64[37] = 0; -- write_data(header64, (int)sizeof(header64)); -+ write_data(header64, sizeof(header64)); - } - - // Write the End of Central Directory structure. - PRINTCR((2, "end-of-directory at %d\n", output_file_offset)); -- write_data(header, (int)sizeof(header)); -+ write_data(header, sizeof(header)); - - PRINTCR((2, "writing zip comment\n")); - // Write the comment. -diff --git openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h ---- openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h -+++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h -@@ -68,8 +68,8 @@ - } - - // Private Methods -- void write_data(void* ptr, int len); -- void write_data(bytes& b) { write_data(b.ptr, (int)b.len); } -+ void write_data(void* ptr, size_t len); -+ void write_data(bytes& b) { write_data(b.ptr, b.len); } - void add_to_jar_directory(const char* fname, bool store, int modtime, - int len, int clen, uLong crc); - void write_jar_header(const char* fname, bool store, int modtime, diff --git a/pr2737-allow_multiple_pkcs11_library_initialisation_to_be_a_non_critical_error.patch b/pr2737-allow_multiple_pkcs11_library_initialisation_to_be_a_non_critical_error.patch deleted file mode 100644 index f1e8bc29539205fb09a8b565e7c9ea9c44a818b2..0000000000000000000000000000000000000000 --- a/pr2737-allow_multiple_pkcs11_library_initialisation_to_be_a_non_critical_error.patch +++ /dev/null @@ -1,74 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1352129932 0 -# Node ID e9c857dcb964dbfa5eef3a3590244cb4d999cf7a -# Parent 1406789608b76d0906881979335d685855f44190 -Allow multiple PKCS11 library initialisation to be a non-critical error. - -diff -r 1406789608b7 -r e9c857dcb964 src/share/classes/sun/security/pkcs11/Config.java ---- jdk8/jdk/src/share/classes/sun/security/pkcs11/Config.java Tue Oct 30 13:05:14 2012 +0000 -+++ jdk8/jdk/src/share/classes/sun/security/pkcs11/Config.java Mon Nov 05 15:38:52 2012 +0000 -@@ -52,6 +52,7 @@ - static final int ERR_HALT = 1; - static final int ERR_IGNORE_ALL = 2; - static final int ERR_IGNORE_LIB = 3; -+ static final int ERR_IGNORE_MULTI_INIT = 4; - - // same as allowSingleThreadedModules but controlled via a system property - // and applied to all providers. if set to false, no SunPKCS11 instances -@@ -980,6 +981,8 @@ - handleStartupErrors = ERR_IGNORE_LIB; - } else if (val.equals("halt")) { - handleStartupErrors = ERR_HALT; -+ } else if (val.equals("ignoreMultipleInitialisation")) { -+ handleStartupErrors = ERR_IGNORE_MULTI_INIT; - } else { - throw excToken("Invalid value for handleStartupErrors:"); - } -diff -r 1406789608b7 -r e9c857dcb964 src/share/classes/sun/security/pkcs11/SunPKCS11.java ---- jdk8/jdk/src/share/classes/sun/security/pkcs11/SunPKCS11.java Tue Oct 30 13:05:14 2012 +0000 -+++ jdk8/jdk/src/share/classes/sun/security/pkcs11/SunPKCS11.java Mon Nov 05 15:38:52 2012 +0000 -@@ -168,26 +168,37 @@ - String nssLibraryDirectory = config.getNssLibraryDirectory(); - String nssSecmodDirectory = config.getNssSecmodDirectory(); - boolean nssOptimizeSpace = config.getNssOptimizeSpace(); -+ int errorHandling = config.getHandleStartupErrors(); - - if (secmod.isInitialized()) { - if (nssSecmodDirectory != null) { - String s = secmod.getConfigDir(); - if ((s != null) && - (s.equals(nssSecmodDirectory) == false)) { -- throw new ProviderException("Secmod directory " -- + nssSecmodDirectory -- + " invalid, NSS already initialized with " -- + s); -+ String msg = "Secmod directory " + nssSecmodDirectory -+ + " invalid, NSS already initialized with " + s; -+ if (errorHandling == Config.ERR_IGNORE_MULTI_INIT || -+ errorHandling == Config.ERR_IGNORE_ALL) { -+ throw new UnsupportedOperationException(msg); -+ } else { -+ throw new ProviderException(msg); -+ } - } - } - if (nssLibraryDirectory != null) { - String s = secmod.getLibDir(); - if ((s != null) && - (s.equals(nssLibraryDirectory) == false)) { -- throw new ProviderException("NSS library directory " -+ String msg = "NSS library directory " - + nssLibraryDirectory - + " invalid, NSS already initialized with " -- + s); -+ + s; -+ if (errorHandling == Config.ERR_IGNORE_MULTI_INIT || -+ errorHandling == Config.ERR_IGNORE_ALL) { -+ throw new UnsupportedOperationException(msg); -+ } else { -+ throw new ProviderException(msg); -+ } - } - } - } else { diff --git a/pr2888-openjdk_should_check_for_system_cacerts_database_eg_etc_pki_java_cacerts.patch b/pr2888-openjdk_should_check_for_system_cacerts_database_eg_etc_pki_java_cacerts.patch deleted file mode 100644 index a42688defd3160c5457dbdb40e4c06dbd119f095..0000000000000000000000000000000000000000 --- a/pr2888-openjdk_should_check_for_system_cacerts_database_eg_etc_pki_java_cacerts.patch +++ /dev/null @@ -1,63 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1459487045 -3600 -# Fri Apr 01 06:04:05 2016 +0100 -# Node ID 3334efeacd8327a14b7d2f392f4546e3c29c594b -# Parent 6b81fd2227d14226f2121f2d51b464536925686e -PR2888: OpenJDK should check for system cacerts database (e.g. /etc/pki/java/cacerts) -PR3575: System cacerts database handling should not affect jssecacerts - -diff --git openjdk.orig/jdk/src/share/classes/sun/security/ssl/TrustStoreManager.java openjdk/jdk/src/share/classes/sun/security/ssl/TrustStoreManager.java ---- openjdk.orig/jdk/src/share/classes/sun/security/ssl/TrustStoreManager.java -+++ openjdk/jdk/src/share/classes/sun/security/ssl/TrustStoreManager.java -@@ -72,7 +72,7 @@ - * The preference of the default trusted KeyStore is: - * javax.net.ssl.trustStore - * jssecacerts -- * cacerts -+ * cacerts (system and local) - */ - private static final class TrustStoreDescriptor { - private static final String fileSep = File.separator; -@@ -83,6 +83,10 @@ - defaultStorePath + fileSep + "cacerts"; - private static final String jsseDefaultStore = - defaultStorePath + fileSep + "jssecacerts"; -+ /* Check system cacerts DB: /etc/pki/java/cacerts */ -+ private static final String systemStore = -+ fileSep + "etc" + fileSep + "pki" + -+ fileSep + "java" + fileSep + "cacerts"; - - // the trust store name - private final String storeName; -@@ -146,7 +150,8 @@ - long temporaryTime = 0L; - if (!"NONE".equals(storePropName)) { - String[] fileNames = -- new String[] {storePropName, defaultStore}; -+ new String[] {storePropName, -+ systemStore, defaultStore}; - for (String fileName : fileNames) { - File f = new File(fileName); - if (f.isFile() && f.canRead()) { -diff --git openjdk.orig/jdk/src/share/classes/sun/security/tools/KeyStoreUtil.java openjdk/jdk/src/share/classes/sun/security/tools/KeyStoreUtil.java ---- openjdk.orig/jdk/src/share/classes/sun/security/tools/KeyStoreUtil.java -+++ openjdk/jdk/src/share/classes/sun/security/tools/KeyStoreUtil.java -@@ -108,9 +108,14 @@ - throws Exception - { - String sep = File.separator; -- File file = new File(System.getProperty("java.home") + sep -- + "lib" + sep + "security" + sep -- + "cacerts"); -+ /* Check system cacerts DB first; /etc/pki/java/cacerts */ -+ File file = new File(sep + "etc" + sep + "pki" + sep -+ + "java" + sep + "cacerts"); -+ if (!file.exists()) { -+ file = new File(System.getProperty("java.home") + sep -+ + "lib" + sep + "security" + sep -+ + "cacerts"); -+ } - if (!file.exists()) { - return null; - } diff --git a/pr2974-rh1337583-add_systemlineendings_option_to_keytool_and_use_line_separator_instead_of_crlf_in_pkcs10.patch b/pr2974-rh1337583-add_systemlineendings_option_to_keytool_and_use_line_separator_instead_of_crlf_in_pkcs10.patch deleted file mode 100644 index 06973aae0807538549672bec7a32bbc17997942c..0000000000000000000000000000000000000000 --- a/pr2974-rh1337583-add_systemlineendings_option_to_keytool_and_use_line_separator_instead_of_crlf_in_pkcs10.patch +++ /dev/null @@ -1,140 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1464316115 -3600 -# Fri May 27 03:28:35 2016 +0100 -# Node ID 794541fbbdc323f7da8a5cee75611f977eee66ee -# Parent 0be28a33e12dfc9ae1e4be381530643f691d351a -PR2974: PKCS#10 certificate requests now use CRLF line endings rather than system line endings -Summary: Add -systemlineendings option to keytool to allow system line endings to be used again. - -diff --git openjdk.orig/jdk/src/share/classes/sun/security/pkcs10/PKCS10.java openjdk/jdk/src/share/classes/sun/security/pkcs10/PKCS10.java ---- openjdk.orig/jdk/src/share/classes/sun/security/pkcs10/PKCS10.java -+++ openjdk/jdk/src/share/classes/sun/security/pkcs10/PKCS10.java -@@ -35,6 +35,7 @@ - - import java.util.Base64; - -+import sun.security.action.GetPropertyAction; - import sun.security.util.*; - import sun.security.x509.AlgorithmId; - import sun.security.x509.X509Key; -@@ -74,6 +75,14 @@ - * @author Hemma Prafullchandra - */ - public class PKCS10 { -+ -+ private static final byte[] sysLineEndings; -+ -+ static { -+ sysLineEndings = -+ AccessController.doPrivileged(new GetPropertyAction("line.separator")).getBytes(); -+ } -+ - /** - * Constructs an unsigned PKCS #10 certificate request. Before this - * request may be used, it must be encoded and signed. Then it -@@ -303,13 +312,39 @@ - */ - public void print(PrintStream out) - throws IOException, SignatureException { -+ print(out, false); -+ } -+ -+ /** -+ * Prints an E-Mailable version of the certificate request on the print -+ * stream passed. The format is a common base64 encoded one, supported -+ * by most Certificate Authorities because Netscape web servers have -+ * used this for some time. Some certificate authorities expect some -+ * more information, in particular contact information for the web -+ * server administrator. -+ * -+ * @param out the print stream where the certificate request -+ * will be printed. -+ * @param systemLineEndings true if the request should be terminated -+ * using the system line endings. -+ * @exception IOException when an output operation failed -+ * @exception SignatureException when the certificate request was -+ * not yet signed. -+ */ -+ public void print(PrintStream out, boolean systemLineEndings) -+ throws IOException, SignatureException { -+ byte[] lineEndings; -+ - if (encoded == null) - throw new SignatureException("Cert request was not signed"); - -+ if (systemLineEndings) -+ lineEndings = sysLineEndings; -+ else -+ lineEndings = new byte[] {'\r', '\n'}; // CRLF - -- byte[] CRLF = new byte[] {'\r', '\n'}; - out.println("-----BEGIN NEW CERTIFICATE REQUEST-----"); -- out.println(Base64.getMimeEncoder(64, CRLF).encodeToString(encoded)); -+ out.println(Base64.getMimeEncoder(64, lineEndings).encodeToString(encoded)); - out.println("-----END NEW CERTIFICATE REQUEST-----"); - } - -diff --git openjdk.orig/jdk/src/share/classes/sun/security/tools/keytool/Main.java openjdk/jdk/src/share/classes/sun/security/tools/keytool/Main.java ---- openjdk.orig/jdk/src/share/classes/sun/security/tools/keytool/Main.java -+++ openjdk/jdk/src/share/classes/sun/security/tools/keytool/Main.java -@@ -126,6 +126,7 @@ - private String infilename = null; - private String outfilename = null; - private String srcksfname = null; -+ private boolean systemLineEndings = false; - - // User-specified providers are added before any command is called. - // However, they are not removed before the end of the main() method. -@@ -188,7 +189,7 @@ - CERTREQ("Generates.a.certificate.request", - ALIAS, SIGALG, FILEOUT, KEYPASS, KEYSTORE, DNAME, - STOREPASS, STORETYPE, PROVIDERNAME, PROVIDERCLASS, -- PROVIDERARG, PROVIDERPATH, V, PROTECTED), -+ PROVIDERARG, PROVIDERPATH, SYSTEMLINEENDINGS, V, PROTECTED), - CHANGEALIAS("Changes.an.entry.s.alias", - ALIAS, DESTALIAS, KEYPASS, KEYSTORE, STOREPASS, - STORETYPE, PROVIDERNAME, PROVIDERCLASS, PROVIDERARG, -@@ -321,6 +322,7 @@ - STARTDATE("startdate", "", "certificate.validity.start.date.time"), - STOREPASS("storepass", "", "keystore.password"), - STORETYPE("storetype", "", "keystore.type"), -+ SYSTEMLINEENDINGS("systemlineendings", null, "system.line.endings"), - TRUSTCACERTS("trustcacerts", null, "trust.certificates.from.cacerts"), - V("v", null, "verbose.output"), - VALIDITY("validity", "", "validity.number.of.days"); -@@ -561,6 +563,8 @@ - protectedPath = true; - } else if (collator.compare(flags, "-srcprotected") == 0) { - srcprotectedPath = true; -+ } else if (collator.compare(flags, "-systemlineendings") == 0) { -+ systemLineEndings = true; - } else { - System.err.println(rb.getString("Illegal.option.") + flags); - tinyHelp(); -@@ -1464,7 +1468,7 @@ - - // Sign the request and base-64 encode it - request.encodeAndSign(subject, signature); -- request.print(out); -+ request.print(out, systemLineEndings); - - checkWeak(rb.getString("the.generated.certificate.request"), request); - } -@@ -4544,4 +4548,3 @@ - return new Pair<>(a,b); - } - } -- -diff --git openjdk.orig/jdk/src/share/classes/sun/security/tools/keytool/Resources.java openjdk/jdk/src/share/classes/sun/security/tools/keytool/Resources.java ---- openjdk.orig/jdk/src/share/classes/sun/security/tools/keytool/Resources.java -+++ openjdk/jdk/src/share/classes/sun/security/tools/keytool/Resources.java -@@ -168,6 +168,8 @@ - "keystore password"}, //-storepass - {"keystore.type", - "keystore type"}, //-storetype -+ {"system.line.endings", -+ "use system line endings rather than CRLF to terminate output"}, //-systemlineendings - {"trust.certificates.from.cacerts", - "trust certificates from cacerts"}, //-trustcacerts - {"verbose.output", diff --git a/pr3083-rh1346460-for_ssl_debug_return_null_instead_of_exception_when_theres_no_ecc_provider.patch b/pr3083-rh1346460-for_ssl_debug_return_null_instead_of_exception_when_theres_no_ecc_provider.patch deleted file mode 100644 index 00e3a2ebd36a48a1e76f4e0dc63146db326bb76d..0000000000000000000000000000000000000000 --- a/pr3083-rh1346460-for_ssl_debug_return_null_instead_of_exception_when_theres_no_ecc_provider.patch +++ /dev/null @@ -1,164 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1467652889 -3600 -# Mon Jul 04 18:21:29 2016 +0100 -# Node ID a4541d1d8609cadb08d3e31b40b9184ff32dd6c3 -# Parent bc6eab2038c603afb2eb2b4644f3b900c8fd0c46 -PR3083, RH1346460: Regression in SSL debug output without an ECC provider -Summary: Return null rather than throwing an exception when there's no ECC provider. - -diff --git openjdk.orig/jdk/src/share/classes/sun/security/ec/ECKeyPairGenerator.java openjdk/jdk/src/share/classes/sun/security/ec/ECKeyPairGenerator.java ---- openjdk.orig/jdk/src/share/classes/sun/security/ec/ECKeyPairGenerator.java -+++ openjdk/jdk/src/share/classes/sun/security/ec/ECKeyPairGenerator.java -@@ -121,7 +121,7 @@ - private static void ensureCurveIsSupported(ECParameterSpec ecSpec) - throws InvalidAlgorithmParameterException { - -- AlgorithmParameters ecParams = ECUtil.getECParameters(null); -+ AlgorithmParameters ecParams = ECUtil.getECParameters(null, true); - byte[] encodedParams; - try { - ecParams.init(ecSpec); -diff --git openjdk.orig/jdk/src/share/classes/sun/security/util/Debug.java openjdk/jdk/src/share/classes/sun/security/util/Debug.java ---- openjdk.orig/jdk/src/share/classes/sun/security/util/Debug.java -+++ openjdk/jdk/src/share/classes/sun/security/util/Debug.java -@@ -73,6 +73,7 @@ - System.err.println("certpath PKIX CertPathBuilder and"); - System.err.println(" CertPathValidator debugging"); - System.err.println("combiner SubjectDomainCombiner debugging"); -+ System.err.println("ecc Elliptic Curve Cryptography debugging"); - System.err.println("gssloginconfig"); - System.err.println(" GSS LoginConfigImpl debugging"); - System.err.println("configfile JAAS ConfigFile loading"); -diff --git openjdk.orig/jdk/src/share/classes/sun/security/util/ECUtil.java openjdk/jdk/src/share/classes/sun/security/util/ECUtil.java ---- openjdk.orig/jdk/src/share/classes/sun/security/util/ECUtil.java -+++ openjdk/jdk/src/share/classes/sun/security/util/ECUtil.java -@@ -41,6 +41,9 @@ - - public final class ECUtil { - -+ /* Are we debugging ? */ -+ private static final Debug debug = Debug.getInstance("ecc"); -+ - // Used by SunPKCS11 and SunJSSE. - public static ECPoint decodePoint(byte[] data, EllipticCurve curve) - throws IOException { -@@ -90,6 +93,10 @@ - } - - public static AlgorithmParameters getECParameters(Provider p) { -+ return getECParameters(p, false); -+ } -+ -+ public static AlgorithmParameters getECParameters(Provider p, boolean throwException) { - try { - if (p != null) { - return AlgorithmParameters.getInstance("EC", p); -@@ -97,13 +104,21 @@ - - return AlgorithmParameters.getInstance("EC"); - } catch (NoSuchAlgorithmException nsae) { -- throw new RuntimeException(nsae); -+ if (throwException) { -+ throw new RuntimeException(nsae); -+ } else { -+ // ECC provider is optional so just return null -+ if (debug != null) { -+ debug.println("Provider unavailable: " + nsae); -+ } -+ return null; -+ } - } - } - - public static byte[] encodeECParameterSpec(Provider p, - ECParameterSpec spec) { -- AlgorithmParameters parameters = getECParameters(p); -+ AlgorithmParameters parameters = getECParameters(p, true); - - try { - parameters.init(spec); -@@ -122,11 +137,16 @@ - public static ECParameterSpec getECParameterSpec(Provider p, - ECParameterSpec spec) { - AlgorithmParameters parameters = getECParameters(p); -+ if (parameters == null) -+ return null; - - try { - parameters.init(spec); - return parameters.getParameterSpec(ECParameterSpec.class); - } catch (InvalidParameterSpecException ipse) { -+ if (debug != null) { -+ debug.println("Invalid parameter specification: " + ipse); -+ } - return null; - } - } -@@ -135,34 +155,49 @@ - byte[] params) - throws IOException { - AlgorithmParameters parameters = getECParameters(p); -+ if (parameters == null) -+ return null; - - parameters.init(params); - - try { - return parameters.getParameterSpec(ECParameterSpec.class); - } catch (InvalidParameterSpecException ipse) { -+ if (debug != null) { -+ debug.println("Invalid parameter specification: " + ipse); -+ } - return null; - } - } - - public static ECParameterSpec getECParameterSpec(Provider p, String name) { - AlgorithmParameters parameters = getECParameters(p); -+ if (parameters == null) -+ return null; - - try { - parameters.init(new ECGenParameterSpec(name)); - return parameters.getParameterSpec(ECParameterSpec.class); - } catch (InvalidParameterSpecException ipse) { -+ if (debug != null) { -+ debug.println("Invalid parameter specification: " + ipse); -+ } - return null; - } - } - - public static ECParameterSpec getECParameterSpec(Provider p, int keySize) { - AlgorithmParameters parameters = getECParameters(p); -+ if (parameters == null) -+ return null; - - try { - parameters.init(new ECKeySizeParameterSpec(keySize)); - return parameters.getParameterSpec(ECParameterSpec.class); - } catch (InvalidParameterSpecException ipse) { -+ if (debug != null) { -+ debug.println("Invalid parameter specification: " + ipse); -+ } - return null; - } - -@@ -171,11 +206,16 @@ - public static String getCurveName(Provider p, ECParameterSpec spec) { - ECGenParameterSpec nameSpec; - AlgorithmParameters parameters = getECParameters(p); -+ if (parameters == null) -+ return null; - - try { - parameters.init(spec); - nameSpec = parameters.getParameterSpec(ECGenParameterSpec.class); - } catch (InvalidParameterSpecException ipse) { -+ if (debug != null) { -+ debug.println("Invalid parameter specification: " + ipse); -+ } - return null; - } - diff --git a/pr3183-rh1340845-support_fedora_rhel_system_crypto_policy.patch b/pr3183-rh1340845-support_fedora_rhel_system_crypto_policy.patch deleted file mode 100644 index 5a619b4e9a21f059484791026c3c5d5c1bac28f7..0000000000000000000000000000000000000000 --- a/pr3183-rh1340845-support_fedora_rhel_system_crypto_policy.patch +++ /dev/null @@ -1,158 +0,0 @@ - -# HG changeset patch -# User andrew -# Date 1478057514 0 -# Node ID 1c4d5cb2096ae55106111da200b0bcad304f650c -# Parent 3d53f19b48384e5252f4ec8891f7a3a82d77af2a -PR3183: Support Fedora/RHEL system crypto policy - -diff -r 3d53f19b4838 -r 1c4d5cb2096a src/share/classes/java/security/Security.java ---- openjdk/jdk/src/share/classes/java/security/Security.java Wed Oct 26 03:51:39 2016 +0100 -+++ openjdk/jdk/src/share/classes/java/security/Security.java Wed Nov 02 03:31:54 2016 +0000 -@@ -43,6 +43,9 @@ - * implementation-specific location, which is typically the properties file - * {@code lib/security/java.security} in the Java installation directory. - * -+ *

Additional default values of security properties are read from a -+ * system-specific location, if available.

-+ * - * @author Benjamin Renaud - */ - -@@ -52,6 +55,10 @@ - private static final Debug sdebug = - Debug.getInstance("properties"); - -+ /* System property file*/ -+ private static final String SYSTEM_PROPERTIES = -+ "/etc/crypto-policies/back-ends/java.config"; -+ - /* The java.security properties */ - private static Properties props; - -@@ -93,6 +100,7 @@ - if (sdebug != null) { - sdebug.println("reading security properties file: " + - propFile); -+ sdebug.println(props.toString()); - } - } catch (IOException e) { - if (sdebug != null) { -@@ -114,6 +122,31 @@ - } - - if ("true".equalsIgnoreCase(props.getProperty -+ ("security.useSystemPropertiesFile"))) { -+ -+ // now load the system file, if it exists, so its values -+ // will win if they conflict with the earlier values -+ try (BufferedInputStream bis = -+ new BufferedInputStream(new FileInputStream(SYSTEM_PROPERTIES))) { -+ props.load(bis); -+ loadedProps = true; -+ -+ if (sdebug != null) { -+ sdebug.println("reading system security properties file " + -+ SYSTEM_PROPERTIES); -+ sdebug.println(props.toString()); -+ } -+ } catch (IOException e) { -+ if (sdebug != null) { -+ sdebug.println -+ ("unable to load security properties from " + -+ SYSTEM_PROPERTIES); -+ e.printStackTrace(); -+ } -+ } -+ } -+ -+ if ("true".equalsIgnoreCase(props.getProperty - ("security.overridePropertiesFile"))) { - - String extraPropFile = System.getProperty -diff -r 3d53f19b4838 -r 1c4d5cb2096a src/share/lib/security/java.security-aix ---- openjdk/jdk/src/share/lib/security/java.security-aix Wed Oct 26 03:51:39 2016 +0100 -+++ openjdk/jdk/src/share/lib/security/java.security-aix Wed Nov 02 03:31:54 2016 +0000 -@@ -276,6 +276,13 @@ - security.overridePropertiesFile=true - - # -+# Determines whether this properties file will be appended to -+# using the system properties file stored at -+# /etc/crypto-policies/back-ends/java.config -+# -+security.useSystemPropertiesFile=false -+ -+# - # Determines the default key and trust manager factory algorithms for - # the javax.net.ssl package. - # -diff -r 3d53f19b4838 -r 1c4d5cb2096a src/share/lib/security/java.security-linux ---- openjdk/jdk/src/share/lib/security/java.security-linux Wed Oct 26 03:51:39 2016 +0100 -+++ openjdk/jdk/src/share/lib/security/java.security-linux Wed Nov 02 03:31:54 2016 +0000 -@@ -276,6 +276,13 @@ - security.overridePropertiesFile=true - - # -+# Determines whether this properties file will be appended to -+# using the system properties file stored at -+# /etc/crypto-policies/back-ends/java.config -+# -+security.useSystemPropertiesFile=true -+ -+# - # Determines the default key and trust manager factory algorithms for - # the javax.net.ssl package. - # -diff -r 3d53f19b4838 -r 1c4d5cb2096a src/share/lib/security/java.security-macosx ---- openjdk/jdk/src/share/lib/security/java.security-macosx Wed Oct 26 03:51:39 2016 +0100 -+++ openjdk/jdk/src/share/lib/security/java.security-macosx Wed Nov 02 03:31:54 2016 +0000 -@@ -279,6 +279,13 @@ - security.overridePropertiesFile=true - - # -+# Determines whether this properties file will be appended to -+# using the system properties file stored at -+# /etc/crypto-policies/back-ends/java.config -+# -+security.useSystemPropertiesFile=false -+ -+# - # Determines the default key and trust manager factory algorithms for - # the javax.net.ssl package. - # -diff -r 3d53f19b4838 -r 1c4d5cb2096a src/share/lib/security/java.security-solaris ---- openjdk/jdk/src/share/lib/security/java.security-solaris Wed Oct 26 03:51:39 2016 +0100 -+++ openjdk/jdk/src/share/lib/security/java.security-solaris Wed Nov 02 03:31:54 2016 +0000 -@@ -278,6 +278,13 @@ - security.overridePropertiesFile=true - - # -+# Determines whether this properties file will be appended to -+# using the system properties file stored at -+# /etc/crypto-policies/back-ends/java.config -+# -+security.useSystemPropertiesFile=false -+ -+# - # Determines the default key and trust manager factory algorithms for - # the javax.net.ssl package. - # -diff -r 3d53f19b4838 -r 1c4d5cb2096a src/share/lib/security/java.security-windows ---- openjdk/jdk/src/share/lib/security/java.security-windows Wed Oct 26 03:51:39 2016 +0100 -+++ openjdk/jdk/src/share/lib/security/java.security-windows Wed Nov 02 03:31:54 2016 +0000 -@@ -279,6 +279,13 @@ - security.overridePropertiesFile=true - - # -+# Determines whether this properties file will be appended to -+# using the system properties file stored at -+# /etc/crypto-policies/back-ends/java.config -+# -+security.useSystemPropertiesFile=false -+ -+# - # Determines the default key and trust manager factory algorithms for - # the javax.net.ssl package. - # - diff --git a/pr3593-s390_use_z_format_specifier_for_size_t_arguments_as_size_t_not_equals_to_int.patch b/pr3593-s390_use_z_format_specifier_for_size_t_arguments_as_size_t_not_equals_to_int.patch deleted file mode 100644 index a98089567828b5459ff149468294dc28b50bda4a..0000000000000000000000000000000000000000 --- a/pr3593-s390_use_z_format_specifier_for_size_t_arguments_as_size_t_not_equals_to_int.patch +++ /dev/null @@ -1,166 +0,0 @@ -diff --git openjdk.orig/hotspot/src/share/vm/asm/codeBuffer.cpp openjdk/hotspot/src/share/vm/asm/codeBuffer.cpp ---- openjdk.orig/hotspot/src/share/vm/asm/codeBuffer.cpp -+++ openjdk/hotspot/src/share/vm/asm/codeBuffer.cpp -@@ -977,7 +977,7 @@ - for (int n = (int) CodeBuffer::SECT_FIRST; n < (int) CodeBuffer::SECT_LIMIT; n++) { - CodeSection* sect = code_section(n); - if (!sect->is_allocated() || sect->is_empty()) continue; -- xtty->print_cr("", -+ xtty->print_cr("", - n, sect->limit() - sect->start(), sect->limit() - sect->end()); - } - xtty->print_cr(""); -diff --git openjdk.orig/hotspot/src/share/vm/code/codeCache.cpp openjdk/hotspot/src/share/vm/code/codeCache.cpp ---- openjdk.orig/hotspot/src/share/vm/code/codeCache.cpp -+++ openjdk/hotspot/src/share/vm/code/codeCache.cpp -@@ -192,7 +192,7 @@ - } - if (PrintCodeCacheExtension) { - ResourceMark rm; -- tty->print_cr("code cache extended to [" INTPTR_FORMAT ", " INTPTR_FORMAT "] (" SSIZE_FORMAT " bytes)", -+ tty->print_cr("code cache extended to [" INTPTR_FORMAT ", " INTPTR_FORMAT "] (" INTX_FORMAT " bytes)", - (intptr_t)_heap->low_boundary(), (intptr_t)_heap->high(), - (address)_heap->high() - (address)_heap->low_boundary()); - } -diff --git openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp openjdk/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp -@@ -598,7 +598,7 @@ - " [Table]\n" - " [Memory Usage: " G1_STRDEDUP_BYTES_FORMAT_NS "]\n" - " [Size: " SIZE_FORMAT ", Min: " SIZE_FORMAT ", Max: " SIZE_FORMAT "]\n" -- " [Entries: " UINTX_FORMAT ", Load: " G1_STRDEDUP_PERCENT_FORMAT_NS ", Cached: " UINTX_FORMAT ", Added: " UINTX_FORMAT ", Removed: " UINTX_FORMAT "]\n" -+ " [Entries: " UINTX_FORMAT ", Load: " G1_STRDEDUP_PERCENT_FORMAT_NS ", Cached: " SIZE_FORMAT ", Added: " UINTX_FORMAT ", Removed: " UINTX_FORMAT "]\n" - " [Resize Count: " UINTX_FORMAT ", Shrink Threshold: " UINTX_FORMAT "(" G1_STRDEDUP_PERCENT_FORMAT_NS "), Grow Threshold: " UINTX_FORMAT "(" G1_STRDEDUP_PERCENT_FORMAT_NS ")]\n" - " [Rehash Count: " UINTX_FORMAT ", Rehash Threshold: " UINTX_FORMAT ", Hash Seed: " UINT64_FORMAT "]\n" - " [Age Threshold: " UINTX_FORMAT "]", -diff --git openjdk.orig/hotspot/src/share/vm/memory/blockOffsetTable.cpp openjdk/hotspot/src/share/vm/memory/blockOffsetTable.cpp ---- openjdk.orig/hotspot/src/share/vm/memory/blockOffsetTable.cpp -+++ openjdk/hotspot/src/share/vm/memory/blockOffsetTable.cpp -@@ -57,7 +57,7 @@ - gclog_or_tty->print_cr("BlockOffsetSharedArray::BlockOffsetSharedArray: "); - gclog_or_tty->print_cr(" " - " rs.base(): " INTPTR_FORMAT -- " rs.size(): " INTPTR_FORMAT -+ " rs.size(): " SIZE_FORMAT - " rs end(): " INTPTR_FORMAT, - p2i(rs.base()), rs.size(), p2i(rs.base() + rs.size())); - gclog_or_tty->print_cr(" " -diff --git openjdk.orig/hotspot/src/share/vm/memory/collectorPolicy.cpp openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp ---- openjdk.orig/hotspot/src/share/vm/memory/collectorPolicy.cpp -+++ openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp -@@ -1055,7 +1055,8 @@ - size_t expected = msp.scale_by_NewRatio_aligned(initial_heap_size); - assert(msp.initial_gen0_size() == expected, err_msg("%zu != %zu", msp.initial_gen0_size(), expected)); - assert(FLAG_IS_ERGO(NewSize) && NewSize == expected, -- err_msg("NewSize should have been set ergonomically to %zu, but was %zu", expected, NewSize)); -+ err_msg("NewSize should have been set ergonomically to " SIZE_FORMAT ", but was " UINTX_FORMAT, -+ expected, NewSize)); - } - - private: -diff --git openjdk.orig/hotspot/src/share/vm/runtime/arguments.cpp openjdk/hotspot/src/share/vm/runtime/arguments.cpp ---- openjdk.orig/hotspot/src/share/vm/runtime/arguments.cpp -+++ openjdk/hotspot/src/share/vm/runtime/arguments.cpp -@@ -1291,14 +1291,14 @@ - } - if (PrintGCDetails && Verbose) { - // Too early to use gclog_or_tty -- tty->print_cr("CMS ergo set MaxNewSize: " SIZE_FORMAT, MaxNewSize); -+ tty->print_cr("CMS ergo set MaxNewSize: " UINTX_FORMAT, MaxNewSize); - } - - // Code along this path potentially sets NewSize and OldSize - if (PrintGCDetails && Verbose) { - // Too early to use gclog_or_tty -- tty->print_cr("CMS set min_heap_size: " SIZE_FORMAT -- " initial_heap_size: " SIZE_FORMAT -+ tty->print_cr("CMS set min_heap_size: " UINTX_FORMAT -+ " initial_heap_size: " UINTX_FORMAT - " max_heap: " SIZE_FORMAT, - min_heap_size(), InitialHeapSize, max_heap); - } -@@ -1314,7 +1314,7 @@ - FLAG_SET_ERGO(uintx, NewSize, MIN2(preferred_max_new_size, (size_t)NewSize)); - if (PrintGCDetails && Verbose) { - // Too early to use gclog_or_tty -- tty->print_cr("CMS ergo set NewSize: " SIZE_FORMAT, NewSize); -+ tty->print_cr("CMS ergo set NewSize: " UINTX_FORMAT, NewSize); - } - } - // Unless explicitly requested otherwise, size old gen -@@ -1324,7 +1324,7 @@ - FLAG_SET_ERGO(uintx, OldSize, MIN2((size_t)(NewRatio*NewSize), max_heap - NewSize)); - if (PrintGCDetails && Verbose) { - // Too early to use gclog_or_tty -- tty->print_cr("CMS ergo set OldSize: " SIZE_FORMAT, OldSize); -+ tty->print_cr("CMS ergo set OldSize: " UINTX_FORMAT, OldSize); - } - } - } -@@ -2043,7 +2043,7 @@ - - if (PrintGCDetails && Verbose) { - // Cannot use gclog_or_tty yet. -- tty->print_cr(" Initial heap size " SIZE_FORMAT, (uintx)reasonable_initial); -+ tty->print_cr(" Initial heap size " SIZE_FORMAT, (size_t)reasonable_initial); - } - FLAG_SET_ERGO(uintx, InitialHeapSize, (uintx)reasonable_initial); - } -@@ -2053,7 +2053,7 @@ - set_min_heap_size(MIN2((uintx)reasonable_minimum, InitialHeapSize)); - if (PrintGCDetails && Verbose) { - // Cannot use gclog_or_tty yet. -- tty->print_cr(" Minimum heap size " SIZE_FORMAT, min_heap_size()); -+ tty->print_cr(" Minimum heap size " UINTX_FORMAT, min_heap_size()); - } - } - } -diff --git openjdk.orig/hotspot/src/share/vm/utilities/globalDefinitions.hpp openjdk/hotspot/src/share/vm/utilities/globalDefinitions.hpp ---- openjdk.orig/hotspot/src/share/vm/utilities/globalDefinitions.hpp -+++ openjdk/hotspot/src/share/vm/utilities/globalDefinitions.hpp -@@ -1389,12 +1389,21 @@ - - #define INTPTR_FORMAT_W(width) "%" #width PRIxPTR - -+#if defined(S390) && !defined(_LP64) -+#define SSIZE_FORMAT "%z" PRIdPTR -+#define SIZE_FORMAT "%z" PRIuPTR -+#define SIZE_FORMAT_HEX "0x%z" PRIxPTR -+#define SSIZE_FORMAT_W(width) "%" #width "z" PRIdPTR -+#define SIZE_FORMAT_W(width) "%" #width "z" PRIuPTR -+#define SIZE_FORMAT_HEX_W(width) "0x%" #width "z" PRIxPTR -+#else // !S390 - #define SSIZE_FORMAT "%" PRIdPTR - #define SIZE_FORMAT "%" PRIuPTR - #define SIZE_FORMAT_HEX "0x%" PRIxPTR - #define SSIZE_FORMAT_W(width) "%" #width PRIdPTR - #define SIZE_FORMAT_W(width) "%" #width PRIuPTR - #define SIZE_FORMAT_HEX_W(width) "0x%" #width PRIxPTR -+#endif // S390 - - #define INTX_FORMAT "%" PRIdPTR - #define UINTX_FORMAT "%" PRIuPTR -diff --git openjdk.orig/hotspot/src/share/vm/runtime/memprofiler.cpp openjdk/hotspot/src/share/vm/runtime/memprofiler.cpp ---- openjdk.orig/hotspot/src/share/vm/runtime/memprofiler.cpp -+++ openjdk/hotspot/src/share/vm/runtime/memprofiler.cpp -@@ -117,16 +117,16 @@ - } - - // Print trace line in log -- fprintf(_log_fp, "%6.1f,%5d,%5d," UINTX_FORMAT_W(6) "," UINTX_FORMAT_W(6) ",", -+ fprintf(_log_fp, "%6.1f,%5d,%5d," SIZE_FORMAT_W(6) "," SIZE_FORMAT_W(6) ",", - os::elapsedTime(), - Threads::number_of_threads(), - SystemDictionary::number_of_classes(), - Universe::heap()->used() / K, - Universe::heap()->capacity() / K); - -- fprintf(_log_fp, UINTX_FORMAT_W(6) ",", CodeCache::capacity() / K); -+ fprintf(_log_fp, SIZE_FORMAT_W(6) ",", CodeCache::capacity() / K); - -- fprintf(_log_fp, UINTX_FORMAT_W(6) "," UINTX_FORMAT_W(6) "," UINTX_FORMAT_W(6) "\n", -+ fprintf(_log_fp, SIZE_FORMAT_W(6) "," SIZE_FORMAT_W(6) "," SIZE_FORMAT_W(6) "\n", - handles_memory_usage / K, - resource_memory_usage / K, - OopMapCache::memory_usage() / K); diff --git a/pr3655-toggle_system_crypto_policy.patch b/pr3655-toggle_system_crypto_policy.patch deleted file mode 100644 index abfac4544b150b4c0266114a7cd165964120ab6a..0000000000000000000000000000000000000000 --- a/pr3655-toggle_system_crypto_policy.patch +++ /dev/null @@ -1,78 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1545198926 0 -# Wed Dec 19 05:55:26 2018 +0000 -# Node ID f2cbd688824c128db7fa848c8732fb0ab3507776 -# Parent 81f07f6d1f8b7b51b136d3974c61bc8bb513770c -PR3655: Allow use of system crypto policy to be disabled by the user -Summary: Read user overrides first so security.useSystemPropertiesFile can be disabled and add -Djava.security.disableSystemPropertiesFile - -diff --git a/src/share/classes/javopenjdk.orig/jdk/security/Security.java openjdk/jdk/src/share/classes/java/security/Security.java ---- openjdk.orig/jdk/src/share/classes/java/security/Security.java -+++ openjdk/jdk/src/share/classes/java/security/Security.java -@@ -122,31 +122,6 @@ - } - - if ("true".equalsIgnoreCase(props.getProperty -- ("security.useSystemPropertiesFile"))) { -- -- // now load the system file, if it exists, so its values -- // will win if they conflict with the earlier values -- try (BufferedInputStream bis = -- new BufferedInputStream(new FileInputStream(SYSTEM_PROPERTIES))) { -- props.load(bis); -- loadedProps = true; -- -- if (sdebug != null) { -- sdebug.println("reading system security properties file " + -- SYSTEM_PROPERTIES); -- sdebug.println(props.toString()); -- } -- } catch (IOException e) { -- if (sdebug != null) { -- sdebug.println -- ("unable to load security properties from " + -- SYSTEM_PROPERTIES); -- e.printStackTrace(); -- } -- } -- } -- -- if ("true".equalsIgnoreCase(props.getProperty - ("security.overridePropertiesFile"))) { - - String extraPropFile = System.getProperty -@@ -212,6 +187,33 @@ - } - } - -+ String disableSystemProps = System.getProperty("java.security.disableSystemPropertiesFile"); -+ if (disableSystemProps == null && -+ "true".equalsIgnoreCase(props.getProperty -+ ("security.useSystemPropertiesFile"))) { -+ -+ // now load the system file, if it exists, so its values -+ // will win if they conflict with the earlier values -+ try (BufferedInputStream bis = -+ new BufferedInputStream(new FileInputStream(SYSTEM_PROPERTIES))) { -+ props.load(bis); -+ loadedProps = true; -+ -+ if (sdebug != null) { -+ sdebug.println("reading system security properties file " + -+ SYSTEM_PROPERTIES); -+ sdebug.println(props.toString()); -+ } -+ } catch (IOException e) { -+ if (sdebug != null) { -+ sdebug.println -+ ("unable to load security properties from " + -+ SYSTEM_PROPERTIES); -+ e.printStackTrace(); -+ } -+ } -+ } -+ - if (!loadedProps) { - initializeStatic(); - if (sdebug != null) { diff --git a/pr833097-bugfix-openjkd-8-undeined-symbols.patch b/pr833097-bugfix-openjkd-8-undeined-symbols.patch deleted file mode 100644 index 82342a74a15eca4df427373541ca687678a33ee1..0000000000000000000000000000000000000000 --- a/pr833097-bugfix-openjkd-8-undeined-symbols.patch +++ /dev/null @@ -1,648 +0,0 @@ -From eaabb575efb8269fb0a455f28894d77b89af3fda Mon Sep 17 00:00:00 2001 -From: root -Date: Thu, 2 Jun 2022 03:40:32 -0400 -Subject: [PATCH] bugfix the undefine symbols - ---- - hotspot/src/share/vm/classfile/classLoaderData.cpp | 1 + - hotspot/src/share/vm/classfile/dictionary.cpp | 1 + - hotspot/src/share/vm/classfile/symbolTable.cpp | 1 + - hotspot/src/share/vm/classfile/systemDictionary.cpp | 1 + - hotspot/src/share/vm/code/nmethod.cpp | 1 + - hotspot/src/share/vm/compiler/oopMap.cpp | 1 + - .../concurrentMarkSweep/compactibleFreeListSpace.cpp | 1 + - .../concurrentMarkSweep/concurrentMarkSweepGeneration.cpp | 1 + - hotspot/src/share/vm/gc_implementation/g1/g1CodeCacheRemSet.cpp | 1 + - hotspot/src/share/vm/gc_implementation/g1/g1RootProcessor.cpp | 1 + - hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp | 1 + - hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp | 1 + - .../src/share/vm/gc_implementation/parNew/parNewGeneration.cpp | 1 + - .../vm/gc_implementation/parallelScavenge/cardTableExtension.cpp | 1 + - .../vm/gc_implementation/parallelScavenge/psParallelCompact.cpp | 1 + - .../share/vm/gc_implementation/parallelScavenge/psScavenge.cpp | 1 + - .../src/share/vm/gc_implementation/parallelScavenge/psTasks.cpp | 1 + - hotspot/src/share/vm/gc_implementation/shared/markSweep.cpp | 1 + - hotspot/src/share/vm/gc_implementation/shared/mutableSpace.cpp | 1 + - hotspot/src/share/vm/memory/cardTableRS.cpp | 1 + - hotspot/src/share/vm/memory/defNewGeneration.cpp | 1 + - hotspot/src/share/vm/memory/referenceProcessor.cpp | 1 + - hotspot/src/share/vm/memory/universe.cpp | 1 + - hotspot/src/share/vm/oops/arrayKlass.cpp | 1 + - hotspot/src/share/vm/oops/instanceClassLoaderKlass.cpp | 1 + - hotspot/src/share/vm/oops/klass.cpp | 1 + - hotspot/src/share/vm/oops/oop.cpp | 1 + - hotspot/src/share/vm/precompiled/precompiled.hpp | 1 + - hotspot/src/share/vm/prims/jvmtiExport.cpp | 1 + - hotspot/src/share/vm/prims/jvmtiImpl.cpp | 1 + - hotspot/src/share/vm/prims/jvmtiTagMap.cpp | 1 + - hotspot/src/share/vm/prims/jvmtiThreadState.cpp | 1 + - hotspot/src/share/vm/prims/privilegedStack.cpp | 1 + - hotspot/src/share/vm/runtime/fprofiler.cpp | 1 + - hotspot/src/share/vm/runtime/frame.cpp | 1 + - hotspot/src/share/vm/runtime/handles.cpp | 1 + - hotspot/src/share/vm/runtime/javaCalls.cpp | 1 + - hotspot/src/share/vm/runtime/jniHandles.cpp | 1 + - hotspot/src/share/vm/runtime/monitorChunk.cpp | 1 + - hotspot/src/share/vm/runtime/synchronizer.cpp | 1 + - hotspot/src/share/vm/runtime/thread.cpp | 1 + - hotspot/src/share/vm/runtime/vframe_hp.cpp | 1 + - hotspot/src/share/vm/runtime/vmThread.cpp | 1 + - hotspot/src/share/vm/runtime/vm_operations.cpp | 1 + - hotspot/src/share/vm/services/heapDumper.cpp | 1 + - hotspot/src/share/vm/services/lowMemoryDetector.cpp | 1 + - hotspot/src/share/vm/services/memoryManager.cpp | 1 + - hotspot/src/share/vm/services/memoryPool.cpp | 1 + - hotspot/src/share/vm/services/threadService.cpp | 1 + - 49 files changed, 49 insertions(+) - -diff --git a/hotspot/src/share/vm/classfile/classLoaderData.cpp b/hotspot/src/share/vm/classfile/classLoaderData.cpp -index 690e1e57..d0daad93 100644 ---- a/hotspot/src/share/vm/classfile/classLoaderData.cpp -+++ b/hotspot/src/share/vm/classfile/classLoaderData.cpp -@@ -53,6 +53,7 @@ - #include "classfile/metadataOnStackMark.hpp" - #include "classfile/systemDictionary.hpp" - #include "code/codeCache.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "memory/gcLocker.hpp" - #include "memory/metadataFactory.hpp" - #include "memory/metaspaceShared.hpp" -diff --git a/hotspot/src/share/vm/classfile/dictionary.cpp b/hotspot/src/share/vm/classfile/dictionary.cpp -index 6df5ebf1..c8fac403 100644 ---- a/hotspot/src/share/vm/classfile/dictionary.cpp -+++ b/hotspot/src/share/vm/classfile/dictionary.cpp -@@ -26,6 +26,7 @@ - #include "classfile/dictionary.hpp" - #include "classfile/systemDictionary.hpp" - #include "classfile/systemDictionaryShared.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "memory/iterator.hpp" - #include "oops/oop.inline.hpp" - #include "prims/jvmtiRedefineClassesTrace.hpp" -diff --git a/hotspot/src/share/vm/classfile/symbolTable.cpp b/hotspot/src/share/vm/classfile/symbolTable.cpp -index 8dd4e6b2..06a12d56 100644 ---- a/hotspot/src/share/vm/classfile/symbolTable.cpp -+++ b/hotspot/src/share/vm/classfile/symbolTable.cpp -@@ -27,6 +27,7 @@ - #include "classfile/javaClasses.hpp" - #include "classfile/symbolTable.hpp" - #include "classfile/systemDictionary.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_interface/collectedHeap.inline.hpp" - #include "memory/allocation.inline.hpp" - #include "memory/filemap.hpp" -diff --git a/hotspot/src/share/vm/classfile/systemDictionary.cpp b/hotspot/src/share/vm/classfile/systemDictionary.cpp -index 9d8074d4..4eecb77f 100644 ---- a/hotspot/src/share/vm/classfile/systemDictionary.cpp -+++ b/hotspot/src/share/vm/classfile/systemDictionary.cpp -@@ -36,6 +36,7 @@ - #endif - #include "classfile/vmSymbols.hpp" - #include "compiler/compileBroker.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "interpreter/bytecodeStream.hpp" - #include "interpreter/interpreter.hpp" - #include "jfr/jfrEvents.hpp" -diff --git a/hotspot/src/share/vm/code/nmethod.cpp b/hotspot/src/share/vm/code/nmethod.cpp -index 373c9101..be8d6e10 100644 ---- a/hotspot/src/share/vm/code/nmethod.cpp -+++ b/hotspot/src/share/vm/code/nmethod.cpp -@@ -33,6 +33,7 @@ - #include "compiler/compileLog.hpp" - #include "compiler/compilerOracle.hpp" - #include "compiler/disassembler.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "interpreter/bytecode.hpp" - #include "jwarmup/jitWarmUp.hpp" - #include "oops/methodData.hpp" -diff --git a/hotspot/src/share/vm/compiler/oopMap.cpp b/hotspot/src/share/vm/compiler/oopMap.cpp -index c84f522d..18fa252f 100644 ---- a/hotspot/src/share/vm/compiler/oopMap.cpp -+++ b/hotspot/src/share/vm/compiler/oopMap.cpp -@@ -28,6 +28,7 @@ - #include "code/nmethod.hpp" - #include "code/scopeDesc.hpp" - #include "compiler/oopMap.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_interface/collectedHeap.hpp" - #include "memory/allocation.inline.hpp" - #include "memory/resourceArea.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp -index 3903da07..45bf89fd 100644 ---- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp -+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp -@@ -27,6 +27,7 @@ - #include "gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp" - #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.inline.hpp" - #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/shared/liveRange.hpp" - #include "gc_implementation/shared/spaceDecorator.hpp" - #include "gc_interface/collectedHeap.inline.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp -index 65c4db84..e3a6dafc 100644 ---- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp -+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp -@@ -35,6 +35,7 @@ - #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.inline.hpp" - #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp" - #include "gc_implementation/concurrentMarkSweep/vmCMSOperations.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/parNew/parNewGeneration.hpp" - #include "gc_implementation/shared/collectorCounters.hpp" - #include "gc_implementation/shared/gcTimer.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1CodeCacheRemSet.cpp b/hotspot/src/share/vm/gc_implementation/g1/g1CodeCacheRemSet.cpp -index aa0398db..da08e4c4 100644 ---- a/hotspot/src/share/vm/gc_implementation/g1/g1CodeCacheRemSet.cpp -+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CodeCacheRemSet.cpp -@@ -26,6 +26,7 @@ - #include "code/codeCache.hpp" - #include "code/nmethod.hpp" - #include "gc_implementation/g1/g1CodeCacheRemSet.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/g1/heapRegion.hpp" - #include "memory/heap.hpp" - #include "memory/iterator.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1RootProcessor.cpp b/hotspot/src/share/vm/gc_implementation/g1/g1RootProcessor.cpp -index 25ce52cc..68c19e3b 100644 ---- a/hotspot/src/share/vm/gc_implementation/g1/g1RootProcessor.cpp -+++ b/hotspot/src/share/vm/gc_implementation/g1/g1RootProcessor.cpp -@@ -31,6 +31,7 @@ - #include "gc_implementation/g1/g1CollectedHeap.inline.hpp" - #include "gc_implementation/g1/g1CollectorPolicy.hpp" - #include "gc_implementation/g1/g1GCPhaseTimes.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/g1/g1RemSet.inline.hpp" - #include "gc_implementation/g1/g1RootProcessor.hpp" - #include "memory/allocation.inline.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp b/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp -index 747f61ba..9e7fb622 100644 ---- a/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp -+++ b/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp -@@ -24,6 +24,7 @@ - - #include "precompiled.hpp" - #include "classfile/javaClasses.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/g1/g1StringDedupQueue.hpp" - #include "memory/gcLocker.hpp" - #include "runtime/mutexLocker.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp b/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp -index 94d35562..8e460000 100644 ---- a/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp -+++ b/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp -@@ -26,6 +26,7 @@ - #include "classfile/altHashing.hpp" - #include "classfile/javaClasses.hpp" - #include "gc_implementation/g1/g1CollectedHeap.inline.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/g1/g1SATBCardTableModRefBS.hpp" - #include "gc_implementation/g1/g1StringDedupTable.hpp" - #include "gc_implementation/shared/concurrentGCThread.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp b/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp -index 519f6288..324c11df 100644 ---- a/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp -+++ b/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp -@@ -24,6 +24,7 @@ - - #include "precompiled.hpp" - #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/parNew/parNewGeneration.hpp" - #include "gc_implementation/parNew/parOopClosures.inline.hpp" - #include "gc_implementation/shared/adaptiveSizePolicy.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/cardTableExtension.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/cardTableExtension.cpp -index 032b144c..1c5212cf 100644 ---- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/cardTableExtension.cpp -+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/cardTableExtension.cpp -@@ -23,6 +23,7 @@ - */ - - #include "precompiled.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/parallelScavenge/cardTableExtension.hpp" - #include "gc_implementation/parallelScavenge/gcTaskManager.hpp" - #include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp -index 3f103ee0..ddbd433c 100644 ---- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp -+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp -@@ -26,6 +26,7 @@ - #include "classfile/symbolTable.hpp" - #include "classfile/systemDictionary.hpp" - #include "code/codeCache.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/parallelScavenge/gcTaskManager.hpp" - #include "gc_implementation/parallelScavenge/parallelScavengeHeap.inline.hpp" - #include "gc_implementation/parallelScavenge/pcTasks.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp -index 43bfb6ac..e8d4ae9a 100644 ---- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp -+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp -@@ -25,6 +25,7 @@ - #include "precompiled.hpp" - #include "classfile/symbolTable.hpp" - #include "code/codeCache.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/parallelScavenge/cardTableExtension.hpp" - #include "gc_implementation/parallelScavenge/gcTaskManager.hpp" - #include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psTasks.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psTasks.cpp -index 4fe869fd..7aa28041 100644 ---- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psTasks.cpp -+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psTasks.cpp -@@ -25,6 +25,7 @@ - #include "precompiled.hpp" - #include "classfile/systemDictionary.hpp" - #include "code/codeCache.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/parallelScavenge/cardTableExtension.hpp" - #include "gc_implementation/parallelScavenge/gcTaskManager.hpp" - #include "gc_implementation/parallelScavenge/psMarkSweep.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/shared/markSweep.cpp b/hotspot/src/share/vm/gc_implementation/shared/markSweep.cpp -index e2629b65..1492c63d 100644 ---- a/hotspot/src/share/vm/gc_implementation/shared/markSweep.cpp -+++ b/hotspot/src/share/vm/gc_implementation/shared/markSweep.cpp -@@ -24,6 +24,7 @@ - - #include "precompiled.hpp" - #include "compiler/compileBroker.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/shared/gcTimer.hpp" - #include "gc_implementation/shared/gcTrace.hpp" - #include "gc_implementation/shared/markSweep.inline.hpp" -diff --git a/hotspot/src/share/vm/gc_implementation/shared/mutableSpace.cpp b/hotspot/src/share/vm/gc_implementation/shared/mutableSpace.cpp -index a1c71706..4e230b8b 100644 ---- a/hotspot/src/share/vm/gc_implementation/shared/mutableSpace.cpp -+++ b/hotspot/src/share/vm/gc_implementation/shared/mutableSpace.cpp -@@ -25,6 +25,7 @@ - #include "precompiled.hpp" - #include "utilities/macros.hpp" - #if INCLUDE_ALL_GCS -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/shared/mutableSpace.hpp" - #include "gc_implementation/shared/spaceDecorator.hpp" - #include "oops/oop.inline.hpp" -diff --git a/hotspot/src/share/vm/memory/cardTableRS.cpp b/hotspot/src/share/vm/memory/cardTableRS.cpp -index fb33a708..76622593 100644 ---- a/hotspot/src/share/vm/memory/cardTableRS.cpp -+++ b/hotspot/src/share/vm/memory/cardTableRS.cpp -@@ -23,6 +23,7 @@ - */ - - #include "precompiled.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "memory/allocation.inline.hpp" - #include "memory/cardTableRS.hpp" - #include "memory/genCollectedHeap.hpp" -diff --git a/hotspot/src/share/vm/memory/defNewGeneration.cpp b/hotspot/src/share/vm/memory/defNewGeneration.cpp -index 3d04aedb..d6c981e3 100644 ---- a/hotspot/src/share/vm/memory/defNewGeneration.cpp -+++ b/hotspot/src/share/vm/memory/defNewGeneration.cpp -@@ -23,6 +23,7 @@ - */ - - #include "precompiled.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/shared/collectorCounters.hpp" - #include "gc_implementation/shared/gcPolicyCounters.hpp" - #include "gc_implementation/shared/gcHeapSummary.hpp" -diff --git a/hotspot/src/share/vm/memory/referenceProcessor.cpp b/hotspot/src/share/vm/memory/referenceProcessor.cpp -index a38a72ef..b2b9bb4f 100644 ---- a/hotspot/src/share/vm/memory/referenceProcessor.cpp -+++ b/hotspot/src/share/vm/memory/referenceProcessor.cpp -@@ -25,6 +25,7 @@ - #include "precompiled.hpp" - #include "classfile/javaClasses.hpp" - #include "classfile/systemDictionary.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/shared/gcTimer.hpp" - #include "gc_implementation/shared/gcTraceTime.hpp" - #include "gc_interface/collectedHeap.hpp" -diff --git a/hotspot/src/share/vm/memory/universe.cpp b/hotspot/src/share/vm/memory/universe.cpp -index 63a862dc..ab9b21b2 100644 ---- a/hotspot/src/share/vm/memory/universe.cpp -+++ b/hotspot/src/share/vm/memory/universe.cpp -@@ -34,6 +34,7 @@ - #include "classfile/vmSymbols.hpp" - #include "code/codeCache.hpp" - #include "code/dependencies.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_interface/collectedHeap.inline.hpp" - #include "interpreter/interpreter.hpp" - #include "memory/cardTableModRefBS.hpp" -diff --git a/hotspot/src/share/vm/oops/arrayKlass.cpp b/hotspot/src/share/vm/oops/arrayKlass.cpp -index 2d2e44b0..0dab4f85 100644 ---- a/hotspot/src/share/vm/oops/arrayKlass.cpp -+++ b/hotspot/src/share/vm/oops/arrayKlass.cpp -@@ -26,6 +26,7 @@ - #include "classfile/javaClasses.hpp" - #include "classfile/systemDictionary.hpp" - #include "classfile/vmSymbols.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_interface/collectedHeap.inline.hpp" - #include "jvmtifiles/jvmti.h" - #include "memory/gcLocker.hpp" -diff --git a/hotspot/src/share/vm/oops/instanceClassLoaderKlass.cpp b/hotspot/src/share/vm/oops/instanceClassLoaderKlass.cpp -index 131ecbfb..eb26714d 100644 ---- a/hotspot/src/share/vm/oops/instanceClassLoaderKlass.cpp -+++ b/hotspot/src/share/vm/oops/instanceClassLoaderKlass.cpp -@@ -25,6 +25,7 @@ - #include "precompiled.hpp" - #include "classfile/javaClasses.hpp" - #include "classfile/systemDictionary.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/shared/markSweep.inline.hpp" - #include "gc_interface/collectedHeap.inline.hpp" - #include "memory/genOopClosures.inline.hpp" -diff --git a/hotspot/src/share/vm/oops/klass.cpp b/hotspot/src/share/vm/oops/klass.cpp -index 11fb01c8..4a009480 100644 ---- a/hotspot/src/share/vm/oops/klass.cpp -+++ b/hotspot/src/share/vm/oops/klass.cpp -@@ -27,6 +27,7 @@ - #include "classfile/dictionary.hpp" - #include "classfile/systemDictionary.hpp" - #include "classfile/vmSymbols.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/shared/markSweep.inline.hpp" - #include "gc_interface/collectedHeap.inline.hpp" - #include "memory/heapInspection.hpp" -diff --git a/hotspot/src/share/vm/oops/oop.cpp b/hotspot/src/share/vm/oops/oop.cpp -index c812cb91..01a90094 100644 ---- a/hotspot/src/share/vm/oops/oop.cpp -+++ b/hotspot/src/share/vm/oops/oop.cpp -@@ -25,6 +25,7 @@ - #include "precompiled.hpp" - #include "classfile/altHashing.hpp" - #include "classfile/javaClasses.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "oops/oop.inline.hpp" - #include "runtime/handles.inline.hpp" - #include "runtime/thread.inline.hpp" -diff --git a/hotspot/src/share/vm/precompiled/precompiled.hpp b/hotspot/src/share/vm/precompiled/precompiled.hpp -index 98602584..6b86dd96 100644 ---- a/hotspot/src/share/vm/precompiled/precompiled.hpp -+++ b/hotspot/src/share/vm/precompiled/precompiled.hpp -@@ -307,6 +307,7 @@ - # include "gc_implementation/g1/g1BlockOffsetTable.hpp" - # include "gc_implementation/g1/g1BlockOffsetTable.inline.hpp" - # include "gc_implementation/g1/g1OopClosures.hpp" -+# include "gc_implementation/g1/g1OopClosures.inline.hpp" - # include "gc_implementation/g1/g1_globals.hpp" - # include "gc_implementation/g1/g1_specialized_oop_closures.hpp" - # include "gc_implementation/g1/ptrQueue.hpp" -diff --git a/hotspot/src/share/vm/prims/jvmtiExport.cpp b/hotspot/src/share/vm/prims/jvmtiExport.cpp -index 9b612598..1974cd44 100644 ---- a/hotspot/src/share/vm/prims/jvmtiExport.cpp -+++ b/hotspot/src/share/vm/prims/jvmtiExport.cpp -@@ -27,6 +27,7 @@ - #include "code/nmethod.hpp" - #include "code/pcDesc.hpp" - #include "code/scopeDesc.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "interpreter/interpreter.hpp" - #include "jvmtifiles/jvmtiEnv.hpp" - #include "memory/resourceArea.hpp" -diff --git a/hotspot/src/share/vm/prims/jvmtiImpl.cpp b/hotspot/src/share/vm/prims/jvmtiImpl.cpp -index 3c66b167..c2ae0610 100644 ---- a/hotspot/src/share/vm/prims/jvmtiImpl.cpp -+++ b/hotspot/src/share/vm/prims/jvmtiImpl.cpp -@@ -24,6 +24,7 @@ - - #include "precompiled.hpp" - #include "classfile/systemDictionary.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "interpreter/interpreter.hpp" - #include "interpreter/oopMapCache.hpp" - #include "jvmtifiles/jvmtiEnv.hpp" -diff --git a/hotspot/src/share/vm/prims/jvmtiTagMap.cpp b/hotspot/src/share/vm/prims/jvmtiTagMap.cpp -index 3732638c..87e6d1c7 100644 ---- a/hotspot/src/share/vm/prims/jvmtiTagMap.cpp -+++ b/hotspot/src/share/vm/prims/jvmtiTagMap.cpp -@@ -26,6 +26,7 @@ - #include "classfile/symbolTable.hpp" - #include "classfile/systemDictionary.hpp" - #include "classfile/vmSymbols.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "jvmtifiles/jvmtiEnv.hpp" - #include "oops/instanceMirrorKlass.hpp" - #include "oops/objArrayKlass.hpp" -diff --git a/hotspot/src/share/vm/prims/jvmtiThreadState.cpp b/hotspot/src/share/vm/prims/jvmtiThreadState.cpp -index a4116e27..6da1364c 100644 ---- a/hotspot/src/share/vm/prims/jvmtiThreadState.cpp -+++ b/hotspot/src/share/vm/prims/jvmtiThreadState.cpp -@@ -23,6 +23,7 @@ - */ - - #include "precompiled.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "jvmtifiles/jvmtiEnv.hpp" - #include "memory/gcLocker.hpp" - #include "memory/resourceArea.hpp" -diff --git a/hotspot/src/share/vm/prims/privilegedStack.cpp b/hotspot/src/share/vm/prims/privilegedStack.cpp -index b214d4bd..1d99d642 100644 ---- a/hotspot/src/share/vm/prims/privilegedStack.cpp -+++ b/hotspot/src/share/vm/prims/privilegedStack.cpp -@@ -23,6 +23,7 @@ - */ - - #include "precompiled.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "memory/allocation.inline.hpp" - #include "oops/instanceKlass.hpp" - #include "oops/method.hpp" -diff --git a/hotspot/src/share/vm/runtime/fprofiler.cpp b/hotspot/src/share/vm/runtime/fprofiler.cpp -index a06246c7..cbbe268a 100644 ---- a/hotspot/src/share/vm/runtime/fprofiler.cpp -+++ b/hotspot/src/share/vm/runtime/fprofiler.cpp -@@ -25,6 +25,7 @@ - #include "precompiled.hpp" - #include "classfile/classLoader.hpp" - #include "code/vtableStubs.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_interface/collectedHeap.inline.hpp" - #include "interpreter/interpreter.hpp" - #include "memory/allocation.inline.hpp" -diff --git a/hotspot/src/share/vm/runtime/frame.cpp b/hotspot/src/share/vm/runtime/frame.cpp -index edf4eca6..a303d345 100644 ---- a/hotspot/src/share/vm/runtime/frame.cpp -+++ b/hotspot/src/share/vm/runtime/frame.cpp -@@ -25,6 +25,7 @@ - #include "precompiled.hpp" - #include "compiler/abstractCompiler.hpp" - #include "compiler/disassembler.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_interface/collectedHeap.inline.hpp" - #include "interpreter/interpreter.hpp" - #include "interpreter/oopMapCache.hpp" -diff --git a/hotspot/src/share/vm/runtime/handles.cpp b/hotspot/src/share/vm/runtime/handles.cpp -index db57d60b..e4d05ec6 100644 ---- a/hotspot/src/share/vm/runtime/handles.cpp -+++ b/hotspot/src/share/vm/runtime/handles.cpp -@@ -23,6 +23,7 @@ - */ - - #include "precompiled.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "memory/allocation.inline.hpp" - #include "oops/constantPool.hpp" - #include "oops/oop.inline.hpp" -diff --git a/hotspot/src/share/vm/runtime/javaCalls.cpp b/hotspot/src/share/vm/runtime/javaCalls.cpp -index 052d3efe..fcc24339 100644 ---- a/hotspot/src/share/vm/runtime/javaCalls.cpp -+++ b/hotspot/src/share/vm/runtime/javaCalls.cpp -@@ -27,6 +27,7 @@ - #include "classfile/vmSymbols.hpp" - #include "code/nmethod.hpp" - #include "compiler/compileBroker.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "interpreter/interpreter.hpp" - #include "interpreter/linkResolver.hpp" - #include "memory/universe.inline.hpp" -diff --git a/hotspot/src/share/vm/runtime/jniHandles.cpp b/hotspot/src/share/vm/runtime/jniHandles.cpp -index be8438f2..abab4061 100644 ---- a/hotspot/src/share/vm/runtime/jniHandles.cpp -+++ b/hotspot/src/share/vm/runtime/jniHandles.cpp -@@ -24,6 +24,7 @@ - - #include "precompiled.hpp" - #include "classfile/systemDictionary.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "memory/iterator.hpp" - #include "oops/oop.inline.hpp" - #include "prims/jvmtiExport.hpp" -diff --git a/hotspot/src/share/vm/runtime/monitorChunk.cpp b/hotspot/src/share/vm/runtime/monitorChunk.cpp -index a7e0237d..5c207554 100644 ---- a/hotspot/src/share/vm/runtime/monitorChunk.cpp -+++ b/hotspot/src/share/vm/runtime/monitorChunk.cpp -@@ -23,6 +23,7 @@ - */ - - #include "precompiled.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "memory/allocation.inline.hpp" - #include "oops/oop.inline.hpp" - #include "runtime/monitorChunk.hpp" -diff --git a/hotspot/src/share/vm/runtime/synchronizer.cpp b/hotspot/src/share/vm/runtime/synchronizer.cpp -index f6e84b29..9b357f1c 100644 ---- a/hotspot/src/share/vm/runtime/synchronizer.cpp -+++ b/hotspot/src/share/vm/runtime/synchronizer.cpp -@@ -24,6 +24,7 @@ - - #include "precompiled.hpp" - #include "classfile/vmSymbols.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "jfr/jfrEvents.hpp" - #include "memory/resourceArea.hpp" - #include "oops/markOop.hpp" -diff --git a/hotspot/src/share/vm/runtime/thread.cpp b/hotspot/src/share/vm/runtime/thread.cpp -index 2bdd0aa9..88e77d6d 100644 ---- a/hotspot/src/share/vm/runtime/thread.cpp -+++ b/hotspot/src/share/vm/runtime/thread.cpp -@@ -29,6 +29,7 @@ - #include "classfile/vmSymbols.hpp" - #include "code/scopeDesc.hpp" - #include "compiler/compileBroker.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "interpreter/interpreter.hpp" - #include "interpreter/linkResolver.hpp" - #include "interpreter/oopMapCache.hpp" -diff --git a/hotspot/src/share/vm/runtime/vframe_hp.cpp b/hotspot/src/share/vm/runtime/vframe_hp.cpp -index a98f4a35..9bc0ad80 100644 ---- a/hotspot/src/share/vm/runtime/vframe_hp.cpp -+++ b/hotspot/src/share/vm/runtime/vframe_hp.cpp -@@ -28,6 +28,7 @@ - #include "code/nmethod.hpp" - #include "code/pcDesc.hpp" - #include "code/scopeDesc.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "interpreter/interpreter.hpp" - #include "interpreter/oopMapCache.hpp" - #include "oops/instanceKlass.hpp" -diff --git a/hotspot/src/share/vm/runtime/vmThread.cpp b/hotspot/src/share/vm/runtime/vmThread.cpp -index b27c2874..8ad3158a 100644 ---- a/hotspot/src/share/vm/runtime/vmThread.cpp -+++ b/hotspot/src/share/vm/runtime/vmThread.cpp -@@ -24,6 +24,7 @@ - - #include "precompiled.hpp" - #include "compiler/compileBroker.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_interface/collectedHeap.hpp" - #include "jfr/jfrEvents.hpp" - #include "jfr/support/jfrThreadId.hpp" -diff --git a/hotspot/src/share/vm/runtime/vm_operations.cpp b/hotspot/src/share/vm/runtime/vm_operations.cpp -index 290c3357..1060383d 100644 ---- a/hotspot/src/share/vm/runtime/vm_operations.cpp -+++ b/hotspot/src/share/vm/runtime/vm_operations.cpp -@@ -27,6 +27,7 @@ - #include "classfile/vmSymbols.hpp" - #include "compiler/compileBroker.hpp" - #include "compiler/compilerOracle.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/shared/isGCActiveMark.hpp" - #include "memory/resourceArea.hpp" - #include "oops/symbol.hpp" -diff --git a/hotspot/src/share/vm/services/heapDumper.cpp b/hotspot/src/share/vm/services/heapDumper.cpp -index db419597..e707b16f 100644 ---- a/hotspot/src/share/vm/services/heapDumper.cpp -+++ b/hotspot/src/share/vm/services/heapDumper.cpp -@@ -26,6 +26,7 @@ - #include "classfile/symbolTable.hpp" - #include "classfile/systemDictionary.hpp" - #include "classfile/vmSymbols.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "gc_implementation/shared/vmGCOperations.hpp" - #include "memory/gcLocker.inline.hpp" - #include "memory/genCollectedHeap.hpp" -diff --git a/hotspot/src/share/vm/services/lowMemoryDetector.cpp b/hotspot/src/share/vm/services/lowMemoryDetector.cpp -index 10bf5bcd..8d57b0b8 100644 ---- a/hotspot/src/share/vm/services/lowMemoryDetector.cpp -+++ b/hotspot/src/share/vm/services/lowMemoryDetector.cpp -@@ -25,6 +25,7 @@ - #include "precompiled.hpp" - #include "classfile/systemDictionary.hpp" - #include "classfile/vmSymbols.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "oops/oop.inline.hpp" - #include "runtime/interfaceSupport.hpp" - #include "runtime/java.hpp" -diff --git a/hotspot/src/share/vm/services/memoryManager.cpp b/hotspot/src/share/vm/services/memoryManager.cpp -index 26d6ed00..cc391a2e 100644 ---- a/hotspot/src/share/vm/services/memoryManager.cpp -+++ b/hotspot/src/share/vm/services/memoryManager.cpp -@@ -25,6 +25,7 @@ - #include "precompiled.hpp" - #include "classfile/systemDictionary.hpp" - #include "classfile/vmSymbols.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "oops/oop.inline.hpp" - #include "runtime/handles.inline.hpp" - #include "runtime/javaCalls.hpp" -diff --git a/hotspot/src/share/vm/services/memoryPool.cpp b/hotspot/src/share/vm/services/memoryPool.cpp -index 1c9336f7..2b697ae8 100644 ---- a/hotspot/src/share/vm/services/memoryPool.cpp -+++ b/hotspot/src/share/vm/services/memoryPool.cpp -@@ -26,6 +26,7 @@ - #include "classfile/systemDictionary.hpp" - #include "classfile/vmSymbols.hpp" - #include "memory/metaspace.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "oops/oop.inline.hpp" - #include "runtime/handles.inline.hpp" - #include "runtime/javaCalls.hpp" -diff --git a/hotspot/src/share/vm/services/threadService.cpp b/hotspot/src/share/vm/services/threadService.cpp -index 605d2671..aa708da8 100644 ---- a/hotspot/src/share/vm/services/threadService.cpp -+++ b/hotspot/src/share/vm/services/threadService.cpp -@@ -24,6 +24,7 @@ - - #include "precompiled.hpp" - #include "classfile/systemDictionary.hpp" -+#include "gc_implementation/g1/g1OopClosures.inline.hpp" - #include "memory/allocation.hpp" - #include "memory/heapInspection.hpp" - #include "memory/oopFactory.hpp" --- -2.27.0 - diff --git a/repackReproduciblePolycies.sh b/repackReproduciblePolycies.sh deleted file mode 100644 index f356bd3984d511edc787bed4b743d325c98acd5a..0000000000000000000000000000000000000000 --- a/repackReproduciblePolycies.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/sh -set -e -# https://bugzilla.redhat.com/show_bug.cgi?id=1142153 -M=META-INF/MANIFEST.MF -#P=/usr/lib/jvm/java/jre/lib/security/policy -P=$1/lib/security/policy -ERRORS=0 - for type in unlimited limited ; do -for f in local_policy.jar US_export_policy.jar ; do -ORIG=$P/$type/$f -echo "processing $f ($ORIG)" -if [ ! -f $ORIG ]; then - echo "File not found! $ORIG" - let ERRORS=$ERRORS+1 - continue -fi -d=`mktemp -d` -NW=$d/$f - pushd $d - jar xf $ORIG - cat $M -# sed -i "s/Created-By.*/Created-By: 1.7.0/g" $M - sed -i "s/Created-By.*/Created-By: $2/g" $M - cat $M - find . -exec touch -t 201401010000 {} + - zip -rX $f * - popd - echo "replacing $ORIG" - touch -t 201401010000 $ORIG - md5sum $ORIG - sha256sum $ORIG - echo "by $NW" - md5sum $NW - sha256sum $NW - touch -t 201401010000 $NW - cp $NW $ORIG - md5sum $ORIG - sha256sum $ORIG - touch -t 201401010000 $ORIG - rm -rfv $d -done - done - -exit $ERRORS diff --git a/rh1163501-increase_2048_bit_dh_upper_bound_fedora_infrastructure_in_dhparametergenerator.patch b/rh1163501-increase_2048_bit_dh_upper_bound_fedora_infrastructure_in_dhparametergenerator.patch deleted file mode 100644 index 75c7a582c3eab658007c69c8d10cde7661071a5f..0000000000000000000000000000000000000000 --- a/rh1163501-increase_2048_bit_dh_upper_bound_fedora_infrastructure_in_dhparametergenerator.patch +++ /dev/null @@ -1,66 +0,0 @@ -diff --git a/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java b/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java ---- openjdk/jdk/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java -+++ openjdk/jdk/src/share/classes/com/sun/crypto/provider/DHParameterGenerator.java -@@ -1,5 +1,6 @@ - /* - * Copyright (c) 1997, 2022, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2014 Red Hat Inc. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it -@@ -61,13 +62,13 @@ public final class DHParameterGenerator - - private static void checkSupport(int keysize, int exponentSize) - throws InvalidParameterException { -- boolean supported = ((keysize == 2048) || (keysize == 3072) || -+ boolean supported = ((keysize == 2048) || (keysize == 3072) || (keysize == 4096) || - ((keysize >= 512) && (keysize <= 1024) && ((keysize & 0x3F) == 0))); - - if (!supported) { - throw new InvalidParameterException( - "Supported DH key size must be multiple of 64 and range " + -- "from 512 to 1024 (inclusive), or 2048, 3072. " + -+ "from 512 to 1024 (inclusive), or 2048, 3072, 4096. " + - "The specified key size " + keysize + " is not supported"); - } - -diff --git a/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java b/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java ---- openjdk/jdk/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java -+++ openjdk/jdk/test/com/sun/crypto/provider/KeyAgreement/TestExponentSize.java -@@ -1,5 +1,6 @@ - /* -- * Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2005, 2022, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 2014 Red Hat Inc. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it -@@ -58,7 +59,7 @@ public class TestExponentSize { - */ - private enum Sizes { - two56(256), three84(384), five12(512), seven68(768), ten24(1024), -- twenty48(2048); -+ twenty48(2048), forty96(4096); - - private final int intSize; - private final BigInteger bigIntValue; -@@ -130,6 +131,19 @@ public class TestExponentSize { - kpg.initialize(new DHParameterSpec(p, g, Sizes.five12.getIntSize())); - kp = kpg.generateKeyPair(); - checkKeyPair(kp, Sizes.twenty48, Sizes.five12); -+ -+ kpg.initialize(Sizes.forty96.getIntSize()); -+ kp = kpg.generateKeyPair(); -+ checkKeyPair(kp, Sizes.forty96, Sizes.twenty48); -+ -+ publicKey = (DHPublicKey)kp.getPublic(); -+ p = publicKey.getParams().getP(); -+ g = publicKey.getParams().getG(); -+ -+ // test w/ all values specified -+ kpg.initialize(new DHParameterSpec(p, g, Sizes.ten24.getIntSize())); -+ kp = kpg.generateKeyPair(); -+ checkKeyPair(kp, Sizes.forty96, Sizes.ten24); - - System.out.println("OK"); - } diff --git a/rh1582504-rsa_default_for_keytool.patch b/rh1582504-rsa_default_for_keytool.patch deleted file mode 100644 index f59dbf5cd78cd59313a64eab00ac25920725bcf3..0000000000000000000000000000000000000000 --- a/rh1582504-rsa_default_for_keytool.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git openjdk.orig/jdk/src/share/classes/sun/security/tools/keytool/Main.java openjdk/jdk/src/share/classes/sun/security/tools/keytool/Main.java ---- openjdk.orig/jdk/src/share/classes/sun/security/tools/keytool/Main.java -+++ openjdk/jdk/src/share/classes/sun/security/tools/keytool/Main.java -@@ -1004,7 +1004,7 @@ - } - } else if (command == GENKEYPAIR) { - if (keyAlgName == null) { -- keyAlgName = "DSA"; -+ keyAlgName = "RSA"; - } - doGenKeyPair(alias, dname, keyAlgName, keysize, sigAlgName); - kssave = true; diff --git a/rh1648246-always_instruct_vm_to_assume_multiple_processors_are_available.patch b/rh1648246-always_instruct_vm_to_assume_multiple_processors_are_available.patch deleted file mode 100644 index b0a874dfb247da5b1ac1ed61cc0b92f7a7222759..0000000000000000000000000000000000000000 --- a/rh1648246-always_instruct_vm_to_assume_multiple_processors_are_available.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/src/share/vm/runtime/globals.hpp b/src/share/vm/runtime/globals.hpp ---- openjdk/hotspot/src/share/vm/runtime/globals.hpp -+++ openjdk/hotspot/src/share/vm/runtime/globals.hpp -@@ -530,7 +530,7 @@ - lp64_product(intx, ObjectAlignmentInBytes, 8, \ - "Default object alignment in bytes, 8 is minimum") \ - \ -- product(bool, AssumeMP, false, \ -+ product(bool, AssumeMP, true, \ - "Instruct the VM to assume multiple processors are available") \ - \ - /* UseMembar is theoretically a temp flag used for memory barrier \ diff --git a/rh1648249-add_commented_out_nss_cfg_provider_to_java_security.patch b/rh1648249-add_commented_out_nss_cfg_provider_to_java_security.patch deleted file mode 100644 index febd87e7869a908152042a49e63df936c526acb9..0000000000000000000000000000000000000000 --- a/rh1648249-add_commented_out_nss_cfg_provider_to_java_security.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -r 5b86f66575b7 src/share/lib/security/java.security-linux ---- openjdk/jdk/src/share/lib/security/java.security-linux Tue May 16 13:29:05 2017 -0700 -+++ openjdk/jdk/src/share/lib/security/java.security-linux Tue Jun 06 14:05:12 2017 +0200 -@@ -74,6 +74,7 @@ - security.provider.7=com.sun.security.sasl.Provider - security.provider.8=org.jcp.xml.dsig.internal.dom.XMLDSigRI - security.provider.9=sun.security.smartcardio.SunPCSC -+#security.provider.10=sun.security.pkcs11.SunPKCS11 ${java.home}/lib/security/nss.cfg - - # - # Sun Provider SecureRandom seed source. diff --git a/rh1649664-awt2dlibraries_compiled_with_no_strict_overflow.patch b/rh1649664-awt2dlibraries_compiled_with_no_strict_overflow.patch deleted file mode 100644 index e3194923fe79fac57df6f111411c70035f14cdc3..0000000000000000000000000000000000000000 --- a/rh1649664-awt2dlibraries_compiled_with_no_strict_overflow.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git openjdk.orig/jdk/make/lib/Awt2dLibraries.gmk openjdk/jdk/make/lib/Awt2dLibraries.gmk ---- openjdk.orig/jdk/make/lib/Awt2dLibraries.gmk -+++ openjdk/jdk/make/lib/Awt2dLibraries.gmk -@@ -891,6 +891,12 @@ - BUILD_LIBFONTMANAGER_ExtensionSubtables.cpp_CXXFLAGS := -fno-strict-aliasing - endif - -+# Turn off strict overflow with GCC for IndicRearrangementProcessor.cpp -+ifeq ($(OPENJDK_TARGET_OS), linux) -+ BUILD_LIBFONTMANAGER_IndicRearrangementProcessor.cpp_CXXFLAGS := -fno-strict-overflow -+ BUILD_LIBFONTMANAGER_IndicRearrangementProcessor2.cpp_CXXFLAGS := -fno-strict-overflow -+endif -+ - # LDFLAGS clarification: - # Filter relevant linker flags disallowing unresolved symbols as we cannot - # build-time decide to which library to link against (libawt_headless or diff --git a/rh1655466-global_crypto_and_fips.patch b/rh1655466-global_crypto_and_fips.patch deleted file mode 100644 index 58d77b3b706f76965db8ce049d9c5342ff9a3465..0000000000000000000000000000000000000000 --- a/rh1655466-global_crypto_and_fips.patch +++ /dev/null @@ -1,208 +0,0 @@ -diff --git a/src/share/classes/javopenjdk.orig/jdk/security/Security.java openjdk/jdk/src/share/classes/java/security/Security.java ---- openjdk.orig/jdk/src/share/classes/java/security/Security.java -+++ openjdk/jdk/src/share/classes/java/security/Security.java -@@ -191,27 +191,7 @@ - if (disableSystemProps == null && - "true".equalsIgnoreCase(props.getProperty - ("security.useSystemPropertiesFile"))) { -- -- // now load the system file, if it exists, so its values -- // will win if they conflict with the earlier values -- try (BufferedInputStream bis = -- new BufferedInputStream(new FileInputStream(SYSTEM_PROPERTIES))) { -- props.load(bis); -- loadedProps = true; -- -- if (sdebug != null) { -- sdebug.println("reading system security properties file " + -- SYSTEM_PROPERTIES); -- sdebug.println(props.toString()); -- } -- } catch (IOException e) { -- if (sdebug != null) { -- sdebug.println -- ("unable to load security properties from " + -- SYSTEM_PROPERTIES); -- e.printStackTrace(); -- } -- } -+ loadedProps = loadedProps && SystemConfigurator.configure(props); - } - - if (!loadedProps) { -diff --git a/src/share/classes/javopenjdk.orig/jdk/security/SystemConfigurator.java openjdk/jdk/src/share/classes/java/security/SystemConfigurator.java -new file mode 100644 ---- /dev/null -+++ openjdk/jdk/src/share/classes/java/security/SystemConfigurator.java -@@ -0,0 +1,153 @@ -+/* -+ * Copyright (c) 2019, Red Hat, Inc. -+ * -+ * 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. -+ */ -+ -+package java.security; -+ -+import java.io.BufferedInputStream; -+import java.io.FileInputStream; -+import java.io.IOException; -+ -+import java.nio.file.Files; -+import java.nio.file.FileSystems; -+import java.nio.file.Path; -+ -+import java.util.Iterator; -+import java.util.Map.Entry; -+import java.util.Properties; -+import java.util.function.Consumer; -+import java.util.regex.Matcher; -+import java.util.regex.Pattern; -+ -+import sun.security.util.Debug; -+ -+/** -+ * Internal class to align OpenJDK with global crypto-policies. -+ * Called from java.security.Security class initialization, -+ * during startup. -+ * -+ */ -+ -+class SystemConfigurator { -+ -+ private static final Debug sdebug = -+ Debug.getInstance("properties"); -+ -+ private static final String CRYPTO_POLICIES_BASE_DIR = -+ "/etc/crypto-policies"; -+ -+ private static final String CRYPTO_POLICIES_JAVA_CONFIG = -+ CRYPTO_POLICIES_BASE_DIR + "/back-ends/java.config"; -+ -+ private static final String CRYPTO_POLICIES_CONFIG = -+ CRYPTO_POLICIES_BASE_DIR + "/config"; -+ -+ private static final class SecurityProviderInfo { -+ int number; -+ String key; -+ String value; -+ SecurityProviderInfo(int number, String key, String value) { -+ this.number = number; -+ this.key = key; -+ this.value = value; -+ } -+ } -+ -+ /* -+ * Invoked when java.security.Security class is initialized, if -+ * java.security.disableSystemPropertiesFile property is not set and -+ * security.useSystemPropertiesFile is true. -+ */ -+ static boolean configure(Properties props) { -+ boolean loadedProps = false; -+ -+ try (BufferedInputStream bis = -+ new BufferedInputStream( -+ new FileInputStream(CRYPTO_POLICIES_JAVA_CONFIG))) { -+ props.load(bis); -+ loadedProps = true; -+ if (sdebug != null) { -+ sdebug.println("reading system security properties file " + -+ CRYPTO_POLICIES_JAVA_CONFIG); -+ sdebug.println(props.toString()); -+ } -+ } catch (IOException e) { -+ if (sdebug != null) { -+ sdebug.println("unable to load security properties from " + -+ CRYPTO_POLICIES_JAVA_CONFIG); -+ e.printStackTrace(); -+ } -+ } -+ -+ try { -+ if (enableFips()) { -+ if (sdebug != null) { sdebug.println("FIPS mode detected"); } -+ loadedProps = false; -+ // Remove all security providers -+ Iterator> i = props.entrySet().iterator(); -+ while (i.hasNext()) { -+ Entry e = i.next(); -+ if (((String) e.getKey()).startsWith("security.provider")) { -+ if (sdebug != null) { sdebug.println("Removing provider: " + e); } -+ i.remove(); -+ } -+ } -+ // Add FIPS security providers -+ String fipsProviderValue = null; -+ for (int n = 1; -+ (fipsProviderValue = (String) props.get("fips.provider." + n)) != null; n++) { -+ String fipsProviderKey = "security.provider." + n; -+ if (sdebug != null) { -+ sdebug.println("Adding provider " + n + ": " + -+ fipsProviderKey + "=" + fipsProviderValue); -+ } -+ props.put(fipsProviderKey, fipsProviderValue); -+ } -+ loadedProps = true; -+ } -+ } catch (Exception e) { -+ if (sdebug != null) { -+ sdebug.println("unable to load FIPS configuration"); -+ e.printStackTrace(); -+ } -+ } -+ return loadedProps; -+ } -+ -+ /* -+ * FIPS is enabled only if crypto-policies are set to "FIPS" -+ * and the com.redhat.fips property is true. -+ */ -+ private static boolean enableFips() throws Exception { -+ boolean fipsEnabled = Boolean.valueOf(System.getProperty("com.redhat.fips", "true")); -+ if (fipsEnabled) { -+ Path configPath = FileSystems.getDefault().getPath(CRYPTO_POLICIES_CONFIG); -+ String cryptoPoliciesConfig = new String(Files.readAllBytes(configPath)); -+ if (sdebug != null) { sdebug.println("Crypto config:\n" + cryptoPoliciesConfig); } -+ Pattern pattern = Pattern.compile("^FIPS$", Pattern.MULTILINE); -+ return pattern.matcher(cryptoPoliciesConfig).find(); -+ } else { -+ return false; -+ } -+ } -+} -diff --git openjdk.orig/jdk/src/share/lib/security/java.security-linux openjdk/jdk/src/share/lib/security/java.security-linux ---- openjdk.orig/jdk/src/share/lib/security/java.security-linux -+++ openjdk/jdk/src/share/lib/security/java.security-linux -@@ -77,6 +77,14 @@ - #security.provider.10=sun.security.pkcs11.SunPKCS11 ${java.home}/lib/security/nss.cfg - - # -+# Security providers used when global crypto-policies are set to FIPS. -+# -+fips.provider.1=sun.security.pkcs11.SunPKCS11 ${java.home}/lib/security/nss.fips.cfg -+fips.provider.2=sun.security.provider.Sun -+fips.provider.3=sun.security.ec.SunEC -+fips.provider.4=com.sun.net.ssl.internal.ssl.Provider SunPKCS11-NSS-FIPS -+ -+# - # Sun Provider SecureRandom seed source. - # - # Select the primary source of seed data for the "SHA1PRNG" and diff --git a/rh1750419-redhat_alt_java.patch b/rh1750419-redhat_alt_java.patch deleted file mode 100644 index 4789f0b9d2305e7c86ffe1d2e660cb5a7ba446a6..0000000000000000000000000000000000000000 --- a/rh1750419-redhat_alt_java.patch +++ /dev/null @@ -1,133 +0,0 @@ -diff --git openjdk.orig/jdk/make/CompileLaunchers.gmk openjdk/jdk/make/CompileLaunchers.gmk ---- openjdk.orig/jdk/make/CompileLaunchers.gmk -+++ openjdk/jdk/make/CompileLaunchers.gmk -@@ -255,6 +255,33 @@ - endif - endif - -+# -Wno-error=cpp is present to allow commented warning in ifdef part of main.c -+$(eval $(call SetupLauncher,alt-java, \ -+ -DEXPAND_CLASSPATH_WILDCARDS -DREDHAT_ALT_JAVA -Wno-error=cpp,,,user32.lib comctl32.lib, \ -+ $(JDK_OUTPUTDIR)/objs/jli_static.lib, $(JAVA_RC_FLAGS), \ -+ $(JDK_TOPDIR)/src/windows/resource/java.rc, $(JDK_OUTPUTDIR)/objs/java_objs,true)) -+ -+$(JDK_OUTPUTDIR)/bin$(OUTPUT_SUBDIR)/alt-java$(EXE_SUFFIX): $(BUILD_LAUNCHER_alt-java) -+ $(MKDIR) -p $(@D) -+ $(RM) $@ -+ $(CP) $(JDK_OUTPUTDIR)/objs/java_objs$(OUTPUT_SUBDIR)/alt-java$(EXE_SUFFIX) $@ -+ -+$(JDK_OUTPUTDIR)/bin$(OUTPUT_SUBDIR)/alt-java$(DEBUGINFO_EXT): $(BUILD_LAUNCHER_alt-java) -+ $(MKDIR) -p $(@D) -+ $(RM) $@ -+ $(CP) $(JDK_OUTPUTDIR)/objs/java_objs$(OUTPUT_SUBDIR)/alt-java$(DEBUGINFO_EXT) $@ -+ -+ifeq ($(OPENJDK_TARGET_OS), linux) -+ BUILD_LAUNCHERS += $(JDK_OUTPUTDIR)/bin$(OUTPUT_SUBDIR)/alt-java$(EXE_SUFFIX) -+ ifeq ($(ENABLE_DEBUG_SYMBOLS), true) -+ ifneq ($(POST_STRIP_CMD), ) -+ ifneq ($(STRIP_POLICY), no_strip) -+ BUILD_LAUNCHERS += $(JDK_OUTPUTDIR)/bin$(OUTPUT_SUBDIR)/alt-java$(DEBUGINFO_EXT) -+ endif -+ endif -+ endif -+endif -+ - ifeq ($(OPENJDK_TARGET_OS), windows) - $(eval $(call SetupLauncher,javaw, \ - -DJAVAW -DEXPAND_CLASSPATH_WILDCARDS,,,user32.lib comctl32.lib, \ -diff --git openjdk.orig/jdk/src/share/bin/alt_main.h openjdk/jdk/src/share/bin/alt_main.h -new file mode 100644 ---- /dev/null -+++ openjdk/jdk/src/share/bin/alt_main.h -@@ -0,0 +1,73 @@ -+/* -+ * Copyright (c) 2019, Red Hat, Inc. 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. Oracle designates this -+ * particular file as subject to the "Classpath" exception as provided -+ * by Oracle in the LICENSE file that accompanied this code. -+ * -+ * 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. -+ */ -+ -+#ifdef REDHAT_ALT_JAVA -+ -+#include -+ -+ -+/* Per task speculation control */ -+#ifndef PR_GET_SPECULATION_CTRL -+# define PR_GET_SPECULATION_CTRL 52 -+#endif -+#ifndef PR_SET_SPECULATION_CTRL -+# define PR_SET_SPECULATION_CTRL 53 -+#endif -+/* Speculation control variants */ -+#ifndef PR_SPEC_STORE_BYPASS -+# define PR_SPEC_STORE_BYPASS 0 -+#endif -+/* Return and control values for PR_SET/GET_SPECULATION_CTRL */ -+ -+#ifndef PR_SPEC_NOT_AFFECTED -+# define PR_SPEC_NOT_AFFECTED 0 -+#endif -+#ifndef PR_SPEC_PRCTL -+# define PR_SPEC_PRCTL (1UL << 0) -+#endif -+#ifndef PR_SPEC_ENABLE -+# define PR_SPEC_ENABLE (1UL << 1) -+#endif -+#ifndef PR_SPEC_DISABLE -+# define PR_SPEC_DISABLE (1UL << 2) -+#endif -+#ifndef PR_SPEC_FORCE_DISABLE -+# define PR_SPEC_FORCE_DISABLE (1UL << 3) -+#endif -+#ifndef PR_SPEC_DISABLE_NOEXEC -+# define PR_SPEC_DISABLE_NOEXEC (1UL << 4) -+#endif -+ -+static void set_speculation() __attribute__((constructor)); -+static void set_speculation() { -+ if ( prctl(PR_SET_SPECULATION_CTRL, -+ PR_SPEC_STORE_BYPASS, -+ PR_SPEC_DISABLE_NOEXEC, 0, 0) == 0 ) { -+ return; -+ } -+ prctl(PR_SET_SPECULATION_CTRL, PR_SPEC_STORE_BYPASS, PR_SPEC_DISABLE, 0, 0); -+} -+ -+#endif // REDHAT_ALT_JAVA -diff --git openjdk.orig/jdk/src/share/bin/main.c openjdk/jdk/src/share/bin/main.c ---- openjdk.orig/jdk/src/share/bin/main.c -+++ openjdk/jdk/src/share/bin/main.c -@@ -32,6 +32,14 @@ - - #include "defines.h" - -+#ifdef REDHAT_ALT_JAVA -+#if defined(__linux__) && defined(__x86_64__) -+#include "alt_main.h" -+#else -+#warning alt-java requested but SSB mitigation not available on this platform. -+#endif -+#endif -+ - #ifdef _MSC_VER - #if _MSC_VER > 1400 && _MSC_VER < 1600 - diff --git a/rh1760838-fips_default_keystore_type.patch b/rh1760838-fips_default_keystore_type.patch deleted file mode 100644 index bedc8eab8f3f2bacaa64385e12c0b6b458fa8c2c..0000000000000000000000000000000000000000 --- a/rh1760838-fips_default_keystore_type.patch +++ /dev/null @@ -1,52 +0,0 @@ -diff -r 6efbd7b35a10 src/share/classes/java/security/SystemConfigurator.java ---- openjdk.orig/jdk/src/share/classes/java/security/SystemConfigurator.java Thu Jan 23 18:22:31 2020 -0300 -+++ openjdk/jdk/src/share/classes/java/security/SystemConfigurator.java Mon Mar 02 19:20:17 2020 -0300 -@@ -123,6 +123,33 @@ - } - props.put(fipsProviderKey, fipsProviderValue); - } -+ // Add other security properties -+ String keystoreTypeValue = (String) props.get("fips.keystore.type"); -+ if (keystoreTypeValue != null) { -+ String nonFipsKeystoreType = props.getProperty("keystore.type"); -+ props.put("keystore.type", keystoreTypeValue); -+ if (keystoreTypeValue.equals("PKCS11")) { -+ // If keystore.type is PKCS11, javax.net.ssl.keyStore -+ // must be "NONE". See JDK-8238264. -+ System.setProperty("javax.net.ssl.keyStore", "NONE"); -+ } -+ if (System.getProperty("javax.net.ssl.trustStoreType") == null) { -+ // If no trustStoreType has been set, use the -+ // previous keystore.type under FIPS mode. In -+ // a default configuration, the Trust Store will -+ // be 'cacerts' (JKS type). -+ System.setProperty("javax.net.ssl.trustStoreType", -+ nonFipsKeystoreType); -+ } -+ if (sdebug != null) { -+ sdebug.println("FIPS mode default keystore.type = " + -+ keystoreTypeValue); -+ sdebug.println("FIPS mode javax.net.ssl.keyStore = " + -+ System.getProperty("javax.net.ssl.keyStore", "")); -+ sdebug.println("FIPS mode javax.net.ssl.trustStoreType = " + -+ System.getProperty("javax.net.ssl.trustStoreType", "")); -+ } -+ } - loadedProps = true; - } - } catch (Exception e) { -diff -r 6efbd7b35a10 src/share/lib/security/java.security-linux ---- openjdk.orig/jdk/src/share/lib/security/java.security-linux Thu Jan 23 18:22:31 2020 -0300 -+++ openjdk/jdk/src/share/lib/security/java.security-linux Mon Mar 02 19:20:17 2020 -0300 -@@ -179,6 +179,11 @@ - keystore.type=jks - - # -+# Default keystore type used when global crypto-policies are set to FIPS. -+# -+fips.keystore.type=PKCS11 -+ -+# - # Controls compatibility mode for the JKS keystore type. - # - # When set to 'true', the JKS keystore type supports loading diff --git a/rh1860986-disable_tlsv1.3_in_fips_mode.patch b/rh1860986-disable_tlsv1.3_in_fips_mode.patch deleted file mode 100644 index 5cba57fbc797ff3f4d4fe58d1643a992aa9b343d..0000000000000000000000000000000000000000 --- a/rh1860986-disable_tlsv1.3_in_fips_mode.patch +++ /dev/null @@ -1,303 +0,0 @@ -diff -r bbc65dfa59d1 src/share/classes/java/security/SystemConfigurator.java ---- openjdk/jdk/src/share/classes/java/security/SystemConfigurator.java Thu Jan 23 18:22:31 2020 -0300 -+++ openjdk/jdk/src/share/classes/java/security/SystemConfigurator.java Sat Aug 01 23:16:51 2020 -0300 -@@ -1,11 +1,13 @@ - /* -- * Copyright (c) 2019, Red Hat, Inc. -+ * Copyright (c) 2019, 2020, Red Hat, Inc. - * - * 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. -+ * published by the Free Software Foundation. Oracle designates this -+ * particular file as subject to the "Classpath" exception as provided -+ * by Oracle in the LICENSE file that accompanied this code. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -@@ -34,10 +36,10 @@ - import java.util.Iterator; - import java.util.Map.Entry; - import java.util.Properties; --import java.util.function.Consumer; --import java.util.regex.Matcher; - import java.util.regex.Pattern; - -+import sun.misc.SharedSecrets; -+import sun.misc.JavaSecuritySystemConfiguratorAccess; - import sun.security.util.Debug; - - /** -@@ -47,7 +49,7 @@ - * - */ - --class SystemConfigurator { -+final class SystemConfigurator { - - private static final Debug sdebug = - Debug.getInstance("properties"); -@@ -61,15 +63,16 @@ - private static final String CRYPTO_POLICIES_CONFIG = - CRYPTO_POLICIES_BASE_DIR + "/config"; - -- private static final class SecurityProviderInfo { -- int number; -- String key; -- String value; -- SecurityProviderInfo(int number, String key, String value) { -- this.number = number; -- this.key = key; -- this.value = value; -- } -+ private static boolean systemFipsEnabled = false; -+ -+ static { -+ SharedSecrets.setJavaSecuritySystemConfiguratorAccess( -+ new JavaSecuritySystemConfiguratorAccess() { -+ @Override -+ public boolean isSystemFipsEnabled() { -+ return SystemConfigurator.isSystemFipsEnabled(); -+ } -+ }); - } - - /* -@@ -128,9 +131,9 @@ - String nonFipsKeystoreType = props.getProperty("keystore.type"); - props.put("keystore.type", keystoreTypeValue); - if (keystoreTypeValue.equals("PKCS11")) { -- // If keystore.type is PKCS11, javax.net.ssl.keyStore -- // must be "NONE". See JDK-8238264. -- System.setProperty("javax.net.ssl.keyStore", "NONE"); -+ // If keystore.type is PKCS11, javax.net.ssl.keyStore -+ // must be "NONE". See JDK-8238264. -+ System.setProperty("javax.net.ssl.keyStore", "NONE"); - } - if (System.getProperty("javax.net.ssl.trustStoreType") == null) { - // If no trustStoreType has been set, use the -@@ -144,12 +147,13 @@ - sdebug.println("FIPS mode default keystore.type = " + - keystoreTypeValue); - sdebug.println("FIPS mode javax.net.ssl.keyStore = " + -- System.getProperty("javax.net.ssl.keyStore", "")); -+ System.getProperty("javax.net.ssl.keyStore", "")); - sdebug.println("FIPS mode javax.net.ssl.trustStoreType = " + - System.getProperty("javax.net.ssl.trustStoreType", "")); - } - } - loadedProps = true; -+ systemFipsEnabled = true; - } - } catch (Exception e) { - if (sdebug != null) { -@@ -165,20 +165,37 @@ - return loadedProps; - } - -+ /** -+ * Returns whether or not global system FIPS alignment is enabled. -+ * -+ * Value is always 'false' before java.security.Security class is -+ * initialized. -+ * -+ * Call from out of this package through SharedSecrets: -+ * SharedSecrets.getJavaSecuritySystemConfiguratorAccess() -+ * .isSystemFipsEnabled(); -+ * -+ * @return a boolean value indicating whether or not global -+ * system FIPS alignment is enabled. -+ */ -+ static boolean isSystemFipsEnabled() { -+ return systemFipsEnabled; -+ } -+ - /* - * FIPS is enabled only if crypto-policies are set to "FIPS" - * and the com.redhat.fips property is true. - */ - private static boolean enableFips() throws Exception { -- boolean fipsEnabled = Boolean.valueOf(System.getProperty("com.redhat.fips", "true")); -- if (fipsEnabled) { -- Path configPath = FileSystems.getDefault().getPath(CRYPTO_POLICIES_CONFIG); -- String cryptoPoliciesConfig = new String(Files.readAllBytes(configPath)); -- if (sdebug != null) { sdebug.println("Crypto config:\n" + cryptoPoliciesConfig); } -- Pattern pattern = Pattern.compile("^FIPS$", Pattern.MULTILINE); -- return pattern.matcher(cryptoPoliciesConfig).find(); -- } else { -- return false; -- } -+ boolean shouldEnable = Boolean.valueOf(System.getProperty("com.redhat.fips", "true")); -+ if (shouldEnable) { -+ Path configPath = FileSystems.getDefault().getPath(CRYPTO_POLICIES_CONFIG); -+ String cryptoPoliciesConfig = new String(Files.readAllBytes(configPath)); -+ if (sdebug != null) { sdebug.println("Crypto config:\n" + cryptoPoliciesConfig); } -+ Pattern pattern = Pattern.compile("^FIPS$", Pattern.MULTILINE); -+ return pattern.matcher(cryptoPoliciesConfig).find(); -+ } else { -+ return false; -+ } - } - } -diff --git openjdk.orig/jdk/src/share/classes/sun/misc/JavaSecuritySystemConfiguratorAccess.java openjdk/jdk/src/share/classes/sun/misc/JavaSecuritySystemConfiguratorAccess.java -new file mode 100644 ---- /dev/null -+++ openjdk/jdk/src/share/classes/sun/misc/JavaSecuritySystemConfiguratorAccess.java -@@ -0,0 +1,30 @@ -+/* -+ * Copyright (c) 2020, Red Hat, Inc. -+ * 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. Oracle designates this -+ * particular file as subject to the "Classpath" exception as provided -+ * by Oracle in the LICENSE file that accompanied this code. -+ * -+ * 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. -+ */ -+ -+package sun.misc; -+ -+public interface JavaSecuritySystemConfiguratorAccess { -+ boolean isSystemFipsEnabled(); -+} -diff --git openjdk.orig/jdk/src/share/classes/sun/security/ssl/SSLContextImpl.java openjdk/jdk/src/share/classes/sun/security/ssl/SSLContextImpl.java ---- openjdk.orig/jdk/src/share/classes/sun/security/ssl/SSLContextImpl.java -+++ openjdk/jdk/src/share/classes/sun/security/ssl/SSLContextImpl.java -@@ -31,6 +31,7 @@ import java.security.*; - import java.security.cert.*; - import java.util.*; - import javax.net.ssl.*; -+import sun.misc.SharedSecrets; - import sun.security.action.GetPropertyAction; - import sun.security.provider.certpath.AlgorithmChecker; - import sun.security.validator.Validator; -@@ -539,20 +540,38 @@ public abstract class SSLContextImpl ext - - static { - if (SunJSSE.isFIPS()) { -- supportedProtocols = Arrays.asList( -- ProtocolVersion.TLS13, -- ProtocolVersion.TLS12, -- ProtocolVersion.TLS11, -- ProtocolVersion.TLS10 -- ); -+ if (SharedSecrets.getJavaSecuritySystemConfiguratorAccess() -+ .isSystemFipsEnabled()) { -+ // RH1860986: TLSv1.3 key derivation not supported with -+ // the Security Providers available in system FIPS mode. -+ supportedProtocols = Arrays.asList( -+ ProtocolVersion.TLS12, -+ ProtocolVersion.TLS11, -+ ProtocolVersion.TLS10 -+ ); - -- serverDefaultProtocols = getAvailableProtocols( -- new ProtocolVersion[] { -- ProtocolVersion.TLS13, -- ProtocolVersion.TLS12, -- ProtocolVersion.TLS11, -- ProtocolVersion.TLS10 -- }); -+ serverDefaultProtocols = getAvailableProtocols( -+ new ProtocolVersion[] { -+ ProtocolVersion.TLS12, -+ ProtocolVersion.TLS11, -+ ProtocolVersion.TLS10 -+ }); -+ } else { -+ supportedProtocols = Arrays.asList( -+ ProtocolVersion.TLS13, -+ ProtocolVersion.TLS12, -+ ProtocolVersion.TLS11, -+ ProtocolVersion.TLS10 -+ ); -+ -+ serverDefaultProtocols = getAvailableProtocols( -+ new ProtocolVersion[] { -+ ProtocolVersion.TLS13, -+ ProtocolVersion.TLS12, -+ ProtocolVersion.TLS11, -+ ProtocolVersion.TLS10 -+ }); -+ } - } else { - supportedProtocols = Arrays.asList( - ProtocolVersion.TLS13, -@@ -612,6 +631,16 @@ public abstract class SSLContextImpl ext - - static ProtocolVersion[] getSupportedProtocols() { - if (SunJSSE.isFIPS()) { -+ if (SharedSecrets.getJavaSecuritySystemConfiguratorAccess() -+ .isSystemFipsEnabled()) { -+ // RH1860986: TLSv1.3 key derivation not supported with -+ // the Security Providers available in system FIPS mode. -+ return new ProtocolVersion[] { -+ ProtocolVersion.TLS12, -+ ProtocolVersion.TLS11, -+ ProtocolVersion.TLS10 -+ }; -+ } - return new ProtocolVersion[] { - ProtocolVersion.TLS13, - ProtocolVersion.TLS12, -@@ -939,6 +968,16 @@ public abstract class SSLContextImpl ext - - static ProtocolVersion[] getProtocols() { - if (SunJSSE.isFIPS()) { -+ if (SharedSecrets.getJavaSecuritySystemConfiguratorAccess() -+ .isSystemFipsEnabled()) { -+ // RH1860986: TLSv1.3 key derivation not supported with -+ // the Security Providers available in system FIPS mode. -+ return new ProtocolVersion[] { -+ ProtocolVersion.TLS12, -+ ProtocolVersion.TLS11, -+ ProtocolVersion.TLS10 -+ }; -+ } - return new ProtocolVersion[]{ - ProtocolVersion.TLS13, - ProtocolVersion.TLS12, -diff --git openjdk.orig/jdk/src/share/classes/sun/security/ssl/SunJSSE.java openjdk/jdk/src/share/classes/sun/security/ssl/SunJSSE.java ---- openjdk.orig/jdk/src/share/classes/sun/security/ssl/SunJSSE.java -+++ openjdk/jdk/src/share/classes/sun/security/ssl/SunJSSE.java -@@ -30,6 +30,8 @@ import static sun.security.util.Security - - import java.security.*; - -+import sun.misc.SharedSecrets; -+ - /** - * The JSSE provider. - * -@@ -215,8 +217,13 @@ public abstract class SunJSSE extends ja - "sun.security.ssl.SSLContextImpl$TLS11Context"); - put("SSLContext.TLSv1.2", - "sun.security.ssl.SSLContextImpl$TLS12Context"); -- put("SSLContext.TLSv1.3", -- "sun.security.ssl.SSLContextImpl$TLS13Context"); -+ if (!SharedSecrets.getJavaSecuritySystemConfiguratorAccess() -+ .isSystemFipsEnabled()) { -+ // RH1860986: TLSv1.3 key derivation not supported with -+ // the Security Providers available in system FIPS mode. -+ put("SSLContext.TLSv1.3", -+ "sun.security.ssl.SSLContextImpl$TLS13Context"); -+ } - put("SSLContext.TLS", - "sun.security.ssl.SSLContextImpl$TLSContext"); - if (isfips == false) { diff --git a/rh1906862-always_initialise_configurator_access.patch b/rh1906862-always_initialise_configurator_access.patch deleted file mode 100644 index 82116aded6c5e73e4f7e4f6e3b5da06e4b368a66..0000000000000000000000000000000000000000 --- a/rh1906862-always_initialise_configurator_access.patch +++ /dev/null @@ -1,65 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1608219816 0 -# Thu Dec 17 15:43:36 2020 +0000 -# Node ID db5d1b28bfce04352b3a48960bf836f6eb20804b -# Parent a2cfa397150e99b813354226d536eb8509b5850b -RH1906862: Always initialise JavaSecuritySystemConfiguratorAccess - -diff --git openjdk.orig/jdk/src/share/classes/java/security/Security.java openjdk/jdk/src/share/classes/java/security/Security.java ---- openjdk.orig/jdk/src/share/classes/java/security/Security.java -+++ openjdk/jdk/src/share/classes/java/security/Security.java -@@ -30,6 +30,8 @@ - import java.util.concurrent.ConcurrentHashMap; - import java.io.*; - import java.net.URL; -+import sun.misc.SharedSecrets; -+import sun.misc.JavaSecuritySystemConfiguratorAccess; - import sun.security.util.Debug; - import sun.security.util.PropertyExpander; - -@@ -69,6 +71,15 @@ - } - - static { -+ // Initialise here as used by code with system properties disabled -+ SharedSecrets.setJavaSecuritySystemConfiguratorAccess( -+ new JavaSecuritySystemConfiguratorAccess() { -+ @Override -+ public boolean isSystemFipsEnabled() { -+ return SystemConfigurator.isSystemFipsEnabled(); -+ } -+ }); -+ - // doPrivileged here because there are multiple - // things in initialize that might require privs. - // (the FileInputStream call and the File.exists call, -diff --git openjdk.orig/jdk/src/share/classes/java/security/SystemConfigurator.java openjdk/jdk/src/share/classes/java/security/SystemConfigurator.java ---- openjdk.orig/jdk/src/share/classes/java/security/SystemConfigurator.java -+++ openjdk/jdk/src/share/classes/java/security/SystemConfigurator.java -@@ -39,8 +39,6 @@ - import java.util.Properties; - import java.util.regex.Pattern; - --import sun.misc.SharedSecrets; --import sun.misc.JavaSecuritySystemConfiguratorAccess; - import sun.security.util.Debug; - - /** -@@ -66,16 +64,6 @@ - - private static boolean systemFipsEnabled = false; - -- static { -- SharedSecrets.setJavaSecuritySystemConfiguratorAccess( -- new JavaSecuritySystemConfiguratorAccess() { -- @Override -- public boolean isSystemFipsEnabled() { -- return SystemConfigurator.isSystemFipsEnabled(); -- } -- }); -- } -- - /* - * Invoked when java.security.Security class is initialized, if - * java.security.disableSystemPropertiesFile property is not set and diff --git a/rh1929465-improve_system_FIPS_detection-jdk.patch b/rh1929465-improve_system_FIPS_detection-jdk.patch deleted file mode 100644 index 1461be85b4c6c6fc1e8eab6e04d478474ebd38ab..0000000000000000000000000000000000000000 --- a/rh1929465-improve_system_FIPS_detection-jdk.patch +++ /dev/null @@ -1,344 +0,0 @@ -diff --git openjdk.orig/jdk/make/lib/SecurityLibraries.gmk openjdk/jdk/make/lib/SecurityLibraries.gmk ---- openjdk.orig/jdk/make/lib/SecurityLibraries.gmk -+++ openjdk/jdk/make/lib/SecurityLibraries.gmk -@@ -289,3 +289,34 @@ - - endif - endif -+ -+################################################################################ -+# Create the systemconf library -+ -+LIBSYSTEMCONF_CFLAGS := -+LIBSYSTEMCONF_CXXFLAGS := -+ -+ifeq ($(USE_SYSCONF_NSS), true) -+ LIBSYSTEMCONF_CFLAGS += $(NSS_CFLAGS) -DSYSCONF_NSS -+ LIBSYSTEMCONF_CXXFLAGS += $(NSS_CFLAGS) -DSYSCONF_NSS -+endif -+ -+ifeq ($(OPENJDK_BUILD_OS), linux) -+ $(eval $(call SetupNativeCompilation,BUILD_LIBSYSTEMCONF, \ -+ LIBRARY := systemconf, \ -+ OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ -+ SRC := $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/security, \ -+ LANG := C, \ -+ OPTIMIZATION := LOW, \ -+ CFLAGS := $(CFLAGS_JDKLIB) $(LIBSYSTEMCONF_CFLAGS), \ -+ CXXFLAGS := $(CXXFLAGS_JDKLIB) $(LIBSYSTEMCONF_CXXFLAGS), \ -+ MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libsystemconf/mapfile-vers, \ -+ LDFLAGS := $(LDFLAGS_JDKLIB) \ -+ $(call SET_SHARED_LIBRARY_ORIGIN), \ -+ LDFLAGS_SUFFIX := $(LIBDL) $(NSS_LIBS), \ -+ OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libsystemconf, \ -+ DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) -+ -+ BUILD_LIBRARIES += $(BUILD_LIBSYSTEMCONF) -+endif -+ -diff --git openjdk.orig/jdk/make/mapfiles/libsystemconf/mapfile-vers openjdk/jdk/make/mapfiles/libsystemconf/mapfile-vers -new file mode 100644 ---- /dev/null -+++ openjdk/jdk/make/mapfiles/libsystemconf/mapfile-vers -@@ -0,0 +1,35 @@ -+# -+# Copyright (c) 2021, Red Hat, Inc. -+# 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. Oracle designates this -+# particular file as subject to the "Classpath" exception as provided -+# by Oracle in the LICENSE file that accompanied this code. -+# -+# 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. -+# -+ -+# Define public interface. -+ -+SUNWprivate_1.1 { -+ global: -+ DEF_JNI_OnLoad; -+ DEF_JNI_OnUnLoad; -+ Java_java_security_SystemConfigurator_getSystemFIPSEnabled; -+ local: -+ *; -+}; -diff --git openjdk.orig/jdk/src/share/classes/java/security/SystemConfigurator.java openjdk/jdk/src/share/classes/java/security/SystemConfigurator.java ---- openjdk.orig/jdk/src/share/classes/java/security/SystemConfigurator.java -+++ openjdk/jdk/src/share/classes/java/security/SystemConfigurator.java -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 2019, 2020, Red Hat, Inc. -+ * Copyright (c) 2019, 2021, Red Hat, Inc. - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * -@@ -30,14 +30,9 @@ - import java.io.FileInputStream; - import java.io.IOException; - --import java.nio.file.Files; --import java.nio.file.FileSystems; --import java.nio.file.Path; -- - import java.util.Iterator; - import java.util.Map.Entry; - import java.util.Properties; --import java.util.regex.Pattern; - - import sun.security.util.Debug; - -@@ -59,10 +54,21 @@ - private static final String CRYPTO_POLICIES_JAVA_CONFIG = - CRYPTO_POLICIES_BASE_DIR + "/back-ends/java.config"; - -- private static final String CRYPTO_POLICIES_CONFIG = -- CRYPTO_POLICIES_BASE_DIR + "/config"; -+ private static boolean systemFipsEnabled = false; -+ -+ private static final String SYSTEMCONF_NATIVE_LIB = "systemconf"; -+ -+ private static native boolean getSystemFIPSEnabled() -+ throws IOException; - -- private static boolean systemFipsEnabled = false; -+ static { -+ AccessController.doPrivileged(new PrivilegedAction() { -+ public Void run() { -+ System.loadLibrary(SYSTEMCONF_NATIVE_LIB); -+ return null; -+ } -+ }); -+ } - - /* - * Invoked when java.security.Security class is initialized, if -@@ -171,17 +177,34 @@ - } - - /* -- * FIPS is enabled only if crypto-policies are set to "FIPS" -- * and the com.redhat.fips property is true. -+ * OpenJDK FIPS mode will be enabled only if the com.redhat.fips -+ * system property is true (default) and the system is in FIPS mode. -+ * -+ * There are 2 possible ways in which OpenJDK detects that the system -+ * is in FIPS mode: 1) if the NSS SECMOD_GetSystemFIPSEnabled API is -+ * available at OpenJDK's built-time, it is called; 2) otherwise, the -+ * /proc/sys/crypto/fips_enabled file is read. - */ -- private static boolean enableFips() throws Exception { -+ private static boolean enableFips() throws IOException { - boolean shouldEnable = Boolean.valueOf(System.getProperty("com.redhat.fips", "true")); - if (shouldEnable) { -- Path configPath = FileSystems.getDefault().getPath(CRYPTO_POLICIES_CONFIG); -- String cryptoPoliciesConfig = new String(Files.readAllBytes(configPath)); -- if (sdebug != null) { sdebug.println("Crypto config:\n" + cryptoPoliciesConfig); } -- Pattern pattern = Pattern.compile("^FIPS$", Pattern.MULTILINE); -- return pattern.matcher(cryptoPoliciesConfig).find(); -+ if (sdebug != null) { -+ sdebug.println("Calling getSystemFIPSEnabled (libsystemconf)..."); -+ } -+ try { -+ shouldEnable = getSystemFIPSEnabled(); -+ if (sdebug != null) { -+ sdebug.println("Call to getSystemFIPSEnabled (libsystemconf) returned: " -+ + shouldEnable); -+ } -+ return shouldEnable; -+ } catch (IOException e) { -+ if (sdebug != null) { -+ sdebug.println("Call to getSystemFIPSEnabled (libsystemconf) failed:"); -+ sdebug.println(e.getMessage()); -+ } -+ throw e; -+ } - } else { - return false; - } -diff --git openjdk.orig/jdk/src/solaris/native/java/security/systemconf.c openjdk/jdk/src/solaris/native/java/security/systemconf.c -new file mode 100644 ---- /dev/null -+++ openjdk/jdk/src/solaris/native/java/security/systemconf.c -@@ -0,0 +1,168 @@ -+/* -+ * Copyright (c) 2021, Red Hat, Inc. -+ * 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. Oracle designates this -+ * particular file as subject to the "Classpath" exception as provided -+ * by Oracle in the LICENSE file that accompanied this code. -+ * -+ * 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. -+ */ -+ -+#include -+#include -+#include -+#include -+ -+#ifdef SYSCONF_NSS -+#include -+#endif //SYSCONF_NSS -+ -+#include "java_security_SystemConfigurator.h" -+ -+#define FIPS_ENABLED_PATH "/proc/sys/crypto/fips_enabled" -+#define MSG_MAX_SIZE 96 -+ -+static jmethodID debugPrintlnMethodID = NULL; -+static jobject debugObj = NULL; -+ -+static void throwIOException(JNIEnv *env, const char *msg); -+static void dbgPrint(JNIEnv *env, const char* msg); -+ -+/* -+ * Class: java_security_SystemConfigurator -+ * Method: JNI_OnLoad -+ */ -+JNIEXPORT jint JNICALL DEF_JNI_OnLoad(JavaVM *vm, void *reserved) -+{ -+ JNIEnv *env; -+ jclass sysConfCls, debugCls; -+ jfieldID sdebugFld; -+ -+ if ((*vm)->GetEnv(vm, (void**) &env, JNI_VERSION_1_2) != JNI_OK) { -+ return JNI_EVERSION; /* JNI version not supported */ -+ } -+ -+ sysConfCls = (*env)->FindClass(env,"java/security/SystemConfigurator"); -+ if (sysConfCls == NULL) { -+ printf("libsystemconf: SystemConfigurator class not found\n"); -+ return JNI_ERR; -+ } -+ sdebugFld = (*env)->GetStaticFieldID(env, sysConfCls, -+ "sdebug", "Lsun/security/util/Debug;"); -+ if (sdebugFld == NULL) { -+ printf("libsystemconf: SystemConfigurator::sdebug field not found\n"); -+ return JNI_ERR; -+ } -+ debugObj = (*env)->GetStaticObjectField(env, sysConfCls, sdebugFld); -+ if (debugObj != NULL) { -+ debugCls = (*env)->FindClass(env,"sun/security/util/Debug"); -+ if (debugCls == NULL) { -+ printf("libsystemconf: Debug class not found\n"); -+ return JNI_ERR; -+ } -+ debugPrintlnMethodID = (*env)->GetMethodID(env, debugCls, -+ "println", "(Ljava/lang/String;)V"); -+ if (debugPrintlnMethodID == NULL) { -+ printf("libsystemconf: Debug::println(String) method not found\n"); -+ return JNI_ERR; -+ } -+ debugObj = (*env)->NewGlobalRef(env, debugObj); -+ } -+ -+ return (*env)->GetVersion(env); -+} -+ -+/* -+ * Class: java_security_SystemConfigurator -+ * Method: JNI_OnUnload -+ */ -+JNIEXPORT void JNICALL DEF_JNI_OnUnload(JavaVM *vm, void *reserved) -+{ -+ JNIEnv *env; -+ -+ if (debugObj != NULL) { -+ if ((*vm)->GetEnv(vm, (void**) &env, JNI_VERSION_1_2) != JNI_OK) { -+ return; /* Should not happen */ -+ } -+ (*env)->DeleteGlobalRef(env, debugObj); -+ } -+} -+ -+JNIEXPORT jboolean JNICALL Java_java_security_SystemConfigurator_getSystemFIPSEnabled -+ (JNIEnv *env, jclass cls) -+{ -+ int fips_enabled; -+ char msg[MSG_MAX_SIZE]; -+ int msg_bytes; -+ -+#ifdef SYSCONF_NSS -+ -+ dbgPrint(env, "getSystemFIPSEnabled: calling SECMOD_GetSystemFIPSEnabled"); -+ fips_enabled = SECMOD_GetSystemFIPSEnabled(); -+ msg_bytes = snprintf(msg, MSG_MAX_SIZE, "getSystemFIPSEnabled:" \ -+ " SECMOD_GetSystemFIPSEnabled returned 0x%x", fips_enabled); -+ if (msg_bytes > 0 && msg_bytes < MSG_MAX_SIZE) { -+ dbgPrint(env, msg); -+ } else { -+ dbgPrint(env, "getSystemFIPSEnabled: cannot render" \ -+ " SECMOD_GetSystemFIPSEnabled return value"); -+ } -+ return (fips_enabled == 1 ? JNI_TRUE : JNI_FALSE); -+ -+#else // SYSCONF_NSS -+ -+ FILE *fe; -+ -+ dbgPrint(env, "getSystemFIPSEnabled: reading " FIPS_ENABLED_PATH); -+ if ((fe = fopen(FIPS_ENABLED_PATH, "r")) == NULL) { -+ throwIOException(env, "Cannot open " FIPS_ENABLED_PATH); -+ } -+ fips_enabled = fgetc(fe); -+ fclose(fe); -+ if (fips_enabled == EOF) { -+ throwIOException(env, "Cannot read " FIPS_ENABLED_PATH); -+ } -+ msg_bytes = snprintf(msg, MSG_MAX_SIZE, "getSystemFIPSEnabled:" \ -+ " read character is '%c'", fips_enabled); -+ if (msg_bytes > 0 && msg_bytes < MSG_MAX_SIZE) { -+ dbgPrint(env, msg); -+ } else { -+ dbgPrint(env, "getSystemFIPSEnabled: cannot render" \ -+ " read character"); -+ } -+ return (fips_enabled == '1' ? JNI_TRUE : JNI_FALSE); -+ -+#endif // SYSCONF_NSS -+} -+ -+static void throwIOException(JNIEnv *env, const char *msg) -+{ -+ jclass cls = (*env)->FindClass(env, "java/io/IOException"); -+ if (cls != 0) -+ (*env)->ThrowNew(env, cls, msg); -+} -+ -+static void dbgPrint(JNIEnv *env, const char* msg) -+{ -+ jstring jMsg; -+ if (debugObj != NULL) { -+ jMsg = (*env)->NewStringUTF(env, msg); -+ CHECK_NULL(jMsg); -+ (*env)->CallVoidMethod(env, debugObj, debugPrintlnMethodID, jMsg); -+ } -+} diff --git a/rh1929465-improve_system_FIPS_detection-root.patch b/rh1929465-improve_system_FIPS_detection-root.patch deleted file mode 100644 index 64d8ac02bfaad08bebd91a07baaea491f0b3d1c8..0000000000000000000000000000000000000000 --- a/rh1929465-improve_system_FIPS_detection-root.patch +++ /dev/null @@ -1,152 +0,0 @@ -diff --git openjdk.orig/common/autoconf/configure.ac openjdk/common/autoconf/configure.ac ---- openjdk.orig/common/autoconf/configure.ac -+++ openjdk/common/autoconf/configure.ac -@@ -212,6 +212,7 @@ - LIB_SETUP_ALSA - LIB_SETUP_FONTCONFIG - LIB_SETUP_MISC_LIBS -+LIB_SETUP_SYSCONF_LIBS - LIB_SETUP_STATIC_LINK_LIBSTDCPP - LIB_SETUP_ON_WINDOWS - -diff --git openjdk.orig/common/autoconf/libraries.m4 openjdk/common/autoconf/libraries.m4 ---- openjdk.orig/common/autoconf/libraries.m4 -+++ openjdk/common/autoconf/libraries.m4 -@@ -1067,3 +1067,63 @@ - BASIC_DEPRECATED_ARG_WITH([dxsdk-include]) - fi - ]) -+ -+################################################################################ -+# Setup system configuration libraries -+################################################################################ -+AC_DEFUN_ONCE([LIB_SETUP_SYSCONF_LIBS], -+[ -+ ############################################################################### -+ # -+ # Check for the NSS library -+ # -+ -+ AC_MSG_CHECKING([whether to use the system NSS library with the System Configurator (libsysconf)]) -+ -+ # default is not available -+ DEFAULT_SYSCONF_NSS=no -+ -+ AC_ARG_ENABLE([sysconf-nss], [AS_HELP_STRING([--enable-sysconf-nss], -+ [build the System Configurator (libsysconf) using the system NSS library if available @<:@disabled@:>@])], -+ [ -+ case "${enableval}" in -+ yes) -+ sysconf_nss=yes -+ ;; -+ *) -+ sysconf_nss=no -+ ;; -+ esac -+ ], -+ [ -+ sysconf_nss=${DEFAULT_SYSCONF_NSS} -+ ]) -+ AC_MSG_RESULT([$sysconf_nss]) -+ -+ USE_SYSCONF_NSS=false -+ if test "x${sysconf_nss}" = "xyes"; then -+ PKG_CHECK_MODULES(NSS, nss >= 3.53, [NSS_FOUND=yes], [NSS_FOUND=no]) -+ if test "x${NSS_FOUND}" = "xyes"; then -+ AC_MSG_CHECKING([for system FIPS support in NSS]) -+ saved_libs="${LIBS}" -+ saved_cflags="${CFLAGS}" -+ CFLAGS="${CFLAGS} ${NSS_CFLAGS}" -+ LIBS="${LIBS} ${NSS_LIBS}" -+ AC_LANG_PUSH([C]) -+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], -+ [[SECMOD_GetSystemFIPSEnabled()]])], -+ [AC_MSG_RESULT([yes])], -+ [AC_MSG_RESULT([no]) -+ AC_MSG_ERROR([System NSS FIPS detection unavailable])]) -+ AC_LANG_POP([C]) -+ CFLAGS="${saved_cflags}" -+ LIBS="${saved_libs}" -+ USE_SYSCONF_NSS=true -+ else -+ dnl NSS 3.53 is the one that introduces the SECMOD_GetSystemFIPSEnabled API -+ dnl in nss3/pk11pub.h. -+ AC_MSG_ERROR([--enable-sysconf-nss specified, but NSS 3.53 or above not found.]) -+ fi -+ fi -+ AC_SUBST(USE_SYSCONF_NSS) -+]) -diff --git openjdk.orig/common/autoconf/spec.gmk.in openjdk/common/autoconf/spec.gmk.in ---- openjdk.orig/common/autoconf/spec.gmk.in -+++ openjdk/common/autoconf/spec.gmk.in -@@ -312,6 +312,10 @@ - ALSA_LIBS:=@ALSA_LIBS@ - ALSA_CFLAGS:=@ALSA_CFLAGS@ - -+USE_SYSCONF_NSS:=@USE_SYSCONF_NSS@ -+NSS_LIBS:=@NSS_LIBS@ -+NSS_CFLAGS:=@NSS_CFLAGS@ -+ - PACKAGE_PATH=@PACKAGE_PATH@ - - # Source file for cacerts -diff --git openjdk.orig/common/bin/compare_exceptions.sh.incl openjdk/common/bin/compare_exceptions.sh.incl ---- openjdk.orig/common/bin/compare_exceptions.sh.incl -+++ openjdk/common/bin/compare_exceptions.sh.incl -@@ -280,6 +280,7 @@ - ./jre/lib/i386/libsplashscreen.so - ./jre/lib/i386/libsunec.so - ./jre/lib/i386/libsunwjdga.so -+./jre/lib/i386/libsystemconf.so - ./jre/lib/i386/libt2k.so - ./jre/lib/i386/libunpack.so - ./jre/lib/i386/libverify.so -@@ -433,6 +434,7 @@ - ./jre/lib/amd64/libsplashscreen.so - ./jre/lib/amd64/libsunec.so - ./jre/lib/amd64/libsunwjdga.so -+//jre/lib/amd64/libsystemconf.so - ./jre/lib/amd64/libt2k.so - ./jre/lib/amd64/libunpack.so - ./jre/lib/amd64/libverify.so -@@ -587,6 +589,7 @@ - ./jre/lib/sparc/libsplashscreen.so - ./jre/lib/sparc/libsunec.so - ./jre/lib/sparc/libsunwjdga.so -+./jre/lib/sparc/libsystemconf.so - ./jre/lib/sparc/libt2k.so - ./jre/lib/sparc/libunpack.so - ./jre/lib/sparc/libverify.so -@@ -741,6 +744,7 @@ - ./jre/lib/sparcv9/libsplashscreen.so - ./jre/lib/sparcv9/libsunec.so - ./jre/lib/sparcv9/libsunwjdga.so -+./jre/lib/sparcv9/libsystemconf.so - ./jre/lib/sparcv9/libt2k.so - ./jre/lib/sparcv9/libunpack.so - ./jre/lib/sparcv9/libverify.so -diff --git openjdk.orig/common/nb_native/nbproject/configurations.xml openjdk/common/nb_native/nbproject/configurations.xml ---- openjdk.orig/common/nb_native/nbproject/configurations.xml -+++ openjdk/common/nb_native/nbproject/configurations.xml -@@ -53,6 +53,9 @@ - jvmtiEnterTrace.cpp - - -+ -+ systemconf.c -+ - - - -@@ -12772,6 +12775,11 @@ - tool="0" - flavor2="0"> - -+ -+ - attrsMap = new HashMap<>(); -+ for (CK_ATTRIBUTE attr : attributes) { -+ if (attr.type == CKA_CLASS) { -+ keyClass = attr.getLong(); -+ } else if (attr.type == CKA_KEY_TYPE) { -+ keyType = attr.getLong(); -+ } -+ attrsMap.put(attr.type, attr); -+ } -+ BigInteger v = null; -+ if (keyClass == CKO_PRIVATE_KEY) { -+ if (keyType == CKK_RSA) { -+ if (debug != null) { -+ debug.println("Importing an RSA private key..."); -+ } -+ keyBytes = sun.security.rsa.RSAPrivateCrtKeyImpl.newKey( -+ KeyType.RSA, -+ null, -+ ((v = attrsMap.get(CKA_MODULUS).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ((v = attrsMap.get(CKA_PUBLIC_EXPONENT).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ((v = attrsMap.get(CKA_PRIVATE_EXPONENT).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ((v = attrsMap.get(CKA_PRIME_1).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ((v = attrsMap.get(CKA_PRIME_2).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ((v = attrsMap.get(CKA_EXPONENT_1).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ((v = attrsMap.get(CKA_EXPONENT_2).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ((v = attrsMap.get(CKA_COEFFICIENT).getBigInteger()) != null) -+ ? v : BigInteger.ZERO -+ ).getEncoded(); -+ } else if (keyType == CKK_DSA) { -+ if (debug != null) { -+ debug.println("Importing a DSA private key..."); -+ } -+ keyBytes = new sun.security.provider.DSAPrivateKey( -+ ((v = attrsMap.get(CKA_VALUE).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ((v = attrsMap.get(CKA_PRIME).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ((v = attrsMap.get(CKA_SUBPRIME).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ((v = attrsMap.get(CKA_BASE).getBigInteger()) != null) -+ ? v : BigInteger.ZERO -+ ).getEncoded(); -+ if (token.config.getNssNetscapeDbWorkaround() && -+ attrsMap.get(CKA_NETSCAPE_DB) == null) { -+ attrsMap.put(CKA_NETSCAPE_DB, -+ new CK_ATTRIBUTE(CKA_NETSCAPE_DB, BigInteger.ZERO)); -+ } -+ } else if (keyType == CKK_EC) { -+ if (debug != null) { -+ debug.println("Importing an EC private key..."); -+ } -+ if (sunECProvider == null) { -+ sunECProviderLock.lock(); -+ try { -+ if (sunECProvider == null) { -+ sunECProvider = Security.getProvider("SunEC"); -+ } -+ } finally { -+ sunECProviderLock.unlock(); -+ } -+ } -+ keyBytes = P11ECUtil.generateECPrivateKey( -+ ((v = attrsMap.get(CKA_VALUE).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ECUtil.getECParameterSpec(sunECProvider, -+ attrsMap.get(CKA_EC_PARAMS).getByteArray())) -+ .getEncoded(); -+ if (token.config.getNssNetscapeDbWorkaround() && -+ attrsMap.get(CKA_NETSCAPE_DB) == null) { -+ attrsMap.put(CKA_NETSCAPE_DB, -+ new CK_ATTRIBUTE(CKA_NETSCAPE_DB, BigInteger.ZERO)); -+ } -+ } else if (keyType == CKK_DH) { -+ if (debug != null) { -+ debug.println("Importing a Diffie-Hellman private key..."); -+ } -+ if (DHKF == null) { -+ DHKFLock.lock(); -+ try { -+ if (DHKF == null) { -+ DHKF = KeyFactory.getInstance( -+ "DH", P11Util.getSunJceProvider()); -+ } -+ } finally { -+ DHKFLock.unlock(); -+ } -+ } -+ DHPrivateKeySpec spec = new DHPrivateKeySpec -+ (((v = attrsMap.get(CKA_VALUE).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ((v = attrsMap.get(CKA_PRIME).getBigInteger()) != null) -+ ? v : BigInteger.ZERO, -+ ((v = attrsMap.get(CKA_BASE).getBigInteger()) != null) -+ ? v : BigInteger.ZERO); -+ keyBytes = DHKF.generatePrivate(spec).getEncoded(); -+ if (token.config.getNssNetscapeDbWorkaround() && -+ attrsMap.get(CKA_NETSCAPE_DB) == null) { -+ attrsMap.put(CKA_NETSCAPE_DB, -+ new CK_ATTRIBUTE(CKA_NETSCAPE_DB, BigInteger.ZERO)); -+ } -+ } else { -+ if (debug != null) { -+ debug.println("Unrecognized private key type."); -+ } -+ throw new PKCS11Exception(CKR_GENERAL_ERROR); -+ } -+ } else if (keyClass == CKO_SECRET_KEY) { -+ if (debug != null) { -+ debug.println("Importing a secret key..."); -+ } -+ keyBytes = attrsMap.get(CKA_VALUE).getByteArray(); -+ } -+ if (keyBytes == null || keyBytes.length == 0) { -+ if (debug != null) { -+ debug.println("Private or secret key plain bytes could" + -+ " not be obtained. Import failed."); -+ } -+ throw new PKCS11Exception(CKR_GENERAL_ERROR); -+ } -+ importerCipher.init(Cipher.ENCRYPT_MODE, importerKey, -+ new IvParameterSpec((byte[])importerKeyMechanism.pParameter), -+ null); -+ attributes = new CK_ATTRIBUTE[attrsMap.size()]; -+ attrsMap.values().toArray(attributes); -+ encKeyBytes = importerCipher.doFinal(keyBytes); -+ attributes = token.getAttributes(TemplateManager.O_IMPORT, -+ keyClass, keyType, attributes); -+ keyID = token.p11.C_UnwrapKey(hSession, -+ importerKeyMechanism, importerKeyID, encKeyBytes, attributes); -+ if (debug != null) { -+ debug.println("Imported key ID: " + keyID); -+ } -+ } catch (Throwable t) { -+ throw new PKCS11Exception(CKR_GENERAL_ERROR); -+ } finally { -+ importerKey.releaseKeyID(); -+ } -+ return Long.valueOf(keyID); -+ } -+ -+ private static void createImporterKey(Token token) { -+ if (debug != null) { -+ debug.println("Generating Importer Key..."); -+ } -+ byte[] iv = new byte[16]; -+ JCAUtil.getSecureRandom().nextBytes(iv); -+ importerKeyMechanism = new CK_MECHANISM(CKM_AES_CBC_PAD, iv); -+ try { -+ CK_ATTRIBUTE[] attributes = token.getAttributes(TemplateManager.O_GENERATE, -+ CKO_SECRET_KEY, CKK_AES, new CK_ATTRIBUTE[] { -+ new CK_ATTRIBUTE(CKA_CLASS, CKO_SECRET_KEY), -+ new CK_ATTRIBUTE(CKA_VALUE_LEN, 256 >> 3)}); -+ Session s = null; -+ try { -+ s = token.getObjSession(); -+ long keyID = token.p11.C_GenerateKey( -+ s.id(), new CK_MECHANISM(CKM_AES_KEY_GEN), -+ attributes); -+ if (debug != null) { -+ debug.println("Importer Key ID: " + keyID); -+ } -+ importerKey = (P11Key)P11Key.secretKey(s, keyID, "AES", -+ 256 >> 3, null); -+ } catch (PKCS11Exception e) { -+ // best effort -+ } finally { -+ token.releaseSession(s); -+ } -+ if (importerKey != null) { -+ importerCipher = Cipher.getInstance("AES/CBC/PKCS5Padding"); -+ } -+ } catch (Throwable t) { -+ // best effort -+ importerKey = null; -+ importerCipher = null; -+ // importerKeyMechanism value is kept initialized to indicate that -+ // Importer Key creation has been tried and failed. -+ } -+ } -+} -diff --git openjdk.orig/jdk/src/share/classes/sun/security/pkcs11/SunPKCS11.java openjdk/jdk/src/share/classes/sun/security/pkcs11/SunPKCS11.java ---- openjdk.orig/jdk/src/share/classes/sun/security/pkcs11/SunPKCS11.java -+++ openjdk/jdk/src/share/classes/sun/security/pkcs11/SunPKCS11.java -@@ -26,6 +26,9 @@ - package sun.security.pkcs11; - - import java.io.*; -+import java.lang.invoke.MethodHandle; -+import java.lang.invoke.MethodHandles; -+import java.lang.invoke.MethodType; - import java.util.*; - - import java.security.*; -@@ -63,6 +66,26 @@ - private static final boolean systemFipsEnabled = SharedSecrets - .getJavaSecuritySystemConfiguratorAccess().isSystemFipsEnabled(); - -+ private static final boolean plainKeySupportEnabled = SharedSecrets -+ .getJavaSecuritySystemConfiguratorAccess().isPlainKeySupportEnabled(); -+ -+ private static final MethodHandle fipsImportKey; -+ static { -+ MethodHandle fipsImportKeyTmp = null; -+ if (plainKeySupportEnabled) { -+ try { -+ fipsImportKeyTmp = MethodHandles.lookup().findStatic( -+ FIPSKeyImporter.class, "importKey", -+ MethodType.methodType(Long.class, SunPKCS11.class, -+ long.class, CK_ATTRIBUTE[].class)); -+ } catch (Throwable t) { -+ throw new SecurityException("FIPS key importer initialization" + -+ " failed", t); -+ } -+ } -+ fipsImportKey = fipsImportKeyTmp; -+ } -+ - private static final long serialVersionUID = -1354835039035306505L; - - static final Debug debug = Debug.getInstance("sunpkcs11"); -@@ -314,10 +337,15 @@ - // request multithreaded access first - initArgs.flags = CKF_OS_LOCKING_OK; - PKCS11 tmpPKCS11; -+ MethodHandle fipsKeyImporter = null; -+ if (plainKeySupportEnabled) { -+ fipsKeyImporter = MethodHandles.insertArguments( -+ fipsImportKey, 0, this); -+ } - try { - tmpPKCS11 = PKCS11.getInstance( - library, functionList, initArgs, -- config.getOmitInitialize()); -+ config.getOmitInitialize(), fipsKeyImporter); - } catch (PKCS11Exception e) { - if (debug != null) { - debug.println("Multi-threaded initialization failed: " + e); -@@ -333,7 +361,7 @@ - initArgs.flags = 0; - } - tmpPKCS11 = PKCS11.getInstance(library, -- functionList, initArgs, config.getOmitInitialize()); -+ functionList, initArgs, config.getOmitInitialize(), fipsKeyImporter); - } - p11 = tmpPKCS11; - -diff --git openjdk.orig/jdk/src/share/classes/sun/security/pkcs11/wrapper/PKCS11.java openjdk/jdk/src/share/classes/sun/security/pkcs11/wrapper/PKCS11.java ---- openjdk.orig/jdk/src/share/classes/sun/security/pkcs11/wrapper/PKCS11.java -+++ openjdk/jdk/src/share/classes/sun/security/pkcs11/wrapper/PKCS11.java -@@ -49,6 +49,7 @@ - - import java.io.File; - import java.io.IOException; -+import java.lang.invoke.MethodHandle; - import java.util.*; - - import java.security.AccessController; -@@ -147,16 +148,28 @@ - - public static synchronized PKCS11 getInstance(String pkcs11ModulePath, - String functionList, CK_C_INITIALIZE_ARGS pInitArgs, -- boolean omitInitialize) throws IOException, PKCS11Exception { -+ boolean omitInitialize, MethodHandle fipsKeyImporter) -+ throws IOException, PKCS11Exception { - // we may only call C_Initialize once per native .so/.dll - // so keep a cache using the (non-canonicalized!) path - PKCS11 pkcs11 = moduleMap.get(pkcs11ModulePath); - if (pkcs11 == null) { -+ boolean nssFipsMode = fipsKeyImporter != null; - if ((pInitArgs != null) - && ((pInitArgs.flags & CKF_OS_LOCKING_OK) != 0)) { -- pkcs11 = new PKCS11(pkcs11ModulePath, functionList); -+ if (nssFipsMode) { -+ pkcs11 = new FIPSPKCS11(pkcs11ModulePath, functionList, -+ fipsKeyImporter); -+ } else { -+ pkcs11 = new PKCS11(pkcs11ModulePath, functionList); -+ } - } else { -- pkcs11 = new SynchronizedPKCS11(pkcs11ModulePath, functionList); -+ if (nssFipsMode) { -+ pkcs11 = new SynchronizedFIPSPKCS11(pkcs11ModulePath, -+ functionList, fipsKeyImporter); -+ } else { -+ pkcs11 = new SynchronizedPKCS11(pkcs11ModulePath, functionList); -+ } - } - if (omitInitialize == false) { - try { -@@ -1905,4 +1918,69 @@ - super.C_GenerateRandom(hSession, randomData); - } - } -+ -+// PKCS11 subclass that allows using plain private or secret keys in -+// FIPS-configured NSS Software Tokens. Only used when System FIPS -+// is enabled. -+static class FIPSPKCS11 extends PKCS11 { -+ private MethodHandle fipsKeyImporter; -+ FIPSPKCS11(String pkcs11ModulePath, String functionListName, -+ MethodHandle fipsKeyImporter) throws IOException { -+ super(pkcs11ModulePath, functionListName); -+ this.fipsKeyImporter = fipsKeyImporter; -+ } -+ -+ public synchronized long C_CreateObject(long hSession, -+ CK_ATTRIBUTE[] pTemplate) throws PKCS11Exception { -+ // Creating sensitive key objects from plain key material in a -+ // FIPS-configured NSS Software Token is not allowed. We apply -+ // a key-unwrapping scheme to achieve so. -+ if (FIPSPKCS11Helper.isSensitiveObject(pTemplate)) { -+ try { -+ return ((Long)fipsKeyImporter.invoke(hSession, pTemplate)) -+ .longValue(); -+ } catch (Throwable t) { -+ throw new PKCS11Exception(CKR_GENERAL_ERROR); -+ } -+ } -+ return super.C_CreateObject(hSession, pTemplate); -+ } - } -+ -+// FIPSPKCS11 synchronized counterpart. -+static class SynchronizedFIPSPKCS11 extends SynchronizedPKCS11 { -+ private MethodHandle fipsKeyImporter; -+ SynchronizedFIPSPKCS11(String pkcs11ModulePath, String functionListName, -+ MethodHandle fipsKeyImporter) throws IOException { -+ super(pkcs11ModulePath, functionListName); -+ this.fipsKeyImporter = fipsKeyImporter; -+ } -+ -+ public synchronized long C_CreateObject(long hSession, -+ CK_ATTRIBUTE[] pTemplate) throws PKCS11Exception { -+ // See FIPSPKCS11::C_CreateObject. -+ if (FIPSPKCS11Helper.isSensitiveObject(pTemplate)) { -+ try { -+ return ((Long)fipsKeyImporter.invoke(hSession, pTemplate)) -+ .longValue(); -+ } catch (Throwable t) { -+ throw new PKCS11Exception(CKR_GENERAL_ERROR); -+ } -+ } -+ return super.C_CreateObject(hSession, pTemplate); -+ } -+} -+ -+private static class FIPSPKCS11Helper { -+ static boolean isSensitiveObject(CK_ATTRIBUTE[] pTemplate) { -+ for (CK_ATTRIBUTE attr : pTemplate) { -+ if (attr.type == CKA_CLASS && -+ (attr.getLong() == CKO_PRIVATE_KEY || -+ attr.getLong() == CKO_SECRET_KEY)) { -+ return true; -+ } -+ } -+ return false; -+ } -+} -+} -diff --git openjdk.orig/jdk/src/share/classes/sun/security/ssl/KeyManagerFactoryImpl.java openjdk/jdk/src/share/classes/sun/security/ssl/KeyManagerFactoryImpl.java ---- openjdk.orig/jdk/src/share/classes/sun/security/ssl/KeyManagerFactoryImpl.java -+++ openjdk/jdk/src/share/classes/sun/security/ssl/KeyManagerFactoryImpl.java -@@ -33,8 +33,13 @@ - - import javax.net.ssl.*; - -+import sun.misc.SharedSecrets; -+ - abstract class KeyManagerFactoryImpl extends KeyManagerFactorySpi { - -+ private static final boolean plainKeySupportEnabled = SharedSecrets -+ .getJavaSecuritySystemConfiguratorAccess().isPlainKeySupportEnabled(); -+ - X509ExtendedKeyManager keyManager; - boolean isInitialized; - -@@ -62,7 +67,8 @@ - KeyStoreException, NoSuchAlgorithmException, - UnrecoverableKeyException { - if ((ks != null) && SunJSSE.isFIPS()) { -- if (ks.getProvider() != SunJSSE.cryptoProvider) { -+ if (ks.getProvider() != SunJSSE.cryptoProvider && -+ !plainKeySupportEnabled) { - throw new KeyStoreException("FIPS mode: KeyStore must be " - + "from provider " + SunJSSE.cryptoProvider.getName()); - } -@@ -91,8 +97,8 @@ - keyManager = new X509KeyManagerImpl( - Collections.emptyList()); - } else { -- if (SunJSSE.isFIPS() && -- (ks.getProvider() != SunJSSE.cryptoProvider)) { -+ if (SunJSSE.isFIPS() && (ks.getProvider() != SunJSSE.cryptoProvider) -+ && !plainKeySupportEnabled) { - throw new KeyStoreException( - "FIPS mode: KeyStore must be " + - "from provider " + SunJSSE.cryptoProvider.getName()); diff --git a/rh1996182-login_to_nss_software_token.patch b/rh1996182-login_to_nss_software_token.patch deleted file mode 100644 index 341e09250d8f3da699859672a194b49b3521a8b6..0000000000000000000000000000000000000000 --- a/rh1996182-login_to_nss_software_token.patch +++ /dev/null @@ -1,55 +0,0 @@ -# HG changeset patch -# User mbalao -# Date 1630103180 -3600 -# Fri Aug 27 23:26:20 2021 +0100 -# Node ID b3bd3119fab9bc5adfd7073377aca12bb1af80b3 -# Parent c90394a76ee02a689f95199559d5724824b4b25e -RH1996182: Login to the NSS Software Token in FIPS Mode - -diff --git openjdk.orig/jdk/src/share/classes/sun/security/pkcs11/SunPKCS11.java openjdk/jdk/src/share/classes/sun/security/pkcs11/SunPKCS11.java ---- openjdk.orig/jdk/src/share/classes/sun/security/pkcs11/SunPKCS11.java -+++ openjdk/jdk/src/share/classes/sun/security/pkcs11/SunPKCS11.java -@@ -42,6 +42,8 @@ - import javax.security.auth.callback.PasswordCallback; - import javax.security.auth.callback.TextOutputCallback; - -+import sun.misc.SharedSecrets; -+ - import sun.security.util.Debug; - import sun.security.util.ResourcesMgr; - -@@ -58,6 +60,9 @@ - */ - public final class SunPKCS11 extends AuthProvider { - -+ private static final boolean systemFipsEnabled = SharedSecrets -+ .getJavaSecuritySystemConfiguratorAccess().isSystemFipsEnabled(); -+ - private static final long serialVersionUID = -1354835039035306505L; - - static final Debug debug = Debug.getInstance("sunpkcs11"); -@@ -368,6 +373,24 @@ - if (nssModule != null) { - nssModule.setProvider(this); - } -+ if (systemFipsEnabled) { -+ // The NSS Software Token in FIPS 140-2 mode requires a user -+ // login for most operations. See sftk_fipsCheck. The NSS DB -+ // (/etc/pki/nssdb) PIN is empty. -+ Session session = null; -+ try { -+ session = token.getOpSession(); -+ p11.C_Login(session.id(), CKU_USER, new char[] {}); -+ } catch (PKCS11Exception p11e) { -+ if (debug != null) { -+ debug.println("Error during token login: " + -+ p11e.getMessage()); -+ } -+ throw p11e; -+ } finally { -+ token.releaseSession(session); -+ } -+ } - } catch (Exception e) { - if (config.getHandleStartupErrors() == Config.ERR_IGNORE_ALL) { - throw new UnsupportedOperationException diff --git a/rh2021263-fips_ensure_security_initialised.patch b/rh2021263-fips_ensure_security_initialised.patch deleted file mode 100644 index e1d2432e3d2faee549b8eb8a99404f1cfb674efb..0000000000000000000000000000000000000000 --- a/rh2021263-fips_ensure_security_initialised.patch +++ /dev/null @@ -1,18 +0,0 @@ -commit 06c2decab204fcce5aca2d285953fcac1820b1ae -Author: Andrew John Hughes -Date: Mon Jan 24 01:23:28 2022 +0000 - - RH2021263: Make sure java.security.Security is initialised when retrieving JavaSecuritySystemConfiguratorAccess instance - -diff --git openjdk.orig/jdk/src/share/classes/sun/misc/SharedSecrets.java openjdk/jdk/src/share/classes/sun/misc/SharedSecrets.java -index 40ca609e02..0dafe6f59c 100644 ---- openjdk.orig/jdk/src/share/classes/sun/misc/SharedSecrets.java -+++ openjdk/jdk/src/share/classes/sun/misc/SharedSecrets.java -@@ -31,6 +31,7 @@ import java.io.Console; - import java.io.FileDescriptor; - import java.io.ObjectInputStream; - import java.security.ProtectionDomain; -+import java.security.Security; - import java.security.Signature; - - import java.security.AccessController; diff --git a/rh2021263-fips_missing_native_returns.patch b/rh2021263-fips_missing_native_returns.patch deleted file mode 100644 index 90cc44ee4b252d0689639ccace52bd491ca23c04..0000000000000000000000000000000000000000 --- a/rh2021263-fips_missing_native_returns.patch +++ /dev/null @@ -1,24 +0,0 @@ -commit 7f58a05104138ebdfd3b7b968ed67ea4c8573073 -Author: Fridrich Strba -Date: Mon Jan 24 01:10:57 2022 +0000 - - RH2021263: Return in C code after having generated Java exception - -diff --git openjdk.orig/jdk/src/solaris/native/java/security/systemconf.c openjdk/jdk/src/solaris/native/java/security/systemconf.c -index 6f4656bfcb..34d0ff0ce9 100644 ---- openjdk.orig/jdk/src/solaris/native/java/security/systemconf.c -+++ openjdk/jdk/src/solaris/native/java/security/systemconf.c -@@ -131,11 +131,13 @@ JNIEXPORT jboolean JNICALL Java_java_security_SystemConfigurator_getSystemFIPSEn - dbgPrint(env, "getSystemFIPSEnabled: reading " FIPS_ENABLED_PATH); - if ((fe = fopen(FIPS_ENABLED_PATH, "r")) == NULL) { - throwIOException(env, "Cannot open " FIPS_ENABLED_PATH); -+ return JNI_FALSE; - } - fips_enabled = fgetc(fe); - fclose(fe); - if (fips_enabled == EOF) { - throwIOException(env, "Cannot read " FIPS_ENABLED_PATH); -+ return JNI_FALSE; - } - msg_bytes = snprintf(msg, MSG_MAX_SIZE, "getSystemFIPSEnabled:" \ - " read character is '%c'", fips_enabled); diff --git a/rh2021263-fips_separate_policy_and_fips_init.patch b/rh2021263-fips_separate_policy_and_fips_init.patch deleted file mode 100644 index e237841b2396cc3532b19921e2c4760ea0acbb12..0000000000000000000000000000000000000000 --- a/rh2021263-fips_separate_policy_and_fips_init.patch +++ /dev/null @@ -1,98 +0,0 @@ -commit aaf92165ad1cbb1c9818eb60178c91293e13b053 -Author: Andrew John Hughes -Date: Mon Jan 24 15:13:14 2022 +0000 - - RH2021263: Improve Security initialisation, now FIPS support no longer relies on crypto policy support - -diff --git openjdk.orig/jdk/src/share/classes/java/security/Security.java openjdk/jdk/src/share/classes/java/security/Security.java -index fa494b680f..b5aa5c749d 100644 ---- openjdk.orig/jdk/src/share/classes/java/security/Security.java -+++ openjdk/jdk/src/share/classes/java/security/Security.java -@@ -57,10 +57,6 @@ public final class Security { - private static final Debug sdebug = - Debug.getInstance("properties"); - -- /* System property file*/ -- private static final String SYSTEM_PROPERTIES = -- "/etc/crypto-policies/back-ends/java.config"; -- - /* The java.security properties */ - private static Properties props; - -@@ -202,13 +198,6 @@ public final class Security { - } - } - -- String disableSystemProps = System.getProperty("java.security.disableSystemPropertiesFile"); -- if (disableSystemProps == null && -- "true".equalsIgnoreCase(props.getProperty -- ("security.useSystemPropertiesFile"))) { -- loadedProps = loadedProps && SystemConfigurator.configure(props); -- } -- - if (!loadedProps) { - initializeStatic(); - if (sdebug != null) { -@@ -217,6 +206,28 @@ public final class Security { - } - } - -+ String disableSystemProps = System.getProperty("java.security.disableSystemPropertiesFile"); -+ if ((disableSystemProps == null || "false".equalsIgnoreCase(disableSystemProps)) && -+ "true".equalsIgnoreCase(props.getProperty("security.useSystemPropertiesFile"))) { -+ if (!SystemConfigurator.configureSysProps(props)) { -+ if (sdebug != null) { -+ sdebug.println("WARNING: System properties could not be loaded."); -+ } -+ } -+ } -+ -+ // FIPS support depends on the contents of java.security so -+ // ensure it has loaded first -+ if (loadedProps) { -+ boolean fipsEnabled = SystemConfigurator.configureFIPS(props); -+ if (sdebug != null) { -+ if (fipsEnabled) { -+ sdebug.println("FIPS support enabled."); -+ } else { -+ sdebug.println("FIPS support disabled."); -+ } -+ } -+ } - } - - /* -diff --git openjdk.orig/jdk/src/share/classes/java/security/SystemConfigurator.java openjdk/jdk/src/share/classes/java/security/SystemConfigurator.java -index d1f677597d..7da65b1d2c 100644 ---- openjdk.orig/jdk/src/share/classes/java/security/SystemConfigurator.java -+++ openjdk/jdk/src/share/classes/java/security/SystemConfigurator.java -@@ -76,7 +76,7 @@ final class SystemConfigurator { - * java.security.disableSystemPropertiesFile property is not set and - * security.useSystemPropertiesFile is true. - */ -- static boolean configure(Properties props) { -+ static boolean configureSysProps(Properties props) { - boolean loadedProps = false; - - try (BufferedInputStream bis = -@@ -96,11 +96,19 @@ final class SystemConfigurator { - e.printStackTrace(); - } - } -+ return loadedProps; -+ } -+ -+ /* -+ * Invoked at the end of java.security.Security initialisation -+ * if java.security properties have been loaded -+ */ -+ static boolean configureFIPS(Properties props) { -+ boolean loadedProps = false; - - try { - if (enableFips()) { - if (sdebug != null) { sdebug.println("FIPS mode detected"); } -- loadedProps = false; - // Remove all security providers - Iterator> i = props.entrySet().iterator(); - while (i.hasNext()) { diff --git a/s390-8214206_fix.patch b/s390-8214206_fix.patch deleted file mode 100644 index 1b78a9b9514f8821b307b13e4e516442a0b81a2d..0000000000000000000000000000000000000000 --- a/s390-8214206_fix.patch +++ /dev/null @@ -1,46 +0,0 @@ -diff --git openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahUtils.cpp openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahUtils.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahUtils.cpp -+++ openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahUtils.cpp -@@ -150,5 +150,5 @@ - return value; - } - -- return (size_t)1 << (log2_intptr(value) + 1); -+ return (size_t)1 << (log2_intptr((uintptr_t) value) + 1); - } -diff --git openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahNumberSeq.cpp openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahNumberSeq.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahNumberSeq.cpp -+++ openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahNumberSeq.cpp -@@ -135,7 +135,7 @@ - void BinaryMagnitudeSeq::add(size_t val) { - Atomic::add(val, &_sum); - -- int mag = log2_intptr(val) + 1; -+ int mag = log2_intptr((uintptr_t)val) + 1; - - // Defensively saturate for product bits: - if (mag < 0) { -diff --git openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp -+++ openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp -@@ -659,7 +659,7 @@ - } - - size_t ShenandoahHeap::soft_max_capacity() const { -- size_t v = OrderAccess::load_acquire((volatile size_t*)&_soft_max_size); -+ size_t v = OrderAccess::load_acquire((volatile jlong*)&_soft_max_size); - assert(min_capacity() <= v && v <= max_capacity(), - err_msg("Should be in bounds: " SIZE_FORMAT " <= " SIZE_FORMAT " <= " SIZE_FORMAT, - min_capacity(), v, max_capacity())); -diff --git openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp -+++ openjdk/hotspot/src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp -@@ -155,7 +155,7 @@ - private: - size_t _initial_size; - size_t _minimum_size; -- volatile size_t _soft_max_size; -+ volatile jlong _soft_max_size; - shenandoah_padding(0); - volatile jlong _used; - volatile size_t _committed;