diff options
author | joe <joe@61a7d7f5-40b7-0310-9c16-bb0ea8cb1845> | 2008-01-31 11:46:32 +0000 |
---|---|---|
committer | joe <joe@61a7d7f5-40b7-0310-9c16-bb0ea8cb1845> | 2008-01-31 11:46:32 +0000 |
commit | 803664519e6edbb2b298861a7133e204761ae0e3 (patch) | |
tree | 550ca448a37d65003ac36f40ad1e33946164e210 /src/ne_stubssl.c | |
parent | 91d0fcf1f794acc90a671bf5557d2d2a505843f7 (diff) | |
download | neon-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.c | 7 |
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; |