[JBoss JIRA] (ELY-1301) Pem.parsePemX509Certificate() hangs on IBM JDK
by Peter Palaga (JIRA)
Peter Palaga created ELY-1301:
---------------------------------
Summary: Pem.parsePemX509Certificate() hangs on IBM JDK
Key: ELY-1301
URL: https://issues.jboss.org/browse/ELY-1301
Project: WildFly Elytron
Issue Type: Bug
Reporter: Peter Palaga
Assignee: Darran Lofthouse
Add a test like this to `PemTest`:
{code}
@Test
public void testParsePemX509CertificateCacert() throws Exception {
URL url = PemTest.class.getResource("/ca/cacert.pem");
byte[] bytes = Files.readAllBytes(Paths.get(url.toURI()));
assertNotNull(Pem.parsePemX509Certificate(CodePointIterator.ofUtf8Bytes(bytes)));
}
{code}
Run the test with IBM JDK
{code}
export JAVA_HOME=path/to/ibm/java8
$JAVA_HOME/bin/java -version
java version "1.8.0"
Java(TM) SE Runtime Environment (build pxa6480sr3fp12-20160919_01(SR3 FP12))
IBM J9 VM (build 2.8, JRE 1.8.0 Linux amd64-64 Compressed References 20160915_318796 (JIT enabled, AOT enabled)
J9VM - R28_Java8_SR3_20160915_0912_B318796
JIT - tr.r14.java.green_20160818_122998
GC - R28_Java8_SR3_20160915_0912_B318796_CMPRSS
J9CL - 20160915_318796)
JCL - 20160914_01 based on Oracle jdk8u101-b13
mvn clean test -Dtest=PemTest#testParsePemX509CertificateCacert
{code}
Expected: The test should pass on IBM JDK just as it passes on Oracle/OpenJDK
Actual: The hangs on IBM JDK
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 9 months
[JBoss JIRA] (ELY-1300) Pem.parsePemX509Certificate() cannot parse files with non-PEM content
by Peter Palaga (JIRA)
[ https://issues.jboss.org/browse/ELY-1300?page=com.atlassian.jira.plugin.s... ]
Peter Palaga updated ELY-1300:
------------------------------
Description:
Add a test like this to `PemTest`:
{code}
@Test
public void testParsePemX509Certificate01() throws Exception {
URL url = PemTest.class.getResource("/ca/certs/01.pem");
byte[] bytes = Files.readAllBytes(Paths.get(url.toURI()));
assertNotNull(Pem.parsePemX509Certificate(CodePointIterator.ofUtf8Bytes(bytes)));
}
{code}
Note that {{ca/certs/01.pem}} should start with non-PEM content
{code}
Certificate:
Data:
...
{code}
followed by the PEM content:
{code}
-----BEGIN CERTIFICATE-----
{code}
Run the test
{code}
mvn clean test -Dtest=PemTest#testParsePemX509Certificate01
{code}
Expected: Not quite sure if the parser should accept this. In any case, the following code works on Oracle/OpenJDK (while it does not on IBM JDK):
{code}
CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509");
InputStream is = X509EvidenceVerificationSuiteChild.class.getResourceAsStream("/ca/certs/01.pem");
Assert.assertNotNull((X509Certificate) certificateFactory.generateCertificate(is));
{code}
Actual:
{code}
testParsePemX509Certificate01(org.wildfly.security.util.PemTest) Time elapsed: 0.116 sec <<< ERROR!
java.lang.IllegalArgumentException: ELY03010: Malformed PEM content at offset 1
at org.wildfly.security.pem.Pem.parsePemContent(Pem.java:79)
at org.wildfly.security.pem.Pem.parsePemX509Certificate(Pem.java:272)
at org.wildfly.security.util.PemTest.testParsePemX509Certificate01(PemTest.java:57)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:367)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:274)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:161)
at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:290)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:242)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:121)
{code}
was:
Add a test like this to `PemTest`:
{code}
@Test
public void testParsePemX509Certificate01() throws Exception {
URL url = PemTest.class.getResource("/ca/certs/01.pem");
byte[] bytes = Files.readAllBytes(Paths.get(url.toURI()));
assertNotNull(Pem.parsePemX509Certificate(CodePointIterator.ofUtf8Bytes(bytes)));
}
{code}
Note that {{ca/certs/01.pem}} should start with non-PEM content
{code}
Certificate:
Data:
...
{code}
followed by
{code}
-----BEGIN CERTIFICATE-----
{code}
Run the test
{code}
mvn clean test -Dtest=PemTest#testParsePemX509Certificate01
{code}
Expected: Not quite sure if the parser should accept this. In any case, the following code works on Oracle/OpenJDK (while it does not on IBM JDK):
{code}
CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509");
InputStream is = X509EvidenceVerificationSuiteChild.class.getResourceAsStream("/ca/certs/01.pem");
Assert.assertNotNull((X509Certificate) certificateFactory.generateCertificate(is));
{code}
Actual:
{code}
testParsePemX509Certificate01(org.wildfly.security.util.PemTest) Time elapsed: 0.116 sec <<< ERROR!
java.lang.IllegalArgumentException: ELY03010: Malformed PEM content at offset 1
at org.wildfly.security.pem.Pem.parsePemContent(Pem.java:79)
at org.wildfly.security.pem.Pem.parsePemX509Certificate(Pem.java:272)
at org.wildfly.security.util.PemTest.testParsePemX509Certificate01(PemTest.java:57)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:367)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:274)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:161)
at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:290)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:242)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:121)
{code}
> Pem.parsePemX509Certificate() cannot parse files with non-PEM content
> ---------------------------------------------------------------------
>
> Key: ELY-1300
> URL: https://issues.jboss.org/browse/ELY-1300
> Project: WildFly Elytron
> Issue Type: Bug
> Reporter: Peter Palaga
> Assignee: Darran Lofthouse
>
> Add a test like this to `PemTest`:
> {code}
> @Test
> public void testParsePemX509Certificate01() throws Exception {
> URL url = PemTest.class.getResource("/ca/certs/01.pem");
> byte[] bytes = Files.readAllBytes(Paths.get(url.toURI()));
> assertNotNull(Pem.parsePemX509Certificate(CodePointIterator.ofUtf8Bytes(bytes)));
> }
> {code}
> Note that {{ca/certs/01.pem}} should start with non-PEM content
> {code}
> Certificate:
> Data:
> ...
> {code}
> followed by the PEM content:
> {code}
> -----BEGIN CERTIFICATE-----
> {code}
> Run the test
> {code}
> mvn clean test -Dtest=PemTest#testParsePemX509Certificate01
> {code}
> Expected: Not quite sure if the parser should accept this. In any case, the following code works on Oracle/OpenJDK (while it does not on IBM JDK):
> {code}
> CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509");
> InputStream is = X509EvidenceVerificationSuiteChild.class.getResourceAsStream("/ca/certs/01.pem");
> Assert.assertNotNull((X509Certificate) certificateFactory.generateCertificate(is));
> {code}
> Actual:
> {code}
> testParsePemX509Certificate01(org.wildfly.security.util.PemTest) Time elapsed: 0.116 sec <<< ERROR!
> java.lang.IllegalArgumentException: ELY03010: Malformed PEM content at offset 1
> at org.wildfly.security.pem.Pem.parsePemContent(Pem.java:79)
> at org.wildfly.security.pem.Pem.parsePemX509Certificate(Pem.java:272)
> at org.wildfly.security.util.PemTest.testParsePemX509Certificate01(PemTest.java:57)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:367)
> at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:274)
> at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
> at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:161)
> at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:290)
> at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:242)
> at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:121)
> {code}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 9 months
[JBoss JIRA] (ELY-1300) Pem.parsePemX509Certificate() cannot parse files with non-PEM content
by Peter Palaga (JIRA)
Peter Palaga created ELY-1300:
---------------------------------
Summary: Pem.parsePemX509Certificate() cannot parse files with non-PEM content
Key: ELY-1300
URL: https://issues.jboss.org/browse/ELY-1300
Project: WildFly Elytron
Issue Type: Bug
Reporter: Peter Palaga
Assignee: Darran Lofthouse
Add a test like this to `PemTest`:
{code}
@Test
public void testParsePemX509Certificate01() throws Exception {
URL url = PemTest.class.getResource("/ca/certs/01.pem");
byte[] bytes = Files.readAllBytes(Paths.get(url.toURI()));
assertNotNull(Pem.parsePemX509Certificate(CodePointIterator.ofUtf8Bytes(bytes)));
}
{code}
Note that {{ca/certs/01.pem}} should start with non-PEM content
{code}
Certificate:
Data:
...
{code}
followed by
{code}
-----BEGIN CERTIFICATE-----
{code}
Run the test
{code}
mvn clean test -Dtest=PemTest#testParsePemX509Certificate01
{code}
Expected: Not quite sure if the parser should accept this. In any case, the following code works on Oracle/OpenJDK (while it does not on IBM JDK):
{code}
CertificateFactory certificateFactory = CertificateFactory.getInstance("X.509");
InputStream is = X509EvidenceVerificationSuiteChild.class.getResourceAsStream("/ca/certs/01.pem");
Assert.assertNotNull((X509Certificate) certificateFactory.generateCertificate(is));
{code}
Actual:
{code}
testParsePemX509Certificate01(org.wildfly.security.util.PemTest) Time elapsed: 0.116 sec <<< ERROR!
java.lang.IllegalArgumentException: ELY03010: Malformed PEM content at offset 1
at org.wildfly.security.pem.Pem.parsePemContent(Pem.java:79)
at org.wildfly.security.pem.Pem.parsePemX509Certificate(Pem.java:272)
at org.wildfly.security.util.PemTest.testParsePemX509Certificate01(PemTest.java:57)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:367)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:274)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:161)
at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:290)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:242)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:121)
{code}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 9 months
[JBoss JIRA] (WFCORE-3088) Alias from dependent credential store is not avalaible on server start
by Jan Kalina (JIRA)
[ https://issues.jboss.org/browse/WFCORE-3088?page=com.atlassian.jira.plugi... ]
Jan Kalina moved JBEAP-12276 to WFCORE-3088:
--------------------------------------------
Project: WildFly Core (was: JBoss Enterprise Application Platform)
Key: WFCORE-3088 (was: JBEAP-12276)
Workflow: GIT Pull Request workflow (was: CDW with loose statuses v1)
Component/s: Security
(was: Security)
Affects Version/s: 3.0.0.Beta28
(was: 7.1.0.ER1)
> Alias from dependent credential store is not avalaible on server start
> ----------------------------------------------------------------------
>
> Key: WFCORE-3088
> URL: https://issues.jboss.org/browse/WFCORE-3088
> Project: WildFly Core
> Issue Type: Bug
> Components: Security
> Affects Versions: 3.0.0.Beta28
> Reporter: Jan Kalina
> Assignee: Jan Kalina
> Priority: Critical
>
> Testing BouncyCastle external store. Intermittently (25% in lab, 0% locally) it happens alias from dependent credential store is not avalaible on server start.
> Could that be problem of "late" required service start?
> Although, I don't see similar problem with default JKES credential store, neither PKCS11 external credential store. PKCS11 store is however special case, because is loaded once per jvm.
> Could that be problem of external credential store with file based keystore?
> [1] https://jenkins.hosts.mwqe.eng.bos.redhat.com/hudson/view/EAP7/view/EAP7-...
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 9 months
[JBoss JIRA] (WFCORE-3087) add-user.sh duplicates user records in "mgmt-users.properties" file if special character is used in user name
by Farah Juma (JIRA)
[ https://issues.jboss.org/browse/WFCORE-3087?page=com.atlassian.jira.plugi... ]
Farah Juma moved JBEAP-12275 to WFCORE-3087:
--------------------------------------------
Project: WildFly Core (was: JBoss Enterprise Application Platform)
Key: WFCORE-3087 (was: JBEAP-12275)
Workflow: GIT Pull Request workflow (was: CDW with loose statuses v1)
Component/s: Security
(was: Security)
Affects Version/s: (was: 7.1.0.DR7)
> add-user.sh duplicates user records in "mgmt-users.properties" file if special character is used in user name
> -------------------------------------------------------------------------------------------------------------
>
> Key: WFCORE-3087
> URL: https://issues.jboss.org/browse/WFCORE-3087
> Project: WildFly Core
> Issue Type: Bug
> Components: Security
> Reporter: Farah Juma
> Assignee: Farah Juma
> Priority: Minor
> Labels: eap7.1.0-defer, legacy
>
> *Description of problem:*
> add-user.sh duplicates user records in "mgmt-users.properties" file if special character is used in user name.
> *How reproducible:*
> Always
> *Steps to Reproduce:*
> # cd ${JBOSS_HOME}/bin
> # ./add-user.sh -u "ádmin" -p Pes1234* -s
> # ./add-user.sh -u "admín" -p Pes1234* -s
> # ./add-user.sh -u "user1" -p Pes1234* -s
> # ./add-user.sh -u "user2" -p Pes1234* -s
> # cat ../standalone/configuration/mgmt-users.properties
> *Actual results:*
> {noformat}
> ...
> ádmin=add08a6a96a2470830558e37e7cf5894
> admín=6702e36900191d0a5438075e9298c950
> ádmin=add08a6a96a2470830558e37e7cf5894
> admín=6702e36900191d0a5438075e9298c950
> ádmin=add08a6a96a2470830558e37e7cf5894
> user1=f111b15c70bc1db3637e0b1dc6848b74
> admín=6702e36900191d0a5438075e9298c950
> user2=6671636ed99ff984187cd70a159df9af
> ádmin=add08a6a96a2470830558e37e7cf5894
> ...
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 9 months
[JBoss JIRA] (JGRP-2205) DISCARD ignores the DONT_LOOPBACK transient flag
by Dan Berindei (JIRA)
Dan Berindei created JGRP-2205:
----------------------------------
Summary: DISCARD ignores the DONT_LOOPBACK transient flag
Key: JGRP-2205
URL: https://issues.jboss.org/browse/JGRP-2205
Project: JGroups
Issue Type: Bug
Affects Versions: 4.0.4
Reporter: Dan Berindei
Assignee: Bela Ban
When {{discard_all = true}}, {{DISCARD}} does its own loopback, and doesn't check for {{DONT_LOOPBACK}} like {{TP}}. It always sends the message back up, even if {{excludeItself = false}}.
If possible, {{DISCARD}} should just set the message destination to the local address and pass the message down. That way, {{TP}} would decide make the loopback decision, and using the {{TP}} thread pool would also make the thread name nicer in the logs. (Currently the thread name is {{Thread-n}}, which means searching for the test name in our test suite's log misses some messages.)
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 9 months
[JBoss JIRA] (DROOLS-1670) FEEL expression 1 ++++++ 2 passes with result 3
by Tibor Zimányi (JIRA)
Tibor Zimányi created DROOLS-1670:
-------------------------------------
Summary: FEEL expression 1 ++++++ 2 passes with result 3
Key: DROOLS-1670
URL: https://issues.jboss.org/browse/DROOLS-1670
Project: Drools
Issue Type: Bug
Components: dmn engine
Affects Versions: 7.1.0.Final
Reporter: Tibor Zimányi
Assignee: Edson Tirelli
Priority: Minor
When evaluating FEEL expression "1 ++++++ 2", the result is 3. This is grammatically correct, but it doesn't look good. I will provide PR with a reproducer.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 9 months