xmltooling  1.5.3
xmltooling::OpenSSLSOAPTransport Class Reference

Encapsulates OpenSSL-capable SOAP transport layer. More...

#include <xmltooling/soap/OpenSSLSOAPTransport.h>

Inheritance diagram for xmltooling::OpenSSLSOAPTransport:
xmltooling::SOAPTransport

Public Types

typedef bool(* ssl_ctx_callback_fn )(OpenSSLSOAPTransport *transport, SSL_CTX *ssl_ctx, void *userptr)
 OpenSSL context callback for manipulating credentials and validation behavior.
- Public Types inherited from xmltooling::SOAPTransport
enum  transport_auth_t {
  transport_auth_none = 0, transport_auth_basic = 1, transport_auth_digest = 2, transport_auth_ntlm = 3,
  transport_auth_gss = 4
}
 Common types of transport authentication that may be supported.

Public Member Functions

virtual bool setSSLCallback (ssl_ctx_callback_fn fn, void *userptr=0)=0
 Sets a callback function to invoke against the SSL_CTX before the handshake.
virtual void setAuthenticated (bool auth)=0
 Sets indicator that the transport peer has been authenticated.
- Public Member Functions inherited from xmltooling::SOAPTransport
virtual bool isConfidential () const =0
 Indicates whether transport provides confidentiality.
virtual bool setConnectTimeout (long timeout)=0
 Sets the connection timeout.
virtual bool setTimeout (long timeout)=0
 Sets the request timeout.
virtual bool setAuth (transport_auth_t authType, const char *username=0, const char *password=0)=0
 Sets a particular form of transport authentication and credentials.
virtual bool setVerifyHost (bool verify)=0
 Determines whether TLS/SSL connections include a check of the server's certificate against the expected hostname or address.
virtual bool setCredential (const Credential *credential=0)=0
 Supplies transport credentials.
virtual bool setTrustEngine (const X509TrustEngine *trustEngine=0, const CredentialResolver *credResolver=0, CredentialCriteria *criteria=0, bool mandatory=true)=0
 Provides an X509TrustEngine to the transport to authenticate the transport peer.
virtual bool setCacheTag (std::string *cacheTag=0)
 Installs (or clears) a pointer to an object used for cache management of the content being accessed.
virtual bool setProviderOption (const char *provider, const char *option, const char *value)
 Sets an implementation-specific transport provider option.
virtual void send (std::istream &in)=0
 Sends a stream of data over the transport.
virtual void send (std::istream *in=0)
 Sends an optional stream of data over the transport.
virtual std::istream & receive ()=0
 Returns reference to response stream.
virtual bool isAuthenticated () const =0
 Returns result of authenticating transport peer.
virtual std::string getContentType () const =0
 Returns the MIME type of the response, if any.
virtual long getStatusCode () const
 Returns the status code of the response.

Detailed Description

Encapsulates OpenSSL-capable SOAP transport layer.

Member Typedef Documentation

typedef bool(* xmltooling::OpenSSLSOAPTransport::ssl_ctx_callback_fn)(OpenSSLSOAPTransport *transport, SSL_CTX *ssl_ctx, void *userptr)

OpenSSL context callback for manipulating credentials and validation behavior.

Member Function Documentation

virtual void xmltooling::OpenSSLSOAPTransport::setAuthenticated ( bool  auth)
pure virtual

Sets indicator that the transport peer has been authenticated.

Parameters
authflag to set
virtual bool xmltooling::OpenSSLSOAPTransport::setSSLCallback ( ssl_ctx_callback_fn  fn,
void *  userptr = 0 
)
pure virtual

Sets a callback function to invoke against the SSL_CTX before the handshake.

Parameters
fncallback function
userptra caller-supplied value to pass to the callback function
Returns
true iff the callback was set

The documentation for this class was generated from the following file: