curl_easy_getinfo: Post CURLINFO_TLS_SESSION tidy up
authorSteve Holme <steve_holme@hotmail.com>
Sat, 30 Nov 2013 10:59:01 +0000 (10:59 +0000)
committerSteve Holme <steve_holme@hotmail.com>
Sat, 30 Nov 2013 11:08:56 +0000 (11:08 +0000)
1) Renamed curl_tlsinfo to curl_tlssessioninfo as discussed on the
mailing list.
2) Renamed curl_ssl_backend to curl_sslbackend so it doesn't follow our
function naming convention.
3) Updated sessioninfo.c example accordingly.

docs/examples/sessioninfo.c
include/curl/curl.h
lib/getinfo.c
lib/urldata.h

index ac0cbb1..2641c71 100644 (file)
@@ -32,7 +32,7 @@ static CURL *curl;
 
 static size_t wrfu(void *ptr, size_t size, size_t nmemb, void *stream)
 {
-  const struct curl_tlsinfo *tlsinfo;
+  const struct curl_tlssessioninfo *info;
   unsigned int cert_list_size;
   const gnutls_datum_t *chainp;
   CURLcode res;
@@ -40,14 +40,13 @@ static size_t wrfu(void *ptr, size_t size, size_t nmemb, void *stream)
   (void)stream;
   (void)ptr;
 
-  res = curl_easy_getinfo(curl, CURLINFO_TLS_SESSION, &tlsinfo);
+  res = curl_easy_getinfo(curl, CURLINFO_TLS_SESSION, &info);
 
   if(!res) {
-    switch(tlsinfo->ssl_backend) {
+    switch(info->backend) {
     case CURLSSLBACKEND_GNUTLS:
-      /* tlsinfo->internals is now the gnutls_session_t */
-      chainp = gnutls_certificate_get_peers(tlsinfo->internals,
-                                            &cert_list_size);
+      /* info->internals is now the gnutls_session_t */
+      chainp = gnutls_certificate_get_peers(info->internals, &cert_list_size);
       if((chainp) && (cert_list_size)) {
         unsigned int i;
 
@@ -57,8 +56,7 @@ static size_t wrfu(void *ptr, size_t size, size_t nmemb, void *stream)
 
           if(GNUTLS_E_SUCCESS == gnutls_x509_crt_init(&cert)) {
             if(GNUTLS_E_SUCCESS ==
-               gnutls_x509_crt_import(cert, &chainp[i],
-                                      GNUTLS_X509_FMT_DER)) {
+               gnutls_x509_crt_import(cert, &chainp[i], GNUTLS_X509_FMT_DER)) {
               if(GNUTLS_E_SUCCESS ==
                  gnutls_x509_crt_print(cert, GNUTLS_CRT_PRINT_FULL, &dn)) {
                 fprintf(stderr, "Certificate #%d: %.*s", i, dn.size, dn.data);
index b58939b..5c63dd8 100644 (file)
@@ -1997,13 +1997,13 @@ typedef enum {
   CURLSSLBACKEND_CYASSL = 7,
   CURLSSLBACKEND_SCHANNEL = 8,
   CURLSSLBACKEND_DARWINSSL = 9
-} curl_ssl_backend;
+} curl_sslbackend;
 
 /* Information about the SSL library used and the respective internal SSL
    handle, which can be used to obtain further information regarding the
    connection. Asked for with CURLINFO_TLS_SESSION. */
-struct curl_tlsinfo {
-  curl_ssl_backend ssl_backend;
+struct curl_tlssessioninfo {
+  curl_sslbackend backend;
   void *internals;
 };
 
index cd5a62a..c5c00e0 100644 (file)
@@ -279,14 +279,15 @@ static CURLcode getinfo_slist(struct SessionHandle *data, CURLINFO info,
     break;
   case CURLINFO_TLS_SESSION:
     {
-      struct curl_tlsinfo **tlsinfop = (struct curl_tlsinfo **) param_slistp;
-      struct curl_tlsinfo *tlsinfo = &data->tlsinfo;
+      struct curl_tlssessioninfo **tsip = (struct curl_tlssessioninfo **)
+                                          param_slistp;
+      struct curl_tlssessioninfo *tsi = &data->tsi;
       struct connectdata *conn = data->easy_conn;
       unsigned int sockindex = 0;
 
-      *tlsinfop = tlsinfo;
-      tlsinfo->ssl_backend = CURLSSLBACKEND_NONE;
-      tlsinfo->internals = NULL;
+      *tsip = tsi;
+      tsi->backend = CURLSSLBACKEND_NONE;
+      tsi->internals = NULL;
 
       if(!conn)
         break;
@@ -301,24 +302,24 @@ static CURLcode getinfo_slist(struct SessionHandle *data, CURLINFO info,
 
       /* Return the TLS session information from the relevant backend */
 #ifdef USE_SSLEAY
-      tlsinfo->ssl_backend = CURLSSLBACKEND_OPENSSL;
-      tlsinfo->internals = conn->ssl[sockindex].ctx;
+      tsi->backend = CURLSSLBACKEND_OPENSSL;
+      tsi->internals = conn->ssl[sockindex].ctx;
 #endif
 #ifdef USE_GNUTLS
-      tlsinfo->ssl_backend = CURLSSLBACKEND_GNUTLS;
-      tlsinfo->internals = conn->ssl[sockindex].session;
+      tsi->backend = CURLSSLBACKEND_GNUTLS;
+      tsi->internals = conn->ssl[sockindex].session;
 #endif
 #ifdef USE_NSS
-      tlsinfo->ssl_backend = CURLSSLBACKEND_NSS;
-      tlsinfo->internals = conn->ssl[sockindex].handle;
+      tsi->backend = CURLSSLBACKEND_NSS;
+      tsi->internals = conn->ssl[sockindex].handle;
 #endif
 #ifdef USE_QSOSSL
-      tlsinfo->ssl_backend = CURLSSLBACKEND_QSOSSL;
-      tlsinfo->internals = conn->ssl[sockindex].handle;
+      tsi->backend = CURLSSLBACKEND_QSOSSL;
+      tsi->internals = conn->ssl[sockindex].handle;
 #endif
 #ifdef USE_GSKIT
-      tlsinfo->ssl_backend = CURLSSLBACKEND_GSKIT;
-      tlsinfo->internals = conn->ssl[sockindex].handle;
+      tsi->backend = CURLSSLBACKEND_GSKIT;
+      tsi->internals = conn->ssl[sockindex].handle;
 #endif
       /* NOTE: For other SSL backends, it is not immediately clear what data
          to return from 'struct ssl_connect_data'; thus, for now we keep the
index 29cf960..a00894e 100644 (file)
@@ -1637,8 +1637,8 @@ struct SessionHandle {
                                   other dynamic purposes */
   struct WildcardData wildcard; /* wildcard download state info */
   struct PureInfo info;        /* stats, reports and info data */
-  struct curl_tlsinfo tlsinfo; /* Information about the TLS session, only
-                                  valid after a client has asked for it */
+  struct curl_tlssessioninfo tsi; /* Information about the TLS session, only
+                                     valid after a client has asked for it */
 #if defined(CURL_DOES_CONVERSIONS) && defined(HAVE_ICONV)
   iconv_t outbound_cd;         /* for translating to the network encoding */
   iconv_t inbound_cd;          /* for translating from the network encoding */