diff options
author | Christian Grothoff <christian@grothoff.org> | 2013-11-30 00:03:40 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2013-11-30 00:03:40 +0000 |
commit | 14b2548615dce5edaba3d46d3638c798e1cfd1f9 (patch) | |
tree | 744897668da84428a113f918e7bc082d957cfac0 /src/gns | |
parent | b2f1bcafa32963ef1bbb9c00ea7b75c933c2016e (diff) | |
download | gnunet-14b2548615dce5edaba3d46d3638c798e1cfd1f9.tar.gz gnunet-14b2548615dce5edaba3d46d3638c798e1cfd1f9.zip |
-undo, this was a bit too early
Diffstat (limited to 'src/gns')
-rw-r--r-- | src/gns/gnunet-gns-proxy.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/gns/gnunet-gns-proxy.c b/src/gns/gnunet-gns-proxy.c index 38324eb41..e464ffa3e 100644 --- a/src/gns/gnunet-gns-proxy.c +++ b/src/gns/gnunet-gns-proxy.c | |||
@@ -813,28 +813,34 @@ mhd_content_cb (void *cls, | |||
813 | static int | 813 | static int |
814 | check_ssl_certificate (struct Socks5Request *s5r) | 814 | check_ssl_certificate (struct Socks5Request *s5r) |
815 | { | 815 | { |
816 | struct curl_tlsinfo tlsinfo; | ||
816 | unsigned int cert_list_size; | 817 | unsigned int cert_list_size; |
817 | const gnutls_datum_t *chainp; | 818 | const gnutls_datum_t *chainp; |
818 | const struct curl_tlsinfo *tlsinfo; | 819 | union { |
820 | struct curl_tlsinfo *tlsinfo; | ||
821 | struct curl_slist *to_slist; | ||
822 | } gptr; | ||
819 | char certdn[GNUNET_DNSPARSER_MAX_NAME_LENGTH + 3]; | 823 | char certdn[GNUNET_DNSPARSER_MAX_NAME_LENGTH + 3]; |
820 | size_t size; | 824 | size_t size; |
821 | gnutls_x509_crt_t x509_cert; | 825 | gnutls_x509_crt_t x509_cert; |
822 | int rc; | 826 | int rc; |
823 | const char *name; | 827 | const char *name; |
824 | 828 | ||
829 | memset (&tlsinfo, 0, sizeof (tlsinfo)); | ||
830 | gptr.tlsinfo = &tlsinfo; | ||
825 | if (CURLE_OK != | 831 | if (CURLE_OK != |
826 | curl_easy_getinfo (s5r->curl, | 832 | curl_easy_getinfo (s5r->curl, |
827 | CURLINFO_TLS_SESSION, | 833 | CURLINFO_TLS_SESSION, |
828 | &tlsinfo)) | 834 | &gptr)) |
829 | return GNUNET_SYSERR; | 835 | return GNUNET_SYSERR; |
830 | if (CURLSSLBACKEND_GNUTLS != tlsinfo->ssl_backend) | 836 | if (CURLSSLBACKEND_GNUTLS != tlsinfo.ssl_backend) |
831 | { | 837 | { |
832 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, | 838 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, |
833 | _("Unsupported CURL SSL backend %d\n"), | 839 | _("Unsupported CURL SSL backend %d\n"), |
834 | tlsinfo->ssl_backend); | 840 | tlsinfo.ssl_backend); |
835 | return GNUNET_SYSERR; | 841 | return GNUNET_SYSERR; |
836 | } | 842 | } |
837 | chainp = gnutls_certificate_get_peers (tlsinfo->internals, &cert_list_size); | 843 | chainp = gnutls_certificate_get_peers (tlsinfo.internals, &cert_list_size); |
838 | if ( (! chainp) || (0 == cert_list_size) ) | 844 | if ( (! chainp) || (0 == cert_list_size) ) |
839 | return GNUNET_SYSERR; | 845 | return GNUNET_SYSERR; |
840 | 846 | ||