mturk 2005/06/09 23:25:08
Modified: jni/java/org/apache/tomcat/jni SSLContext.java
jni/native/include ssl_private.h
jni/native/src sslcontext.c
Log:
Call certificate chain with option to skip the leading server certificate
Revision Changes Path
1.16 +5 -2
jakarta-tomcat-connectors/jni/java/org/apache/tomcat/jni/SSLContext.java
Index: SSLContext.java
===================================================================
RCS file:
/home/cvs/jakarta-tomcat-connectors/jni/java/org/apache/tomcat/jni/SSLContext.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- SSLContext.java 9 Jun 2005 09:13:55 -0000 1.15
+++ SSLContext.java 10 Jun 2005 06:25:08 -0000 1.16
@@ -166,8 +166,11 @@
* confused in this situation.
* @param ctx Server or Client context to use.
* @param file File of PEM-encoded Server CA Certificates.
+ * @param skipfirst Skip first certificate if chain file is inside
+ * certificate file.
*/
- public static native boolean setCertificateChainFile(long ctx, String
file);
+ public static native boolean setCertificateChainFile(long ctx, String
file,
+ boolean skipfirst);
/**
* Set Certificate
1.21 +1 -2
jakarta-tomcat-connectors/jni/native/include/ssl_private.h
Index: ssl_private.h
===================================================================
RCS file:
/home/cvs/jakarta-tomcat-connectors/jni/native/include/ssl_private.h,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- ssl_private.h 8 Jun 2005 07:15:57 -0000 1.20
+++ ssl_private.h 10 Jun 2005 06:25:08 -0000 1.21
@@ -169,7 +169,6 @@
/* we are one or the other */
int mode;
- const char *cert_chain;
/* certificate revocation list */
X509_STORE *crl;
const char *cert_files[SSL_AIDX_MAX];
1.30 +10 -8 jakarta-tomcat-connectors/jni/native/src/sslcontext.c
Index: sslcontext.c
===================================================================
RCS file: /home/cvs/jakarta-tomcat-connectors/jni/native/src/sslcontext.c,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- sslcontext.c 9 Jun 2005 09:13:55 -0000 1.29
+++ sslcontext.c 10 Jun 2005 06:25:08 -0000 1.30
@@ -317,18 +317,20 @@
}
TCN_IMPLEMENT_CALL(jboolean, SSLContext,
setCertificateChainFile)(TCN_STDARGS, jlong ctx,
- jstring
file)
+ jstring
file,
+ jboolean
skipfirst)
{
tcn_ssl_ctxt_t *c = J2P(ctx, tcn_ssl_ctxt_t *);
- jboolean rv = JNI_TRUE;
-
+ jboolean rv = JNI_FALSE;
+ TCN_ALLOC_CSTRING(file);
+
UNREFERENCED(o);
TCN_ASSERT(ctx != 0);
- if (!file)
+ if (!J2S(file))
return JNI_FALSE;
- if ((c->cert_chain = tcn_pstrdup(e, file, c->pool)) == NULL)
- rv = JNI_FALSE;
-
+ if (SSL_CTX_use_certificate_chain(c->ctx, J2S(file), skipfirst) > 0)
+ rv = JNI_TRUE;
+ TCN_FREE_CSTRING(file);
return rv;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]