tree c3e2e1b4dfd15ac2467cbf683ca0882436704301
parent 358cbea8ff89f14715749ed87724bb2418253c09
author Lieven Govaerts <lgo@apache.org> 1373197772 +0000
committer Lieven Govaerts <lgo@apache.org> 1373197772 +0000

On the multiple_ssl_impls branch:
Integrate the SSL session export/import API's in the ssl bucket interface.

* buckets/bucket_private.h
  (struct serf_ssl_bucket_type_t): Add new functions session_export,
       session_import, new_session_callback_set and resume_session.
  (struct serf_ssl_session_t): Move to here from openssl_buckets.c

* serf_bucket_types.h
  (serf_ssl_session_export,
   serf_ssl_session_import): Add serf_ssl_context_t parameter. This is needed
       to decide which SSL implementation is used.

* buckets/openssl_buckets.c
  (struct serf_ssl_session_t): Move to bucket_private.h
  (serf_ssl_new_session_callback_set): Make the ctx parameter void *. Rename to serf__openssl_new_session_callback_set.
  (new_session): Use internal type openssl_context_t. Update session_obj name.
  (serf_ssl_session_export): Rename to serf__openssl_session_export. Update 
      session_obj name.
  (serf_ssl_session_import): Rename to serf__openssl_session_import. Update
      session_obj name.
  (serf_ssl_resume_session): Rename to serf__openssl_resume_session. Make the
      ctx parameter void *. Update session_obj name.
  (serf_ssl_bucket_type_openssl): Add the 4 new functions.

* buckets/sectrans_buckets.c
  (serf_ssl_bucket_type_securetransport): Fill in the 4 new functions slots with
      NULL for now.

* buckets/ssl_buckets.c
  (serf_ssl_new_session_callback_set,
   serf_ssl_resume_session,
   serf_ssl_session_export,
   serf_ssl_session_export): New functions, implemented as wrapper to one of the
       specific SSL implementations.

* test/serf_get.c
  (new_ssl_session,
   read_ssl_session,
   conn_setup): Update calls to serf_ssl_session_export and
       serf_ssl_session_import with the serf_ssl_context_t parameter.


git-svn-id: https://svn.apache.org/repos/asf/serf/branches/multiple_ssl_impls@1699558 13f79535-47bb-0310-9956-ffa450edef68
