Skip to content

Commit 46192d8

Browse files
authored
Merge pull request #315 from padelsbach/crl-generation
Add CRL generation capability
2 parents 4d68718 + 873ed6c commit 46192d8

17 files changed

Lines changed: 2795 additions & 10 deletions

File tree

IDE/Android/app/src/main/cpp/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -350,6 +350,7 @@ add_library(wolfssljni SHARED
350350
${wolfssljni_DIR}/native/com_wolfssl_WolfSSLCertManager.c
351351
${wolfssljni_DIR}/native/com_wolfssl_WolfSSLCertRequest.c
352352
${wolfssljni_DIR}/native/com_wolfssl_WolfSSLCertificate.c
353+
${wolfssljni_DIR}/native/com_wolfssl_WolfSSLCRL.c
353354
${wolfssljni_DIR}/native/com_wolfssl_WolfSSLContext.c
354355
${wolfssljni_DIR}/native/com_wolfssl_WolfSSLSession.c
355356
${wolfssljni_DIR}/native/com_wolfssl_WolfSSLX509Name.c

IDE/WIN/wolfssljni.vcxproj

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@
4242
<ClCompile Include="..\..\native\com_wolfssl_WolfSSLCertificate.c" />
4343
<ClCompile Include="..\..\native\com_wolfssl_WolfSSLCertManager.c" />
4444
<ClCompile Include="..\..\native\com_wolfssl_WolfSSLCertRequest.c" />
45+
<ClCompile Include="..\..\native\com_wolfssl_WolfSSLCRL.c" />
4546
<ClCompile Include="..\..\native\com_wolfssl_WolfSSLContext.c" />
4647
<ClCompile Include="..\..\native\com_wolfssl_WolfSSLSession.c" />
4748
<ClCompile Include="..\..\native\com_wolfssl_WolfSSLX509Name.c" />
@@ -57,6 +58,7 @@
5758
<ClInclude Include="..\..\native\com_wolfssl_WolfSSLCertificate.h" />
5859
<ClInclude Include="..\..\native\com_wolfssl_WolfSSLCertManager.h" />
5960
<ClInclude Include="..\..\native\com_wolfssl_WolfSSLCertRequest.h" />
61+
<ClInclude Include="..\..\native\com_wolfssl_WolfSSLCRL.h" />
6062
<ClInclude Include="..\..\native\com_wolfssl_WolfSSLContext.h" />
6163
<ClInclude Include="..\..\native\com_wolfssl_WolfSSLSession.h" />
6264
<ClInclude Include="..\..\native\com_wolfssl_WolfSSLX509Name.h" />

IDE/WIN/wolfssljni.vcxproj.filters

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,9 @@
3636
<ClCompile Include="..\..\native\com_wolfssl_WolfSSLCertRequest.c">
3737
<Filter>Source Files</Filter>
3838
</ClCompile>
39+
<ClCompile Include="..\..\native\com_wolfssl_WolfSSLCRL.c">
40+
<Filter>Source Files</Filter>
41+
</ClCompile>
3942
<ClCompile Include="..\..\native\com_wolfssl_WolfSSLContext.c">
4043
<Filter>Source Files</Filter>
4144
</ClCompile>
@@ -80,6 +83,9 @@
8083
<ClInclude Include="..\..\native\com_wolfssl_WolfSSLCertRequest.h">
8184
<Filter>Header Files</Filter>
8285
</ClInclude>
86+
<ClInclude Include="..\..\native\com_wolfssl_WolfSSLCRL.h">
87+
<Filter>Header Files</Filter>
88+
</ClInclude>
8389
<ClInclude Include="..\..\native\com_wolfssl_WolfSSLContext.h">
8490
<Filter>Header Files</Filter>
8591
</ClInclude>

Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ ifeq ($(LIBDIR),)
1717
LIBDIR=lib
1818
endif
1919

20-
2120
all: build
2221

22+
.PHONY: build
2323
build: java.sh build.xml
24-
@cflags=""; \
24+
@cflags=""; \
2525
if [ "$(ENABLE_PATCHES)" = "1" ]; then \
2626
if [ -n "$(PATCH_DEFINES)" ]; then \
2727
defines="$(PATCH_DEFINES)"; \

build.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,7 @@
182182
<class name="com.wolfssl.WolfSSL"/>
183183
<class name="com.wolfssl.WolfSSLCertManager"/>
184184
<class name="com.wolfssl.WolfSSLCertificate"/>
185+
<class name="com.wolfssl.WolfSSLCRL"/>
185186
<class name="com.wolfssl.WolfSSLContext"/>
186187
<class name="com.wolfssl.WolfSSLSession"/>
187188
<class name="com.wolfssl.WolfSSLX509StoreCtx"/>

java.sh

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,10 +125,25 @@ gcc -Wall -c $fpic $CFLAGS ./native/com_wolfssl_WolfCryptEccKey.c -o ./native/co
125125
gcc -Wall -c $fpic $CFLAGS ./native/com_wolfssl_WolfSSLCertManager.c -o ./native/com_wolfssl_WolfSSLCertManager.o $javaIncludes
126126
gcc -Wall -c $fpic $CFLAGS ./native/com_wolfssl_WolfSSLCertRequest.c -o ./native/com_wolfssl_WolfSSLCertRequest.o $javaIncludes
127127
gcc -Wall -c $fpic $CFLAGS ./native/com_wolfssl_WolfSSLCertificate.c -o ./native/com_wolfssl_WolfSSLCertificate.o $javaIncludes
128+
gcc -Wall -c $fpic $CFLAGS ./native/com_wolfssl_WolfSSLCRL.c -o ./native/com_wolfssl_WolfSSLCRL.o $javaIncludes
128129
gcc -Wall -c $fpic $CFLAGS ./native/com_wolfssl_WolfSSLX509Name.c -o ./native/com_wolfssl_WolfSSLX509Name.o $javaIncludes
129130
gcc -Wall -c $fpic $CFLAGS ./native/com_wolfssl_WolfSSLX509StoreCtx.c -o ./native/com_wolfssl_WolfSSLX509StoreCtx.o $javaIncludes
130131
gcc -Wall -c $fpic $CFLAGS ./native/com_wolfssl_WolfSSLNameConstraints.c -o ./native/com_wolfssl_WolfSSLNameConstraints.o $javaIncludes
131-
gcc -Wall $javaLibs $CFLAGS -o ./lib/$jniLibName ./native/com_wolfssl_WolfSSL.o ./native/com_wolfssl_WolfSSLSession.o ./native/com_wolfssl_WolfSSLContext.o ./native/com_wolfssl_WolfCryptRSA.o ./native/com_wolfssl_WolfCryptECC.o ./native/com_wolfssl_WolfCryptEccKey.o ./native/com_wolfssl_WolfSSLCertManager.o ./native/com_wolfssl_WolfSSLCertRequest.o ./native/com_wolfssl_WolfSSLCertificate.o ./native/com_wolfssl_WolfSSLX509Name.o ./native/com_wolfssl_WolfSSLX509StoreCtx.o ./native/com_wolfssl_WolfSSLNameConstraints.o -L$WOLFSSL_INSTALL_DIR/lib -L$WOLFSSL_INSTALL_DIR/lib64 -l$WOLFSSL_LIBNAME
132+
gcc -Wall $javaLibs $CFLAGS -o ./lib/$jniLibName \
133+
./native/com_wolfssl_WolfSSL.o \
134+
./native/com_wolfssl_WolfSSLSession.o \
135+
./native/com_wolfssl_WolfSSLContext.o \
136+
./native/com_wolfssl_WolfCryptRSA.o \
137+
./native/com_wolfssl_WolfCryptECC.o \
138+
./native/com_wolfssl_WolfCryptEccKey.o \
139+
./native/com_wolfssl_WolfSSLCertManager.o \
140+
./native/com_wolfssl_WolfSSLCertRequest.o \
141+
./native/com_wolfssl_WolfSSLCertificate.o \
142+
./native/com_wolfssl_WolfSSLCRL.o \
143+
./native/com_wolfssl_WolfSSLX509Name.o \
144+
./native/com_wolfssl_WolfSSLX509StoreCtx.o \
145+
./native/com_wolfssl_WolfSSLNameConstraints.o \
146+
-L$WOLFSSL_INSTALL_DIR/lib -L$WOLFSSL_INSTALL_DIR/lib64 -l$WOLFSSL_LIBNAME
132147
if [ $? != 0 ]; then
133148
echo "Error creating native JNI library"
134149
exit 1

native/com_wolfssl_WolfSSL.c

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1025,6 +1025,22 @@ JNIEXPORT jboolean JNICALL Java_com_wolfssl_WolfSSL_FileSystemEnabled
10251025
#endif
10261026
}
10271027

1028+
JNIEXPORT jboolean JNICALL Java_com_wolfssl_WolfSSL_CrlGenerationEnabled
1029+
(JNIEnv* jenv, jclass jcl)
1030+
{
1031+
(void)jenv;
1032+
(void)jcl;
1033+
1034+
#if ((LIBWOLFSSL_VERSION_HEX > 0x05008004) || \
1035+
defined(WOLFSSL_PR9631_PATCH_APPLIED)) && \
1036+
defined(HAVE_CRL) && defined(OPENSSL_EXTRA) && \
1037+
defined(WOLFSSL_CERT_GEN)
1038+
return JNI_TRUE;
1039+
#else
1040+
return JNI_FALSE;
1041+
#endif
1042+
}
1043+
10281044
JNIEXPORT jboolean JNICALL Java_com_wolfssl_WolfSSL_certReqEnabled
10291045
(JNIEnv* jenv, jclass jcl)
10301046
{

native/com_wolfssl_WolfSSL.h

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)