rtxSOAP.h
Go to the documentation of this file.00001 /* 00002 * Copyright (c) 2003-2010 Objective Systems, Inc. 00003 * 00004 * This software is furnished under a license and may be used and copied 00005 * only in accordance with the terms of such license and with the 00006 * inclusion of the above copyright notice. This software or any other 00007 * copies thereof may not be provided or otherwise made available to any 00008 * other person. No title to and ownership of the software is hereby 00009 * transferred. 00010 * 00011 * The information in this software is subject to change without notice 00012 * and should not be construed as a commitment by Objective Systems, Inc. 00013 * 00014 * PROPRIETARY NOTICE 00015 * 00016 * This software is an unpublished work subject to a confidentiality agreement 00017 * and is protected by copyright and trade secret law. Unauthorized copying, 00018 * redistribution or other use of this work is prohibited. 00019 * 00020 * The above notice of copyright on this source code product does not indicate 00021 * any actual or intended publication of such source code. 00022 * 00023 *****************************************************************************/ 00027 #ifndef _RTXSOAP_H_ 00028 #define _RTXSOAP_H_ 00029 00030 #include "rtxsrc/rtxCommon.h" 00031 #include "rtxsrc/rtxSocket.h" 00032 00033 #define HTTP_VERSION "1.1" 00034 00035 typedef enum { OSSOAPV1, OSSOAPV2 } OSSoapVersion; 00036 00037 typedef struct OSSOAPCONN { 00038 OSCTXT* pctxt; 00039 OSRTSOCKET socket; 00040 OSSoapVersion soapVersion; 00041 const char* endpoint; 00042 char* host; 00043 int port; 00044 const char* path; 00045 const char* soapAction; 00046 OSBOOL keepAlive; 00047 OSBOOL chunked; 00048 OSOCTET spare[2]; /* maintain word boundary */ 00049 size_t contentLength; 00050 } OSSOAPCONN; 00051 00052 #ifdef __cplusplus 00053 extern "C" { 00054 #endif 00055 00065 EXTERNRT int rtxSoapInitConn 00066 (OSSOAPCONN* pSoapConn, OSCTXT* pctxt, OSSoapVersion soapv, const char* url); 00067 00076 EXTERNRT int rtxSoapAcceptConn 00077 (OSRTSOCKET listenSocket, OSSOAPCONN* pSoapConn); 00078 00087 EXTERNRT int rtxSoapConnect (OSSOAPCONN* pSoapConn); 00088 00098 EXTERNRT int rtxSoapRecvHttp (OSSOAPCONN* pSoapConn); 00099 00113 EXTERNRT int rtxSoapRecvHttpContent 00114 (OSSOAPCONN* pSoapConn, OSOCTET** ppbuf); 00115 00116 EXTERNRT int rtxSoapRecvHttpLine 00117 (OSSOAPCONN* pSoapConn, char* lbuf, size_t lbufsiz); 00118 00129 EXTERNRT int rtxSoapSendHttp 00130 (OSSOAPCONN* pSoapConn, const OSUTF8CHAR* soapMsg); 00131 00132 EXTERNRT int rtxHttpParseHdr 00133 (OSSOAPCONN* pSoapConn, const char* key, const char* value); 00134 00135 EXTERNRT int rtxHttpPost (OSSOAPCONN* pSoapConn, size_t count); 00136 00137 EXTERNRT int rtxHttpPostHdr 00138 (OSSOAPCONN* pSoapConn, const char* key, const char* value); 00139 00140 EXTERNRT int rtxHttpTagCmp (const char *s, const char *t); 00141 00142 #ifdef __cplusplus 00143 } 00144 #endif 00145 00146 #endif /* _RTXSOAP_H_ */
©Copyright 2010. Objective Systems, Inc. All Rights Reserved.
