diff options
author | moparisthebest <admin@moparisthebest.com> | 2014-09-30 22:31:17 -0400 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2014-10-07 14:44:19 +0200 |
commit | 93e450793ce289925dfd1d5e3b2d14e781f8dfd4 (patch) | |
tree | 3ceea898922e067a4a692204f6388ab633deebef /src/tool_cfgable.c | |
parent | d1b56d00439ab26d7fc43e37ab18ae331ddc400d (diff) | |
download | curl-93e450793ce289925dfd1d5e3b2d14e781f8dfd4.tar.gz |
SSL: implement public key pinning
Option --pinnedpubkey takes a path to a public key in DER format and
only connect if it matches (currently only implemented with OpenSSL).
Provides CURLOPT_PINNEDPUBLICKEY for curl_easy_setopt().
Extract a public RSA key from a website like so:
openssl s_client -connect google.com:443 2>&1 < /dev/null | \
sed -n '/-----BEGIN/,/-----END/p' | openssl x509 -noout -pubkey \
| openssl rsa -pubin -outform DER > google.com.der
Diffstat (limited to 'src/tool_cfgable.c')
-rw-r--r-- | src/tool_cfgable.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/tool_cfgable.c b/src/tool_cfgable.c index 2fdae073f..bd8707e57 100644 --- a/src/tool_cfgable.c +++ b/src/tool_cfgable.c @@ -101,6 +101,7 @@ static void free_config_fields(struct OperationConfig *config) Curl_safefree(config->cacert); Curl_safefree(config->capath); Curl_safefree(config->crlfile); + Curl_safefree(config->pinnedpubkey); Curl_safefree(config->key); Curl_safefree(config->key_type); Curl_safefree(config->key_passwd); |