[0001] [0002] [0003] [0004] [0005] [0006] [0007] [0008] [0009] [0010] [0011] [0012] [0013] [0014] [0015] [0016] [0017] [0018] [0019] [0020] [0021] [0022] [0023] [0024] [0025] [0026] [0027] [0028] [0029] [0030] [0031] [0032] [0033] [0034] [0035] [0036] [0037] [0038] [0039] [0040] [0041] [0042] [0043] [0044] [0045] [0046] [0047] [0048] [0049] [0050] [0051] [0052] [0053] [0054] [0055] [0056] [0057] [0058] [0059] [0060] [0061] [0062] [0063] [0064] [0065] [0066] [0067] [0068] [0069] [0070] [0071] [0072] [0073] [0074] [0075] [0076] [0077] [0078] [0079] [0080] [0081] [0082] [0083] [0084] [0085] [0086] [0087] [0088] [0089] [0090] [0091] [0092] [0093] [0094] [0095] [0096] [0097] [0098] [0099]
/*****************************************************************************/ /* Proxy.h 08-AUG-1998 MGD initial */ /*****************************************************************************/ #ifndef PROXY_H_LOADED #define PROXY_H_LOADED 1 #include "proxystruct.h" #include "proxytunnel.h" /* some defaults */ #define PROXY_CACHE_NEGATIVE_SECONDS 300 #define PROXY_CONNECT_PERSIST_MAX 100 #define PROXY_CONNECT_PERSIST_SECONDS 30 #define PROXY_LOCATION_REBUILD_BUFFER 1024 #define PROXY_HEADER_REBUILD_LARGESSE 1024 /* proxy scheme */ #define PROXY_SCHEME_CONNECT 1 #define PROXY_SCHEME_HTTP 2 #define PROXY_SCHEME_HTTPSSL 3 #define PROXY_SCHEME_FTP 4 /* controlling the HTTP->SSL proxy gateway */ #define PROXY_HTTPSSL_NONE 0 #define PROXY_HTTPSSL_443 443 #define PROXY_HTTPSSL_ALL -1 /*# define PROXY_ERROR_HOST_UNKNOWN 0x000182b2*/ /* this is an SS$_ENDOFFILE */ #define PROXY_ERROR_HOST_UNKNOWN 0x00000870 #define PROXY_ERROR_CONNECT_REFUSED 0x00000294 #define PROXY_ERROR_HOST_UNREACHABLE 0x00002094 #define PROXY_ERROR_HOST_DISCONNECTED 0x0000207c #define PROXY_ERROR_HOST_TIMEOUT 0x0000022c /* any FTP proxy specific behaviour that needs to be specially accomodated */ #define PROXY_FTP_SPECIFIC_NONE 0x0 #define PROXY_FTP_SPECIFIC_MADGOAT 0x1 #define PROXY_FORWARDED_DISABLED 0 #define PROXY_FORWARDED_BY 1 #define PROXY_FORWARDED_FOR 2 #define PROXY_FORWARDED_ADDRESS 3 #define PROXY_FORWARDED_NONE 4 /* used by mapping rules */ #define PROXY_XFORWARDEDFOR_DISABLED 0 #define PROXY_XFORWARDEDFOR_ENABLED 1 #define PROXY_XFORWARDEDFOR_ADDRESS 2 #define PROXY_XFORWARDEDFOR_UNKNOWN 3 #define PROXY_XFORWARDEDFOR_NONE 4 /* used by mapping rules */ /* prefix to cookie name */ #define PROXY_AFFINITY_COOKIE_PREFIX "WASDproxyAffinity_" /***********************/ /* function prototypes */ /***********************/ ProxyEnd (PROXY_TASK*); ProxyEndClientShutdownAst (REQUEST_STRUCT*); ProxyEndProxyShutdownAst (PROXY_TASK*); ProxyReadResponseAst (PROXY_TASK*); ProxyReadResponseCacheWrite (PROXY_TASK*); ProxyReadResponseCacheWriteAst (PROXY_TASK*); int ProxyResponseChunked (PROXY_TASK*); int ProxyResponseHeader (PROXY_TASK*); void ProxyResponseNetRead (PROXY_TASK*); void ProxyResponseNetWrite (PROXY_TASK*); void ProxyResponseNetWriteAst (REQUEST_STRUCT*); ProxyReadCacheFailed (PROXY_TASK*); char* ProxyRebuildLocation (PROXY_TASK*, char*); int ProxyRequestBegin (REQUEST_STRUCT*); int ProxyRequestParse (REQUEST_STRUCT*); ProxyRequestRebuild (PROXY_TASK*); ProxyResponseRebuild (PROXY_TASK*, char*, int); int ProxyServiceCount (); ProxyWriteRequest (PROXY_TASK*); ProxyWriteRequestAst (PROXY_TASK*); ProxyWriteRequestBody (REQUEST_STRUCT*); ProxyWriteRequestBodyAst (PROXY_TASK*); void ProxyReworkBody (PROXY_TASK*); void ProxyReworkBuffer (PROXY_TASK*); void ProxyReworkHeader (PROXY_TASK*); void ProxyReworkProcess (PROXY_TASK*); BOOL ProxyReworkResponse (PROXY_TASK*); BOOL ProxyReworkSniffHtml (PROXY_TASK*); void ProxyReworkWriteBody (REQUEST_STRUCT*); void ProxyReworkEnd (REQUEST_STRUCT*); #endif /* PROXY_H_LOADED */ /*****************************************************************************/