Skip to content

Commit 2b15c8d

Browse files
authored
Merge pull request #25 from xybei/master
Optimize pom.xml & Some fixes
2 parents debdf38 + 0ab4732 commit 2b15c8d

4 files changed

Lines changed: 18 additions & 64 deletions

File tree

pom.xml

Lines changed: 8 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,6 @@
1919
</properties>
2020

2121
<dependencies>
22-
<dependency>
23-
<groupId>org.apache.maven.plugins</groupId>
24-
<artifactId>maven-compiler-plugin</artifactId>
25-
<version>3.8.1</version>
26-
</dependency>
27-
<dependency>
28-
<groupId>org.apache.maven.plugins</groupId>
29-
<artifactId>maven-jar-plugin</artifactId>
30-
<version>3.2.0</version>
31-
</dependency>
3222
<dependency>
3323
<groupId>org.junit.jupiter</groupId>
3424
<artifactId>junit-jupiter-params</artifactId>
@@ -53,7 +43,8 @@
5343
</property>
5444
</activation>
5545
<properties>
56-
<lib_name>liboqs-jni.jnilib</lib_name>
46+
<lib_name>liboqs-jni</lib_name>
47+
<lib_name_ext>jnilib</lib_name_ext>
5748
<liboqs.include.dir>/usr/local/include</liboqs.include.dir>
5849
<liboqs.lib.dir>/usr/local/lib</liboqs.lib.dir>
5950
<java.os.include>-I${JAVA_HOME}/include -I${JAVA_HOME}/include/darwin</java.os.include>
@@ -69,7 +60,8 @@
6960
</property>
7061
</activation>
7162
<properties>
72-
<lib_name>liboqs-jni.so</lib_name>
63+
<lib_name>liboqs-jni</lib_name>
64+
<lib_name_ext>so</lib_name_ext>
7365
<liboqs.include.dir>/usr/local/include</liboqs.include.dir>
7466
<liboqs.lib.dir>/usr/local/lib</liboqs.lib.dir>
7567
<java.os.include>-I${JAVA_HOME}/include -I${JAVA_HOME}/include/linux</java.os.include>
@@ -84,7 +76,7 @@
8476
<artifactId>maven-surefire-plugin</artifactId>
8577
<version>2.22.0</version>
8678
<configuration>
87-
<argLine>-Xss10M -Djava.library.path=${basedir}/src/main/resources/</argLine>
79+
<argLine>-Xss10M -Djava.library.path=${project.build.outputDirectory}</argLine>
8880
</configuration>
8981
</plugin>
9082
<plugin>
@@ -95,23 +87,6 @@
9587
<target>1.8</target>
9688
</configuration>
9789
</plugin>
98-
<plugin>
99-
<artifactId>maven-antrun-plugin</artifactId>
100-
<version>3.0.0</version>
101-
<executions>
102-
<execution>
103-
<phase>initialize</phase>
104-
<configuration>
105-
<target>
106-
<mkdir dir="${basedir}/src/main/resources/"/>
107-
</target>
108-
</configuration>
109-
<goals>
110-
<goal>run</goal>
111-
</goals>
112-
</execution>
113-
</executions>
114-
</plugin>
11590
<plugin>
11691
<groupId>org.codehaus.mojo</groupId>
11792
<artifactId>native-maven-plugin</artifactId>
@@ -140,15 +115,15 @@
140115
<compilerStartOption>-O3</compilerStartOption>
141116
<compilerStartOption>-I${liboqs.include.dir}</compilerStartOption>
142117
</compilerStartOptions>
143-
<linkerOutputDirectory>target</linkerOutputDirectory>
118+
<linkerOutputDirectory>${project.build.outputDirectory}</linkerOutputDirectory>
144119
<linkerExecutable>gcc</linkerExecutable>
145120
<linkerStartOptions>
146121
<linkerStartOption>-shared</linkerStartOption>
147122
<linkerStartOption>-L${liboqs.lib.dir}</linkerStartOption>
148123
</linkerStartOptions>
149-
<linkerFinalName/>
124+
<linkerFinalName>${lib_name}</linkerFinalName>
125+
<linkerFinalNameExt>${lib_name_ext}</linkerFinalNameExt>
150126
<linkerEndOptions>
151-
<linkerEndOption>-o ${basedir}/src/main/resources/${lib_name}</linkerEndOption>
152127
<linkerEndOption>-loqs</linkerEndOption>
153128
</linkerEndOptions>
154129
</configuration>
@@ -164,27 +139,6 @@
164139
</execution>
165140
</executions>
166141
</plugin>
167-
<plugin>
168-
<artifactId>maven-resources-plugin</artifactId>
169-
<version>3.1.0</version>
170-
<executions>
171-
<execution>
172-
<id>copy-resources</id>
173-
<phase>process-classes</phase>
174-
<goals>
175-
<goal>copy-resources</goal>
176-
</goals>
177-
<configuration>
178-
<outputDirectory>${project.build.outputDirectory}</outputDirectory>
179-
<resources>
180-
<resource>
181-
<directory>${basedir}/src/main/resources/</directory>
182-
</resource>
183-
</resources>
184-
</configuration>
185-
</execution>
186-
</executions>
187-
</plugin>
188142
</plugins>
189143
</build>
190144
</project>

src/main/c/KeyEncapsulation.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,8 @@ JNIEXPORT jint JNICALL Java_org_openquantumsafe_KeyEncapsulation_generate_1keypa
105105
// Invoke liboqs KEM keypair generation function
106106
OQS_STATUS rv_ = OQS_KEM_keypair(kem, (uint8_t*) public_key_native, (uint8_t*) secret_key_native);
107107

108-
(*env)->ReleaseByteArrayElements(env, jpublic_key, public_key_native, JNI_COMMIT);
109-
(*env)->ReleaseByteArrayElements(env, jsecret_key, secret_key_native, JNI_COMMIT);
108+
(*env)->ReleaseByteArrayElements(env, jpublic_key, public_key_native, 0);
109+
(*env)->ReleaseByteArrayElements(env, jsecret_key, secret_key_native, 0);
110110
return (rv_ == OQS_SUCCESS) ? 0 : -1;
111111
}
112112

@@ -129,8 +129,8 @@ JNIEXPORT jint JNICALL Java_org_openquantumsafe_KeyEncapsulation_encap_1secret
129129

130130
// Release C public_key
131131
(*env)->ReleaseByteArrayElements(env, jpublic_key, public_key, JNI_ABORT);
132-
(*env)->ReleaseByteArrayElements(env, jciphertext, ciphertext, JNI_COMMIT);
133-
(*env)->ReleaseByteArrayElements(env, jshared_secret, shared_secret, JNI_COMMIT);
132+
(*env)->ReleaseByteArrayElements(env, jciphertext, ciphertext, 0);
133+
(*env)->ReleaseByteArrayElements(env, jshared_secret, shared_secret, 0);
134134
return (rv_ == OQS_SUCCESS) ? 0 : -1;
135135
}
136136

@@ -150,7 +150,7 @@ JNIEXPORT jint JNICALL Java_org_openquantumsafe_KeyEncapsulation_decap_1secret
150150
OQS_STATUS rv_ = OQS_KEM_decaps(kem, (uint8_t*) shared_secret_native, (uint8_t*) ciphertext_native, (uint8_t*) secret_key_native);
151151

152152
// release memory
153-
(*env)->ReleaseByteArrayElements(env, jshared_secret, shared_secret_native, JNI_COMMIT);
153+
(*env)->ReleaseByteArrayElements(env, jshared_secret, shared_secret_native, 0);
154154
(*env)->ReleaseByteArrayElements(env, jciphertext, ciphertext_native, JNI_ABORT);
155155
(*env)->ReleaseByteArrayElements(env, jsecret_key, secret_key_native, JNI_ABORT);
156156
return (rv_ == OQS_SUCCESS) ? 0 : -1;

src/main/c/Signature.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -101,8 +101,8 @@ JNIEXPORT jint JNICALL Java_org_openquantumsafe_Signature_generate_1keypair
101101
// Invoke liboqs sig keypair generation function
102102
OQS_STATUS rv_ = OQS_SIG_keypair(sig, (uint8_t*) public_key_native, (uint8_t*) secret_key_native);
103103

104-
(*env)->ReleaseByteArrayElements(env, jpublic_key, public_key_native, JNI_COMMIT);
105-
(*env)->ReleaseByteArrayElements(env, jsecret_key, secret_key_native, JNI_COMMIT);
104+
(*env)->ReleaseByteArrayElements(env, jpublic_key, public_key_native, 0);
105+
(*env)->ReleaseByteArrayElements(env, jsecret_key, secret_key_native, 0);
106106
return (rv_ == OQS_SUCCESS) ? 0 : -1;
107107
}
108108

@@ -140,7 +140,7 @@ JNIEXPORT jint JNICALL Java_org_openquantumsafe_Signature_sign
140140
(*env)->SetObjectField(env, sig_len_obj, value_fid, jlong_obj);
141141

142142
// Release C memory
143-
(*env)->ReleaseByteArrayElements(env, jsignature, signature_native, JNI_COMMIT);
143+
(*env)->ReleaseByteArrayElements(env, jsignature, signature_native, 0);
144144
(*env)->ReleaseByteArrayElements(env, jmessage, message_native, JNI_ABORT);
145145
(*env)->ReleaseByteArrayElements(env, jsecret_key, secret_key_native, JNI_ABORT);
146146

src/main/java/org/openquantumsafe/Pair.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ public Pair(L left, R right) {
2121

2222
@Override
2323
public boolean equals(Object o) {
24-
if (!(o instanceof Pair)) return false;
25-
Pair pairo = (Pair) o;
24+
if (!(o instanceof Pair<?, ?>)) return false;
25+
Pair<?, ?> pairo = (Pair<?, ?>) o;
2626
return this.left.equals(pairo.getLeft()) && this.right.equals(pairo.getRight());
2727
}
2828

0 commit comments

Comments
 (0)