00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef OpenSOAP_Transport_H
00012 #define OpenSOAP_Transport_H
00013
00014 #include <OpenSOAP/ByteArray.h>
00015 #include <OpenSOAP/Envelope.h>
00016
00023 #ifdef __cplusplus
00024 extern "C" {
00025 #endif
00026
00031 typedef struct tagOpenSOAPTransport OpenSOAPTransport;
00032
00037 typedef OpenSOAPTransport *OpenSOAPTransportPtr;
00038
00047 int
00048 OPENSOAP_API
00049 OpenSOAPTransportCreate(OpenSOAPTransportPtr * t);
00050
00059 int
00060 OPENSOAP_API
00061 OpenSOAPTransportRelease(OpenSOAPTransportPtr t);
00062
00073 int
00074 OPENSOAP_API
00075 OpenSOAPTransportSend(OpenSOAPTransportPtr t,
00076 OpenSOAPEnvelopePtr soap_env);
00077
00088 int
00089 OPENSOAP_API
00090 OpenSOAPTransportReceive(OpenSOAPTransportPtr t,
00091 OpenSOAPEnvelopePtr * soap_env);
00092
00101 int
00102 OPENSOAP_API
00103 OpenSOAPTransportConnect(OpenSOAPTransportPtr t);
00104
00113 int
00114 OPENSOAP_API
00115 OpenSOAPTransportDisconnect(OpenSOAPTransportPtr t);
00116
00131 int
00132 OPENSOAP_API
00133 OpenSOAPTransportInvokeByteArray(OpenSOAPTransportPtr t,
00134 OpenSOAPByteArrayPtr request,
00135 OpenSOAPByteArrayPtr response,
00136 int * tp_status);
00137
00169 int
00170 OPENSOAP_API
00171 OpenSOAPTransportInvoke(OpenSOAPTransportPtr t,
00172 OpenSOAPEnvelopePtr request,
00173 OpenSOAPEnvelopePtr * response);
00174
00185 int
00186 OPENSOAP_API
00187 OpenSOAPTransportSetSOAPAction(OpenSOAPTransportPtr t,
00188 const char * soap_action);
00189
00200 int
00201 OPENSOAP_API
00202 OpenSOAPTransportSetURL(OpenSOAPTransportPtr t,
00203 const char * url);
00204
00217 int
00218 OPENSOAP_API
00219 OpenSOAPTransportSetHeader(OpenSOAPTransportPtr t,
00220 const char * header_name,
00221 const char * header_value);
00222
00235 int
00236 OPENSOAP_API
00237 OpenSOAPTransportGetHeader(OpenSOAPTransportPtr t,
00238 const char * header_name,
00239 char ** header_value);
00240
00251 int
00252 OPENSOAP_API
00253 OpenSOAPTransportSetCharset(OpenSOAPTransportPtr t,
00254 const char * charset);
00255
00264 int
00265 OPENSOAP_API
00266 OpenSOAPTransportSMTPSetHostname(OpenSOAPTransportPtr s);
00267
00276 int
00277 OPENSOAP_API
00278 OpenSOAPTransportSMTPSetFrom(OpenSOAPTransportPtr t);
00279
00288 int
00289 OPENSOAP_API
00290 OpenSOAPTransportSMTPSetTo(OpenSOAPTransportPtr t);
00291
00304 int
00305 OPENSOAP_API
00306 OpenSOAPTransportSetAuthUserPass(OpenSOAPTransportPtr t,
00307 const char * user,
00308 const char * passwd);
00309
00314 #define OPENSOAP_AUTH_TYPE_BASIC (1)
00315
00320 #define OPENSOAP_AUTH_TYPE_DIGEST (2)
00321
00326 #define OPENSOAP_AUTH_TYPE_ANY (0)
00327
00344 int
00345 OPENSOAP_API
00346 OpenSOAPTransportSetAuthType(OpenSOAPTransportPtr t,
00347 int auth_type );
00348
00371 int
00372 OPENSOAP_API
00373 OpenSOAPTransportSetProxy(OpenSOAPTransportPtr t,
00374 const char * host,
00375 int port,
00376 const char * user,
00377 const char * passwd,
00378 int auth_type);
00379
00384 #define OPENSOAP_SSL_VER_SSL2 (1)
00385
00390 #define OPENSOAP_SSL_VER_SSL3 (2)
00391
00396 #define OPENSOAP_SSL_VER_TLS1 (4)
00397
00403 #define OPENSOAP_SSL_VER_ALL (0)
00404
00418 int
00419 OPENSOAP_API
00420 OpenSOAPTransportSetSSLVersion(OpenSOAPTransportPtr t,
00421 int ssl_version );
00422
00448 int
00449 OPENSOAP_API
00450 OpenSOAPTransportSetSSLCert(OpenSOAPTransportPtr t,
00451 const char * ca_file,
00452 const char * ca_dir,
00453 const char * certchain_file,
00454 const char * privkey_file,
00455 int verify_level );
00456
00457 #ifdef __cplusplus
00458 }
00459 #endif
00460
00461 #endif