00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00027 #ifndef _RTXNETUTIL_H_
00028 #define _RTXNETUTIL_H_
00029
00030 #ifndef _OS_NOSOCKET
00031
00032 #include "rtxsrc/rtxContext.h"
00033 #include "rtxsrc/rtxSocket.h"
00034
00035 typedef enum {
00036 OSRTNetNoProto, OSRTNetHttp, OSRTNetFtp, OSRTNetOtherP
00037 } OSRTNetProtocol ;
00038
00039 typedef enum {
00040 OSRTNetNoTrans, OSRTNetTCP, OSRTNetUDP, OSRTNetOtherT
00041 } OSRTNetTransport ;
00042
00043 typedef struct OSRTNETURL {
00044 char* buffer;
00045 const char* domain;
00046 const char* path;
00047 int port;
00048 } OSRTNETURL;
00049
00050 typedef struct OSRTNETCONN {
00051 OSCTXT* pctxt;
00052 OSRTSOCKET socket;
00053 OSRTNETURL url;
00054 OSRTNETURL proxy;
00055 OSRTNetProtocol protocol;
00056 OSRTNetTransport transport;
00057 OSBOOL dynamic;
00058 } OSRTNETCONN;
00059
00060 #ifdef __cplusplus
00061 extern "C" {
00062 #endif
00063
00074 EXTERNRT OSRTNETCONN* rtxNetCreateConn (OSCTXT* pctxt, const char* url);
00075
00083 EXTERNRT int rtxNetCloseConn (OSRTNETCONN* pNetConn);
00084
00095 EXTERNRT int rtxNetConnect (OSRTNETCONN* pNetConn);
00096
00107 EXTERNRT int rtxNetInitConn
00108 (OSCTXT* pctxt, OSRTNETCONN* pNetConn, const char* url);
00109
00119 EXTERNRT int rtxNetParseURL (OSRTNETCONN* pNetConn, const char* url);
00120
00121 EXTERNRT int rtxNetParseURL2
00122 (OSRTNETCONN* pNetConn, OSRTNETURL* pNetURL, const char* url);
00123
00124 #ifdef __cplusplus
00125 }
00126 #endif
00127
00128 #endif
00129
00130 #endif