You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by da...@apache.org on 2004/01/27 05:12:36 UTC
cvs commit: ws-axis/c/include/axis/client/transport/axis Channel.hpp HttpTransport.hpp TransportFactory.hpp
damitha 2004/01/26 20:12:36
Modified: c/include/axis/client/transport/axis Channel.hpp
HttpTransport.hpp TransportFactory.hpp
Log:
Applied ssl security patch given by
Mark Elrod
Vindicia, Inc.
2755 Campus Drive, Suite 240
San Mateo, California 94403
Revision Changes Path
1.5 +12 -12 ws-axis/c/include/axis/client/transport/axis/Channel.hpp
Index: Channel.hpp
===================================================================
RCS file: /home/cvs/ws-axis/c/include/axis/client/transport/axis/Channel.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- Channel.hpp 14 Jan 2004 12:57:09 -0000 1.4
+++ Channel.hpp 27 Jan 2004 04:12:36 -0000 1.5
@@ -141,40 +141,40 @@
{
public:
Channel();
- ~Channel();
+ virtual ~Channel();
/// Open a socket to a given remote node/server address with remote port
- bool Open(std::string& p_RemoteNode, unsigned short p_RemoteEnd) throw (ChannelException);
+ virtual bool Open(std::string& p_RemoteNode, unsigned short p_RemoteEnd) throw (ChannelException);
/// Close all open sockets and clean up
- void Close(){CloseChannel();}
+ virtual void Close(){CloseChannel();}
/// Read from a open socket and store read message in msg
- const Channel& operator >> (std::string& msg);
+ virtual const Channel& operator >> (std::string& msg);
/// Write a given message (msg) to the end-point using the open socket
- const Channel& operator << (const char* msg);
+ virtual const Channel& operator << (const char* msg);
/// Return last error (if any).
- const std::string& GetLastError(){return m_LastErr;}
+ virtual const std::string& GetLastError(){return m_LastErr;}
/// Set the SOAP transport handler.
- void SetTransportHandler(Transport* transport){m_pTransportHandler = transport;}
+ virtual void SetTransportHandler(Transport* transport){m_pTransportHandler = transport;}
-private:
+protected:
/// OS specific initilization
- bool Init();
+ virtual bool Init();
/// Report error on read/write
- void Error(const char * err);
+ virtual void Error(const char * err);
/// Close & clean-up the open socket/system resources
- void CloseChannel();
+ virtual void CloseChannel();
unsigned int m_Sock; ///< Socket descriptor
std::string m_RemoteNode; ///< Remote address could be IP/host-name
unsigned short m_RemoteEnd; ///< Remote port number
- std::string m_LastErr; ///< Last error as a string
+ std::string m_LastErr; ///< Last error as a string
Transport * m_pTransportHandler; ///< Transport handler for validation purpose
};
1.8 +9 -3 ws-axis/c/include/axis/client/transport/axis/HttpTransport.hpp
Index: HttpTransport.hpp
===================================================================
RCS file: /home/cvs/ws-axis/c/include/axis/client/transport/axis/HttpTransport.hpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- HttpTransport.hpp 14 Jan 2004 12:57:09 -0000 1.7
+++ HttpTransport.hpp 27 Jan 2004 04:12:36 -0000 1.8
@@ -73,6 +73,7 @@
#include <vector>
#include "Transport.hpp"
#include "Channel.hpp"
+#include "SecureChannel.hpp"
/**
@@ -94,12 +95,16 @@
enum Type{POST, MPOST};
/// Create HTTP transport with provided URL as remote address, set HTTP category default to POST
- HttpTransport(Url url) : m_Typ(POST) {m_Url = url; m_IsHttpHeader = 0; m_HttpBindDone = false;}
+ //HttpTransport(Url url) : m_Typ(POST) {m_Url = url; m_IsHttpHeader = 0; m_HttpBindDone = false;}
/// Create HTTP transport with provided remote address as URL-string, set HTTP category default to POST
- HttpTransport(std::string& strUrl) : m_Typ(POST) {m_Url = Url(strUrl); m_IsHttpHeader = 0;m_strUrl = strUrl; m_HttpBindDone = false;}
+ //HttpTransport(std::string& strUrl) : m_Typ(POST) {m_Url = Url(strUrl); m_IsHttpHeader = 0;m_strUrl = strUrl; m_HttpBindDone = false;}
~HttpTransport();
+ HttpTransport(std::string& strUrl, bool secure);
+
+ HttpTransport(Url url, bool secure);
+
/// Initialize HTTP transport by establishing a channel to the remote end.
bool Init();
@@ -148,11 +153,12 @@
std::string m_PayLoad; ///< Holds the payload
Header_t m_AdditionalHeader; ///< Additional Header fields as name value pairs
private:
- Channel m_Channel;
+ Channel* m_Channel;
bool m_HttpBindDone;
int m_IsHttpHeader;
std::string m_sHeader;
int m_intBodyLength;
+ bool m_Secure;
};
#endif //_AXIS_HTTPTRANSPORT_HPP
1.3 +1 -1 ws-axis/c/include/axis/client/transport/axis/TransportFactory.hpp
Index: TransportFactory.hpp
===================================================================
RCS file: /home/cvs/ws-axis/c/include/axis/client/transport/axis/TransportFactory.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- TransportFactory.hpp 23 Oct 2003 08:26:32 -0000 1.2
+++ TransportFactory.hpp 27 Jan 2004 04:12:36 -0000 1.3
@@ -86,7 +86,7 @@
TransportFactory(){};
virtual ~TransportFactory(){};
public:
- static Transport* GetTransport(Url& url); // return transport object according to URL info
+ static Transport* GetTransport(Url& url, bool secure); // return transport object according to URL info
};
#endif // _AXIS_TRANSPORTFACTORY_HPP