[ 
https://issues.apache.org/jira/browse/CRYPTO-45?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15269490#comment-15269490
 ] 

Chris Nauroth commented on CRYPTO-45:
-------------------------------------

In this documentation, let's please include a note that running the tests 
requires installation of the JCE Unlimited Strength Policy.  I think some 
package maintainers include it automatically, but it's generally not included 
in a stock Oracle JDK download.  For example, the OpenJDK 7 package on my 
CentOS VM came with it.  We can hyperlink to the instructions for installing it.

Without JCE Unlimited Strength, there will be a test failure in 
{{JceCipherTest}}, like this:

{code}
Running org.apache.commons.crypto.cipher.JceCipherTest
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.634 sec <<< 
FAILURE! - in org.apache.commons.crypto.cipher.JceCipherTest
cryptoTest(org.apache.commons.crypto.cipher.JceCipherTest)  Time elapsed: 0.632 
sec  <<< FAILURE!
java.lang.AssertionError: AES failed initialisation - 
java.security.InvalidKeyException: Illegal key size
        at org.junit.Assert.fail(Assert.java:91)
        at 
org.apache.commons.crypto.cipher.AbstractCipherTest.byteBufferTest(AbstractCipherTest.java:107)
        at 
org.apache.commons.crypto.cipher.AbstractCipherTest.cryptoTest(AbstractCipherTest.java:84)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
        at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
        at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
        at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
        at 
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunner.java:79)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:71)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:49)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:283)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:173)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:128)
        at 
org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203)
        at 
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155)
        at 
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
{code}


> Document how to build Commons Crypto
> ------------------------------------
>
>                 Key: CRYPTO-45
>                 URL: https://issues.apache.org/jira/browse/CRYPTO-45
>             Project: Commons Crypto
>          Issue Type: Bug
>          Components: Document
>            Reporter: Benedikt Ritter
>
> While trying to deploy the website I run into this problem:
> {code}
> [INFO] --- maven-antrun-plugin:1.7:run (make) @ commons-crypto ---
> [INFO] Executing tasks
> make:
>      [exec] compiling OSInfo.java
>      [exec] "$JAVA_HOME/bin/javac" -source 1.6 -target 1.6 -d 
> target/jni-classes -sourcepath src/main/java 
> src/main/java/org/apache/commons/crypto/random/OpensslCryptoRandomNative.java
>      [exec] warning: [options] bootstrap class path not set in conjunction 
> with -source 1.6
>      [exec] 1 warning
>      [exec] "$JAVA_HOME/bin/javah" -force -classpath target/jni-classes -o 
> target/jni-classes/org/apache/commons/crypto/random/OpensslCryptoRandomNative.h
>  org.apache.commons.crypto.random.OpensslCryptoRandomNative
>      [exec] gcc -arch x86_64 -Ilib/inc_mac 
> -I/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/include -O2 
> -fPIC -mmacosx-version-min=10.5 -fvisibility=hidden -Ilib/include 
> -I/usr/include -I"src/main/native/org/apache/commons/crypto/" 
> -I"/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/include/darwin"
>  -I"target/jni-classes/org/apache/commons/crypto/cipher" 
> -I"target/jni-classes/org/apache/commons/crypto/random" -c 
> src/main/native/org/apache/commons/crypto/random/OpensslCryptoRandomNative.c 
> -o target/commons-crypto-1.0.0-SNAPSHOT-Mac-x86_64/OpensslCryptoRandom.o
>      [exec] In file included from 
> src/main/native/org/apache/commons/crypto/random/OpensslCryptoRandomNative.c:19:
>      [exec] In file included from 
> src/main/native/org/apache/commons/crypto/random/org_apache_commons_crypto_random.h:22:
>      [exec] 
> src/main/native/org/apache/commons/crypto/org_apache_commons_crypto.h:196:10: 
> fatal error: 'openssl/aes.h' file not found
>      [exec] #include <openssl/aes.h>
>      [exec]          ^
>      [exec] 1 error generated.
>      [exec] make: *** 
> [target/commons-crypto-1.0.0-SNAPSHOT-Mac-x86_64/OpensslCryptoRandom.o] Error 
> 1
> {code}
> I'm pretty lost, since I don't know c programming. Would be good to have some 
> documentation on how to set up the development environment (on Linux/Mac 
> OS/Windows) for building crypto.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to