summaryrefslogtreecommitdiff
path: root/src/ne_stubssl.c
diff options
context:
space:
mode:
authorjoe <joe@61a7d7f5-40b7-0310-9c16-bb0ea8cb1845>2008-01-31 11:46:32 +0000
committerjoe <joe@61a7d7f5-40b7-0310-9c16-bb0ea8cb1845>2008-01-31 11:46:32 +0000
commit803664519e6edbb2b298861a7133e204761ae0e3 (patch)
tree550ca448a37d65003ac36f40ad1e33946164e210 /src/ne_stubssl.c
parent91d0fcf1f794acc90a671bf5557d2d2a505843f7 (diff)
downloadneon-803664519e6edbb2b298861a7133e204761ae0e3.tar.gz
Add support for PKCS#12 client certs which don't include a private
key: * src/ne_gnutls.c (struct ne_ssl_client_cert_s): Add keyless flag. (dup_client_cert): Support keyless clicerts. (pkcs12_parse): Make pkey handling optional. (read_client_cert): Factor out from ne_ssl_clicert_read; take additional key_required flag; fail if cert or key is required and not supplied; initialize keyless flag. (ne_ssl_clicert_read): Reimplement using read_client_cert. (ne_ssl_clicert_exkey_read): New function. (ne_ssl_clicert_decrypt): Handle keyless failure case. * src/ne_openssl.c (ne_ssl_clicert_exkey_read): Add stub. * src/ne_stubssl.c (ne_ssl_clicert_exkey_read): Add stub. * test/ssl.c (load_client_cert): Test ne_ssl_clicert_exkey_read. * test/makekeys.sh: Generate keyless ccert. git-svn-id: http://svn.webdav.org/repos/projects/neon/trunk@1316 61a7d7f5-40b7-0310-9c16-bb0ea8cb1845
Diffstat (limited to 'src/ne_stubssl.c')
-rw-r--r--src/ne_stubssl.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/ne_stubssl.c b/src/ne_stubssl.c
index 77f9055..d025f25 100644
--- a/src/ne_stubssl.c
+++ b/src/ne_stubssl.c
@@ -1,6 +1,6 @@
/*
Stubs for SSL support when no SSL library has been configured
- Copyright (C) 2002-2006, Joe Orton <joe@manyfish.co.uk>
+ Copyright (C) 2002-2006, 2008, Joe Orton <joe@manyfish.co.uk>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
@@ -63,6 +63,11 @@ ne_ssl_client_cert *ne_ssl_clicert_read(const char *filename)
return NULL;
}
+ne_ssl_client_cert *ne_ssl_clicert_exkey_read(const char *filename)
+{
+ return NULL;
+}
+
const ne_ssl_certificate *ne_ssl_clicert_owner(const ne_ssl_client_cert *ccert)
{
return NULL;