diff options
Diffstat (limited to 'ace/SSL')
-rw-r--r-- | ace/SSL/SSL_Asynch_Stream.cpp | 14 | ||||
-rw-r--r-- | ace/SSL/SSL_Asynch_Stream.h | 3 | ||||
-rw-r--r-- | ace/SSL/SSL_Context.cpp | 86 | ||||
-rw-r--r-- | ace/SSL/SSL_Context.h | 10 | ||||
-rw-r--r-- | ace/SSL/SSL_Context.inl | 3 | ||||
-rw-r--r-- | ace/SSL/SSL_SOCK.cpp | 7 | ||||
-rw-r--r-- | ace/SSL/SSL_SOCK.h | 15 | ||||
-rw-r--r-- | ace/SSL/SSL_SOCK.i | 29 | ||||
-rw-r--r-- | ace/SSL/SSL_SOCK_Acceptor.cpp | 5 | ||||
-rw-r--r-- | ace/SSL/SSL_SOCK_Acceptor.h | 28 | ||||
-rw-r--r-- | ace/SSL/SSL_SOCK_Acceptor.i | 3 | ||||
-rw-r--r-- | ace/SSL/SSL_SOCK_Connector.cpp | 5 | ||||
-rw-r--r-- | ace/SSL/SSL_SOCK_Connector.h | 12 | ||||
-rw-r--r-- | ace/SSL/SSL_SOCK_Connector.i | 7 | ||||
-rw-r--r-- | ace/SSL/SSL_SOCK_Stream.cpp | 4 | ||||
-rw-r--r-- | ace/SSL/SSL_SOCK_Stream.h | 3 | ||||
-rw-r--r-- | ace/SSL/SSL_SOCK_Stream.i | 4 |
17 files changed, 146 insertions, 92 deletions
diff --git a/ace/SSL/SSL_Asynch_Stream.cpp b/ace/SSL/SSL_Asynch_Stream.cpp index ebde7e69e4b..1aad32cf9b4 100644 --- a/ace/SSL/SSL_Asynch_Stream.cpp +++ b/ace/SSL/SSL_Asynch_Stream.cpp @@ -1,5 +1,3 @@ -// -*- C++ -*- - #include "SSL_Asynch_Stream.h" ACE_RCSID (ACE_SSL, @@ -36,12 +34,14 @@ ACE_RCSID (ACE_SSL, #include <openssl/err.h> +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + // ************************************************************ // SSL Asynchronous Write Result // ************************************************************ -class ACE_SSL_Export ACE_SSL_Asynch_Write_Stream_Result: - public AWS_RESULT +class ACE_SSL_Asynch_Write_Stream_Result + : public AWS_RESULT { /// Factory class will have special permissions. friend class ACE_SSL_Asynch_Stream; @@ -83,8 +83,8 @@ ACE_SSL_Asynch_Write_Stream_Result::ACE_SSL_Asynch_Write_Stream_Result // ************************************************************ // SSL Asynchronous Read Result // ************************************************************ -class ACE_SSL_Export ACE_SSL_Asynch_Read_Stream_Result: - public ARS_RESULT +class ACE_SSL_Asynch_Read_Stream_Result + : public ARS_RESULT { /// Factory class will have special permissions. friend class ACE_SSL_Asynch_Stream; @@ -1120,5 +1120,7 @@ ACE_SSL_Asynch_Stream::pending_BIO_count (void) return ret; } +ACE_END_VERSIONED_NAMESPACE_DECL + #endif /* OPENSSL_VERSION_NUMBER > 0x0090581fL && (ACE_WIN32 || ACE_HAS_AIO_CALLS) */ diff --git a/ace/SSL/SSL_Asynch_Stream.h b/ace/SSL/SSL_Asynch_Stream.h index e8d2b8f8c34..8e8f5534e3a 100644 --- a/ace/SSL/SSL_Asynch_Stream.h +++ b/ace/SSL/SSL_Asynch_Stream.h @@ -35,9 +35,9 @@ extern "C" BIO * BIO_new_ACE_Asynch (void *ssl_asynch_stream); } +ACE_BEGIN_VERSIONED_NAMESPACE_DECL /// Forward declarations -class ACE_SSL_Asynch_Stream; class ACE_SSL_Asynch_Result; class ACE_SSL_Asynch_Read_Stream_Result; class ACE_SSL_Asynch_Write_Stream_Result; @@ -246,6 +246,7 @@ protected: }; +ACE_END_VERSIONED_NAMESPACE_DECL #endif /* OPENSSL_VERSION_NUMBER > 0x0090581fL && (ACE_WIN32 || ACE_HAS_AIO_CALLS) */ diff --git a/ace/SSL/SSL_Context.cpp b/ace/SSL/SSL_Context.cpp index 191af4b4d28..bd7af2f3fce 100644 --- a/ace/SSL/SSL_Context.cpp +++ b/ace/SSL/SSL_Context.cpp @@ -1,5 +1,3 @@ -// -*- C++ -*- - #include "ace/OS_NS_string.h" #include "ace/ACE.h" #include "SSL_Context.h" @@ -25,10 +23,53 @@ ACE_RCSID (ACE_SSL, SSL_Context, "$Id$") + #ifdef ACE_HAS_THREADS -ACE_mutex_t * ACE_SSL_Context::lock_ = 0; +void +ACE_SSL_locking_callback (int mode, + int type, + const char * /* file */, + int /* line */) +{ + // #ifdef undef + // fprintf(stderr,"thread=%4d mode=%s lock=%s %s:%d\n", + // CRYPTO_thread_id(), + // (mode&CRYPTO_LOCK)?"l":"u", + // (type&CRYPTO_READ)?"r":"w",file,line); + // #endif + // /* + // if (CRYPTO_LOCK_SSL_CERT == type) + // fprintf(stderr,"(t,m,f,l) %ld %d %s %d\n", + // CRYPTO_thread_id(), + // mode,file,line); + // */ + if (mode & CRYPTO_LOCK) + ACE_OS::mutex_lock (&(ACE_SSL_Context::lock_[type])); + else + ACE_OS::mutex_unlock (&(ACE_SSL_Context::lock_[type])); +} + +// ------------------------------- + +extern "C" +{ + /// Return the current thread ID. OpenSSL uses this on platforms + /// that need it. + unsigned long + ACE_SSL_thread_id (void) + { + return (unsigned long) ACE_OS::thr_self (); + } +} #endif /* ACE_HAS_THREADS */ +// **************************************************************** + +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + +#ifdef ACE_HAS_THREADS +ACE_mutex_t * ACE_SSL_Context::lock_ = 0; +#endif /* ACE_HAS_THREADS */ int ACE_SSL_Context::library_init_count_ = 0; @@ -486,47 +527,10 @@ ACE_SSL_Context::dh_params (const char *file_name, return 0; } -// **************************************************************** - -#ifdef ACE_HAS_THREADS - -void -ACE_SSL_locking_callback (int mode, - int type, - const char * /* file */, - int /* line */) -{ - // #ifdef undef - // fprintf(stderr,"thread=%4d mode=%s lock=%s %s:%d\n", - // CRYPTO_thread_id(), - // (mode&CRYPTO_LOCK)?"l":"u", - // (type&CRYPTO_READ)?"r":"w",file,line); - // #endif - // /* - // if (CRYPTO_LOCK_SSL_CERT == type) - // fprintf(stderr,"(t,m,f,l) %ld %d %s %d\n", - // CRYPTO_thread_id(), - // mode,file,line); - // */ - if (mode & CRYPTO_LOCK) - ACE_OS::mutex_lock (&(ACE_SSL_Context::lock_[type])); - else - ACE_OS::mutex_unlock (&(ACE_SSL_Context::lock_[type])); -} - - - -unsigned long -ACE_SSL_thread_id (void) -{ - return (unsigned long) ACE_OS::thr_self (); -} -#endif /* ACE_HAS_THREADS */ +ACE_END_VERSIONED_NAMESPACE_DECL // **************************************************************** - - #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class ACE_Singleton<ACE_SSL_Context, ACE_SYNCH_MUTEX>; diff --git a/ace/SSL/SSL_Context.h b/ace/SSL/SSL_Context.h index 37a8de30496..e999e2ff26a 100644 --- a/ace/SSL/SSL_Context.h +++ b/ace/SSL/SSL_Context.h @@ -33,20 +33,16 @@ #ifdef ACE_HAS_THREADS extern "C" { - /// Mutex locking/unlocking callback for OpenSSL multithread /// support. void ACE_SSL_locking_callback (int mode, int type, const char * file, int line); - - /// Return the current thread ID. OpenSSL uses this on platforms - /// that need it. - unsigned long ACE_SSL_thread_id (void); } #endif /* ACE_HAS_THREADS */ +ACE_BEGIN_VERSIONED_NAMESPACE_DECL class ACE_SSL_Export ACE_SSL_Data_File { @@ -88,7 +84,7 @@ private: */ class ACE_SSL_Export ACE_SSL_Context { - friend void ACE_SSL_locking_callback (int, int, const char *, int); + friend void ::ACE_SSL_locking_callback (int, int, const char *, int); public: @@ -354,6 +350,8 @@ private: }; +ACE_END_VERSIONED_NAMESPACE_DECL + #if defined(__ACE_INLINE__) #include "SSL_Context.inl" #endif /* __ACE_INLINE__ */ diff --git a/ace/SSL/SSL_Context.inl b/ace/SSL/SSL_Context.inl index 9008591e1c9..5fd50ec6d43 100644 --- a/ace/SSL/SSL_Context.inl +++ b/ace/SSL/SSL_Context.inl @@ -2,6 +2,7 @@ // // $Id$ +ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE ACE_SSL_Data_File::ACE_SSL_Data_File (void) @@ -104,3 +105,5 @@ ACE_SSL_Context::have_trusted_ca (void) const { return this->have_ca_; } + +ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ace/SSL/SSL_SOCK.cpp b/ace/SSL/SSL_SOCK.cpp index 0f38ddb4206..c6f1af15388 100644 --- a/ace/SSL/SSL_SOCK.cpp +++ b/ace/SSL/SSL_SOCK.cpp @@ -1,8 +1,5 @@ -// -*- C++ -*- -// // $Id$ - #include "SSL_SOCK.h" #if !defined (__ACE_INLINE__) @@ -17,6 +14,8 @@ ACE_RCSID (ACE_SSL, "$Id$") +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + ACE_SSL_SOCK::ACE_SSL_SOCK (void) { ACE_TRACE ("ACE_SSL_SOCK::ACE_SSL_SOCK"); @@ -69,3 +68,5 @@ ACE_SSL_SOCK::disable (int value) const return -1; } } + +ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ace/SSL/SSL_SOCK.h b/ace/SSL/SSL_SOCK.h index c5d65b35a72..0a86a1f5c9f 100644 --- a/ace/SSL/SSL_SOCK.h +++ b/ace/SSL/SSL_SOCK.h @@ -34,6 +34,8 @@ # define ACE_SSL_SOCK_STREAM ACE_SSL_SOCK_Stream, ACE_INET_Addr #endif /* ACE_HAS_TEMPLATE_TYPEDEFS */ +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + /** * @class ACE_SSL_SOCK * @@ -50,9 +52,6 @@ class ACE_SSL_Export ACE_SSL_SOCK : public ACE_SOCK { public: - /// Default destructor. - ~ACE_SSL_SOCK (void); - /** * Override ACE_SOCK base class implementations with these SSL * specific ones. @@ -79,8 +78,18 @@ protected: /// from being defined. ACE_SSL_SOCK (void); + /// Destructor + /** + * Not a virtual destructor. Protected destructor to prevent + * operator delete() from being called through a base class + * ACE_SSL_SOCK pointer/reference. + */ + ~ACE_SSL_SOCK (void); + }; +ACE_END_VERSIONED_NAMESPACE_DECL + #if defined (__ACE_INLINE__) #include "SSL_SOCK.i" #endif /* __ACE_INLINE__ */ diff --git a/ace/SSL/SSL_SOCK.i b/ace/SSL/SSL_SOCK.i index bd2b967b97a..1a39d5214dc 100644 --- a/ace/SSL/SSL_SOCK.i +++ b/ace/SSL/SSL_SOCK.i @@ -1,8 +1,11 @@ // -*- C++ -*- +// // $Id$ #include "ace/OS_NS_sys_socket.h" +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + ACE_INLINE void ACE_SSL_SOCK::set_handle (ACE_HANDLE fd) { @@ -25,9 +28,9 @@ ACE_SSL_SOCK::control (int cmd, void *arg) const ACE_INLINE int ACE_SSL_SOCK::set_option (int level, - int option, - void *optval, - int optlen) const + int option, + void *optval, + int optlen) const { // switch (option) // { @@ -37,9 +40,9 @@ ACE_SSL_SOCK::set_option (int level, // return ::BIO_set_read_buffer_size (this->io_bio_, *((int *) optval)); // default: return ACE_OS::setsockopt (this->get_handle (), - level, - option, (char *) optval, - optlen); + level, + option, (char *) optval, + optlen); // } } @@ -47,9 +50,9 @@ ACE_SSL_SOCK::set_option (int level, ACE_INLINE int ACE_SSL_SOCK::get_option (int level, - int option, - void *optval, - int *optlen) const + int option, + void *optval, + int *optlen) const { // switch (option) // { @@ -59,8 +62,10 @@ ACE_SSL_SOCK::get_option (int level, // return ::BIO_get_read_buffer_size (this->io_bio_, *((int *) optval)); // default: return ACE_OS::getsockopt (this->get_handle (), - level, - option, (char *) optval, - optlen); + level, + option, (char *) optval, + optlen); // } } + +ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ace/SSL/SSL_SOCK_Acceptor.cpp b/ace/SSL/SSL_SOCK_Acceptor.cpp index 6dedbf05bca..acad89fd219 100644 --- a/ace/SSL/SSL_SOCK_Acceptor.cpp +++ b/ace/SSL/SSL_SOCK_Acceptor.cpp @@ -22,6 +22,8 @@ ACE_RCSID (ACE_SSL, SSL_SOCK_Acceptor, "$Id$") +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + ACE_SSL_SOCK_Acceptor::~ACE_SSL_SOCK_Acceptor (void) { ACE_TRACE ("ACE_SSL_SOCK_Acceptor::~ACE_SSL_SOCK_Acceptor"); @@ -242,5 +244,6 @@ ACE_SSL_SOCK_Acceptor::accept (ACE_SSL_SOCK_Stream &new_stream, } return 0; - } + +ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ace/SSL/SSL_SOCK_Acceptor.h b/ace/SSL/SSL_SOCK_Acceptor.h index 698ebcbefd9..0428365a753 100644 --- a/ace/SSL/SSL_SOCK_Acceptor.h +++ b/ace/SSL/SSL_SOCK_Acceptor.h @@ -29,6 +29,8 @@ #include "ace/SOCK_Acceptor.h" #include "ace/OS_QoS.h" +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + /** * @class ACE_SSL_SOCK_Acceptor * @@ -68,10 +70,10 @@ public: * upon return. */ ACE_SSL_SOCK_Acceptor (const ACE_Addr &local_sap, - int reuse_addr = 0, - int protocol_family = PF_UNSPEC, - int backlog = ACE_DEFAULT_BACKLOG, - int protocol = 0); + int reuse_addr = 0, + int protocol_family = PF_UNSPEC, + int backlog = ACE_DEFAULT_BACKLOG, + int protocol = 0); /** * Initiate a passive-mode QoS-enabled acceptor socket. @@ -84,13 +86,13 @@ public: * upon return. */ ACE_SSL_SOCK_Acceptor (const ACE_Addr &local_sap, - ACE_Protocol_Info *protocolinfo, - ACE_SOCK_GROUP g, - u_long flags, - int reuse_addr, - int protocol_family = PF_UNSPEC, - int backlog = ACE_DEFAULT_BACKLOG, - int protocol = 0); + ACE_Protocol_Info *protocolinfo, + ACE_SOCK_GROUP g, + u_long flags, + int reuse_addr, + int protocol_family = PF_UNSPEC, + int backlog = ACE_DEFAULT_BACKLOG, + int protocol = 0); /** * Initiate a passive mode SSL/BSD-style acceptor socket. @@ -156,7 +158,7 @@ public: * @return 0 if success; -1 for failure (errno contains error code). */ int accept (ACE_SSL_SOCK_Stream &new_stream, - ACE_Accept_QoS_Params qos_params, + ACE_Accept_QoS_Params qos_params, ACE_Addr *remote_addr = 0, ACE_Time_Value *timeout = 0, int restart = 1, @@ -185,6 +187,8 @@ private: }; +ACE_END_VERSIONED_NAMESPACE_DECL + #if defined (__ACE_INLINE__) #include "SSL_SOCK_Acceptor.i" #endif /* __ACE_INLINE__ */ diff --git a/ace/SSL/SSL_SOCK_Acceptor.i b/ace/SSL/SSL_SOCK_Acceptor.i index 01cc06fd8bb..7fd8cb04095 100644 --- a/ace/SSL/SSL_SOCK_Acceptor.i +++ b/ace/SSL/SSL_SOCK_Acceptor.i @@ -2,6 +2,7 @@ // // $Id$ +ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE ACE_SSL_SOCK_Acceptor::ACE_SSL_SOCK_Acceptor (void) @@ -80,3 +81,5 @@ ACE_SSL_SOCK_Acceptor::close (void) return result; } + +ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ace/SSL/SSL_SOCK_Connector.cpp b/ace/SSL/SSL_SOCK_Connector.cpp index 5b6f2e09e0c..41e00ff6f4a 100644 --- a/ace/SSL/SSL_SOCK_Connector.cpp +++ b/ace/SSL/SSL_SOCK_Connector.cpp @@ -20,8 +20,9 @@ ACE_RCSID (ACE_SSL, SSL_SOCK_Connector, "$Id$") -ACE_ALLOC_HOOK_DEFINE(ACE_SSL_SOCK_Connector) +ACE_BEGIN_VERSIONED_NAMESPACE_DECL +ACE_ALLOC_HOOK_DEFINE(ACE_SSL_SOCK_Connector) ACE_SSL_SOCK_Connector::~ACE_SSL_SOCK_Connector (void) { @@ -406,3 +407,5 @@ ACE_SSL_SOCK_Connector::ACE_SSL_SOCK_Connector ( reuse_addr, perms); } + +ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ace/SSL/SSL_SOCK_Connector.h b/ace/SSL/SSL_SOCK_Connector.h index 9ece41271a2..702dbbf82ec 100644 --- a/ace/SSL/SSL_SOCK_Connector.h +++ b/ace/SSL/SSL_SOCK_Connector.h @@ -30,6 +30,8 @@ #include "ace/SOCK_Connector.h" #include "ace/OS_QoS.h" +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + /** * @class ACE_SSL_SOCK_Connector * @@ -258,13 +260,13 @@ public: int connect (ACE_SSL_SOCK_Stream &new_stream, const ACE_Addr &remote_sap, ACE_QoS_Params qos_params, - const ACE_Time_Value *timeout = 0, - const ACE_Addr &local_sap = ACE_Addr::sap_any, + const ACE_Time_Value *timeout = 0, + const ACE_Addr &local_sap = ACE_Addr::sap_any, ACE_Protocol_Info *protocolinfo = 0, ACE_SOCK_GROUP g = 0, u_long flags = 0, - int reuse_addr = 0, - int perms = 0); + int reuse_addr = 0, + int perms = 0); /** * Try to complete a non-blocking connection. @@ -305,6 +307,8 @@ private: }; +ACE_END_VERSIONED_NAMESPACE_DECL + #if defined (__ACE_INLINE__) #include "SSL_SOCK_Connector.i" #endif /* __ACE_INLINE__ */ diff --git a/ace/SSL/SSL_SOCK_Connector.i b/ace/SSL/SSL_SOCK_Connector.i index f216828c622..67b5ef01540 100644 --- a/ace/SSL/SSL_SOCK_Connector.i +++ b/ace/SSL/SSL_SOCK_Connector.i @@ -1,7 +1,8 @@ -/* -*- C++ -*- */ +// -*- C++ -*- +// // $Id$ -// SSL_SOCK_Connector.i +ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE ACE_SSL_SOCK_Connector::ACE_SSL_SOCK_Connector (void) @@ -23,3 +24,5 @@ ACE_SSL_SOCK_Connector::dump (void) const ACE_TRACE ("ACE_SSL_SOCK_Connector::dump"); this->connector_.dump (); } + +ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ace/SSL/SSL_SOCK_Stream.cpp b/ace/SSL/SSL_SOCK_Stream.cpp index 69fff5ebfa4..9ddbfdf75b5 100644 --- a/ace/SSL/SSL_SOCK_Stream.cpp +++ b/ace/SSL/SSL_SOCK_Stream.cpp @@ -18,6 +18,8 @@ ACE_RCSID (ACE_SSL, SSL_SOCK_Stream, "$Id$") +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + ACE_ALLOC_HOOK_DEFINE(ACE_SSL_SOCK_Stream) ACE_SSL_SOCK_Stream::ACE_SSL_SOCK_Stream (ACE_SSL_Context *context) @@ -586,3 +588,5 @@ ACE_SSL_SOCK_Stream::get_remote_addr (ACE_Addr &addr) const return -1; } + +ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ace/SSL/SSL_SOCK_Stream.h b/ace/SSL/SSL_SOCK_Stream.h index abace05d58f..a58d91e7c4b 100644 --- a/ace/SSL/SSL_SOCK_Stream.h +++ b/ace/SSL/SSL_SOCK_Stream.h @@ -34,6 +34,7 @@ #include "ace/SOCK_Stream.h" +ACE_BEGIN_VERSIONED_NAMESPACE_DECL /** * @class ACE_SSL_SOCK_Stream @@ -309,6 +310,8 @@ protected: }; +ACE_END_VERSIONED_NAMESPACE_DECL + #if defined (__ACE_INLINE__) #include "SSL_SOCK_Stream.i" #endif /* __ACE_INLINE__ */ diff --git a/ace/SSL/SSL_SOCK_Stream.i b/ace/SSL/SSL_SOCK_Stream.i index b80cd3e2884..352aca04b3e 100644 --- a/ace/SSL/SSL_SOCK_Stream.i +++ b/ace/SSL/SSL_SOCK_Stream.i @@ -4,6 +4,8 @@ #include "ace/OS_NS_errno.h" +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + ACE_INLINE void ACE_SSL_SOCK_Stream::set_handle (ACE_HANDLE fd) { @@ -317,3 +319,5 @@ ACE_SSL_SOCK_Stream::ssl (void) const { return this->ssl_; } + +ACE_END_VERSIONED_NAMESPACE_DECL |