Hello community,
here is the log from the commit of package java-11-openjdk for openSUSE:Factory checked in at 2019-07-08 15:00:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/java-11-openjdk (Old)
and /work/SRC/openSUSE:Factory/.java-11-openjdk.new.4615 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "java-11-openjdk"
Mon Jul 8 15:00:42 2019 rev:31 rq:713602 version:11.0.3.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/java-11-openjdk/java-11-openjdk.changes 2019-05-02 19:14:26.369031274 +0200
+++ /work/SRC/openSUSE:Factory/.java-11-openjdk.new.4615/java-11-openjdk.changes 2019-07-08 15:00:43.590507479 +0200
@@ -1,0 +2,21 @@
+Fri Jul 5 08:23:43 UTC 2019 - Fridrich Strba
+
+- Do not fail installation when the manpages are not present
+ (bsc#1115375)
+
+-------------------------------------------------------------------
+Fri Jul 5 07:23:06 UTC 2019 - Fridrich Strba
+
+- Added patch:
+ * JDK-8208602.patch
+ + Backport upstream fix for JDK-8208602: Cannot read PEM X.509
+ cert if there is whitespace after the header or footer
+ (bsc#1140461)
+
+-------------------------------------------------------------------
+Tue Jun 4 14:53:17 UTC 2019 - Fridrich Strba
+
+- Provide and Obsolete the corresponding java-10-openjdk-<sub>
+ packages to assure smooth upgrade (fate#326347, bsc#1137264)
+
+-------------------------------------------------------------------
New:
----
JDK-8208602.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ java-11-openjdk.spec ++++++
--- /var/tmp/diff_new_pack.ZF0bB0/_old 2019-07-08 15:00:46.386511706 +0200
+++ /var/tmp/diff_new_pack.ZF0bB0/_new 2019-07-08 15:00:46.390511712 +0200
@@ -211,6 +211,8 @@
#
Patch20: loadAssistiveTechnologies.patch
#
+Patch30: JDK-8208602.patch
+#
# OpenJDK specific patches
#
Patch100: s390-java-opts.patch
@@ -289,6 +291,7 @@
# Required at least by fop
Provides: java-%{bits} = %{javaver}
Provides: java-%{javaver}-%{bits}
+Provides: java-10-openjdk = %{version}-%{release}
Provides: java-openjdk-%{bits} = %{version}-%{release}
Provides: jre-%{bits} = %{javaver}
Provides: jre-%{javaver}-%{bits}
@@ -302,6 +305,7 @@
Provides: jre1.7.x
Provides: jre1.8.x
Provides: jre1.9.x
+Obsoletes: java-10-openjdk < %{version}-%{release}
%if %{bootcycle}
BuildRequires: java-devel >= 10
BuildConflicts: java-devel >= 12
@@ -334,9 +338,9 @@
Summary: OpenJDK %{featurever} Runtime Environment
Group: Development/Languages/Java
Requires: jpackage-utils
+Requires(post): java-ca-certificates
# Post requires update-alternatives to install tool update-alternatives.
Requires(post): update-alternatives
-Requires(post): java-ca-certificates
# Postun requires update-alternatives to uninstall tool update-alternatives.
Requires(postun): update-alternatives
Recommends: tzdata-java8
@@ -350,6 +354,7 @@
Provides: jre-openjdk-headless = %{version}-%{release}
# Standard JPackage extensions provides.
Provides: jaas = %{version}
+Provides: java-10-openjdk-headless = %{version}-%{release}
Provides: java-sasl = %{version}
Provides: jce = %{version}
Provides: jdbc-stdext = 4.3
@@ -359,6 +364,7 @@
Provides: jndi-ldap = %{version}
Provides: jndi-rmi = %{version}
Provides: jsse = %{version}
+Obsoletes: java-10-openjdk-headless < %{version}-%{release}
%description headless
The OpenJDK %{featurever} runtime environment without audio and video support.
@@ -374,12 +380,14 @@
Requires(postun): update-alternatives
# Standard JPackage devel provides.
Provides: java-%{javaver}-devel = %{version}
+Provides: java-10-openjdk-devel = %{version}-%{release}
Provides: java-devel = %{javaver}
Provides: java-devel-openjdk = %{version}
Provides: java-sdk = %{javaver}
Provides: java-sdk-%{javaver} = %{version}
Provides: java-sdk-%{javaver}-openjdk = %{version}
Provides: java-sdk-openjdk = %{version}
+Obsoletes: java-10-openjdk-devel < %{version}-%{release}
%description devel
The OpenJDK %{featurever} development tools.
@@ -388,6 +396,8 @@
Summary: JMods for OpenJDK %{featurever}
Group: Development/Languages/Java
Requires: %{name}-devel = %{version}-%{release}
+Provides: java-10-openjdk-jmods = %{version}-%{release}
+Obsoletes: java-10-openjdk-jmods < %{version}-%{release}
%description jmods
The JMods for OpenJDK %{featurever}.
@@ -396,6 +406,8 @@
Summary: OpenJDK %{featurever} Demos
Group: Development/Languages/Java
Requires: %{name} = %{version}-%{release}
+Provides: java-10-openjdk-demo = %{version}-%{release}
+Obsoletes: java-10-openjdk-demo < %{version}-%{release}
%description demo
The OpenJDK %{featurever} demos.
@@ -404,6 +416,8 @@
Summary: OpenJDK %{featurever} Source Bundle
Group: Development/Languages/Java
Requires: %{name} = %{version}-%{release}
+Provides: java-10-openjdk-src = %{version}-%{release}
+Obsoletes: java-10-openjdk-src < %{version}-%{release}
%description src
The OpenJDK %{featurever} source bundle.
@@ -418,7 +432,9 @@
Requires(postun): update-alternatives
# Standard JPackage javadoc provides.
Provides: java-%{javaver}-javadoc = %{version}-%{release}
+Provides: java-10-openjdk-javadoc = %{version}-%{release}
Provides: java-javadoc = %{version}-%{release}
+Obsoletes: java-10-openjdk-javadoc < %{version}-%{release}
BuildArch: noarch
%description javadoc
@@ -429,6 +445,8 @@
Group: Development/Languages/Java
Requires: %{name} = %{version}-%{release}
Requires: xprop
+Provides: java-10-openjdk-accessibility = %{version}-%{release}
+Obsoletes: java-10-openjdk-accessibility < %{version}-%{release}
%description accessibility
Enables accessibility support in OpenJDK %{featurever} by using java-atk-wrapper. This allows
@@ -487,6 +505,8 @@
%patch20 -p1
+%patch30 -p1
+
# s390 build fixes
%ifarch s390
@@ -986,7 +1006,8 @@
--slave %{_mandir}/man1/rmid.1$ext rmid.1$ext \
%{_mandir}/man1/rmid-%{sdklnk}.1$ext \
--slave %{_mandir}/man1/rmiregistry.1$ext rmiregistry.1$ext \
- %{_mandir}/man1/rmiregistry-%{sdklnk}.1$ext
+ %{_mandir}/man1/rmiregistry-%{sdklnk}.1$ext \
+ || :
update-alternatives \
--install %{_jvmdir}/jre-openjdk \
@@ -1114,7 +1135,8 @@
--slave %{_mandir}/man1/unpack200.1$ext unpack200.1$ext \
%{_mandir}/man1/unpack200-%{sdklnk}.1$ext \
--slave %{_datadir}/applications/jconsole.desktop jconsole.desktop \
- %{_jvmdir}/%{sdkdir}/lib/desktop/jconsole.desktop
+ %{_jvmdir}/%{sdkdir}/lib/desktop/jconsole.desktop \
+ || :
update-alternatives \
--install %{_jvmdir}/java-openjdk \
@@ -1132,14 +1154,26 @@
fi
%post javadoc
-update-alternatives \
+# in some settings, the %{_javadocdir}/%{sdklnk}/api does not exist
+# and the update-alternatives call ends up in error. So, filter this
+# cases out.
+if [ -d %{_javadocdir}/%{sdklnk}/api ]
+then
+ update-alternatives \
--install %{_javadocdir}/java javadocdir %{_javadocdir}/%{sdklnk}/api \
%{priority}
+fi
%postun javadoc
if [ $1 -eq 0 ]
then
+# in some settings, the %{_javadocdir}/%{sdklnk}/api does not exist
+# and the update-alternatives call ends up in error. So, filter this
+# cases out.
+ if [ -d %{_javadocdir}/%{sdklnk}/api ]
+ then
update-alternatives --remove javadocdir %{_javadocdir}/%{sdklnk}/api
+ fi
fi
%files
++++++ JDK-8208602.patch ++++++
# HG changeset patch
# User weijun
# Date 1533101708 -28800
# Node ID 9d92ff04a29c12a5d47f2ca4e772f7716bfdb8ff
# Parent b6e0bfe4a6ec5d8d9d9476c05627dfb47f2263e1
8208602: Cannot read PEM X.509 cert if there is whitespace after the header or footer
Reviewed-by: xuelei
diff -r b6e0bfe4a6ec -r 9d92ff04a29c src/java.base/share/classes/sun/security/provider/X509Factory.java
--- a/src/java.base/share/classes/sun/security/provider/X509Factory.java Wed Aug 01 01:40:44 2018 -0400
+++ b/src/java.base/share/classes/sun/security/provider/X509Factory.java Wed Aug 01 13:35:08 2018 +0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2018, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -635,7 +635,8 @@
if (next != '\r') footer.append((char)next);
}
- checkHeaderFooter(header.toString(), footer.toString());
+ checkHeaderFooter(header.toString().stripTrailing(),
+ footer.toString().stripTrailing());
try {
return Base64.getDecoder().decode(data.toByteArray());
diff -r b6e0bfe4a6ec -r 9d92ff04a29c test/jdk/sun/security/provider/X509Factory/BadPem.java
--- a/test/jdk/sun/security/provider/X509Factory/BadPem.java Wed Aug 01 01:40:44 2018 -0400
+++ b/test/jdk/sun/security/provider/X509Factory/BadPem.java Wed Aug 01 13:35:08 2018 +0800
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2018, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -23,14 +23,13 @@
/*
* @test
- * @bug 8074935
- * @summary jdk8 keytool doesn't validate pem files for RFC 1421 correctness, as jdk7 did
+ * @bug 8074935 8208602
+ * @summary X.509 cert PEM format read
* @modules java.base/sun.security.provider
*/
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
-import java.io.FileOutputStream;
import java.io.PrintStream;
import java.security.KeyStore;
import java.security.cert.CertificateException;
@@ -49,10 +48,12 @@
String pass = "passphrase";
String alias = "dummy";
+ CertificateFactory cf = CertificateFactory.getInstance("X.509");
KeyStore keyStore = KeyStore.getInstance("JKS");
keyStore.load(new FileInputStream(ks), pass.toCharArray());
byte[] cert = keyStore.getCertificate(alias).getEncoded();
+ // 8074935
ByteArrayOutputStream bout = new ByteArrayOutputStream();
PrintStream pout = new PrintStream(bout);
byte[] CRLF = new byte[] {'\r', '\n'};
@@ -64,14 +65,20 @@
}
pout.println(X509Factory.END_CERT);
- CertificateFactory cf = CertificateFactory.getInstance("X.509");
-
try {
cf.generateCertificate(new ByteArrayInputStream(bout.toByteArray()));
throw new Exception("Should fail");
} catch (CertificateException e) {
// Good
}
+
+ // 8208602
+ bout.reset();
+ pout.println(X509Factory.BEGIN_CERT + " ");
+ pout.println(Base64.getMimeEncoder().encodeToString(cert));
+ pout.println(X509Factory.END_CERT + " ");
+
+ cf.generateCertificate(new ByteArrayInputStream(bout.toByteArray()));
}
}