/*
- * Copyright 2001-2006 Internet2
+ * Copyright 2001-2007 Internet2
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* Encapsulates OpenSSL-capable SOAP transport layer.
*/
-#if !defined(__xmltooling_opensslsoaptrans_h__) && !defined(XMLTOOLING_NO_XMLSEC)
+#ifndef __xmltooling_opensslsoaptrans_h__
#define __xmltooling_opensslsoaptrans_h__
-#include <xmltooling/signature/CredentialResolver.h>
#include <xmltooling/soap/SOAPTransport.h>
#include <openssl/ssl.h>
virtual ~OpenSSLSOAPTransport() {}
/** OpenSSL context callback for manipulating credentials and validation behavior. */
- typedef bool (*ssl_ctx_callback_fn)(SSL_CTX* ssl_ctx, void* userptr);
+ typedef bool (*ssl_ctx_callback_fn)(OpenSSLSOAPTransport* transport, SSL_CTX* ssl_ctx, void* userptr);
/**
* Sets a callback function to invoke against the SSL_CTX before the handshake.
* @return true iff the callback was set
*/
virtual bool setSSLCallback(ssl_ctx_callback_fn fn, void* userptr=NULL) const=0;
+
+ /**
+ * Sets indicator that the transport peer has been authenticated.
+ *
+ * @param secure flag to set
+ */
+ virtual void setSecure(bool secure)=0;
};
};