亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? htresponse.c

?? firtext搜索引擎源碼
?? C
字號(hào):
/***	RESPONSE MANAGER****	(c) COPYRIGHT MIT 1995.**	Please first read the full copyright statement in the file COPYRIGH.**	@(#) $Id: HTResponse.c,v 2.12 2000/10/30 10:04:23 kahan Exp $**** Authors**	HFN	Henrik Frystyk, frystyk@w3.org*//* Library include files */#include "wwwsys.h"#include "WWWUtil.h"#include "HTHeader.h"#include "HTLib.h"#include "HTWWWStr.h"#include "HTResMan.h"					 /* Implemented here *//* --------------------------------------------------------------------------*//*			Create and delete the HTResponse Object		     *//* --------------------------------------------------------------------------*/PUBLIC HTResponse * HTResponse_new (void){    HTResponse * me;    if ((me = (HTResponse *) HT_CALLOC(1, sizeof(HTResponse))) == NULL)	HT_OUTOFMEM("HTResponse_new()");        /* Default content-* values */    me->content_type = WWW_UNKNOWN;    me->content_length = -1;    /* Default retry after value */    me->retry_after = -1;    /* By default a response is not cachable */    me->cachable = NO;    HTTRACE(CORE_TRACE, "Response.... Created %p\n" _ me);    return me;}PUBLIC BOOL HTResponse_delete (HTResponse * me){    if (me) {	HTTRACE(CORE_TRACE, "Response.... Delete %p\n" _ me);	/* Access Authentication */	HT_FREE(me->realm);	HT_FREE(me->scheme);	if (me->challenge) HTAssocList_delete(me->challenge);	/* Connection headers */	if (me->connection) HTAssocList_delete(me->connection);	/* PEP Information */	if (me->protocol) HTAssocList_delete(me->protocol);	if (me->protocol_request) HTAssocList_delete(me->protocol_request);	if (me->protocol_info) HTAssocList_delete(me->protocol_info);	/* Cache control headers */	if (me->cache_control) HTAssocList_delete(me->cache_control);	/* Byte ranges */	if (me->byte_ranges) HTAssocList_delete(me->byte_ranges);	/* Transfer Encodings */	if (me->transfer_encoding) HTList_delete(me->transfer_encoding);	/* Trailers */	if (me->trailer) HTAssocList_delete(me->trailer);	/* Variants */	if (me->variants) HTAssocList_delete(me->variants);	/*	** Only delete Content Type parameters and original headers if the	** information is not used elsewhere, for example by the anchor	** object.	*/	if (!me->cached) {	    /* Content type parameters */	    if (me->type_parameters) HTAssocList_delete(me->type_parameters);	    /* Content Encodings */	    if (me->content_encoding) HTList_delete(me->content_encoding);	    /* List of all headers */	    if (me->headers) HTAssocList_delete(me->headers);	}	/* HTTP reason string */	if (me->reason)  HT_FREE (me->reason); 	HT_FREE(me);	return YES;    }    return NO;}/* --------------------------------------------------------------------------*//*			Methods on the HTResponse Object		     *//* --------------------------------------------------------------------------*//***    Redirection information*/PUBLIC HTAnchor * HTResponse_redirection (HTResponse * me){    return (me ? me->redirectionAnchor : NULL);}PUBLIC BOOL HTResponse_setRedirection (HTResponse * me, HTAnchor * anchor){    if (me && anchor) {	me->redirectionAnchor = (HTAnchor *) HTAnchor_parent(anchor);	return YES;    }    return NO;}/***	When to retry a response if HT_RETRY**	Returns -1 if not available*/PUBLIC time_t HTResponse_retryTime (HTResponse * me){    return me ? me->retry_after : -1;}PUBLIC BOOL HTResponse_setRetryTime (HTResponse * me, time_t retry){    if (me) {	me->retry_after = retry;	return YES;    }    return NO;}/***  Access Authentication Challenges*/PUBLIC BOOL HTResponse_addChallenge (HTResponse * me,				    char * token, char * value){    if (me) {	if (!me->challenge) me->challenge = HTAssocList_new();	return HTAssocList_addObject(me->challenge, token, value);    }    return NO;}PUBLIC BOOL HTResponse_deleteChallengeAll (HTResponse * me){    if (me && me->challenge) {	HTAssocList_delete(me->challenge);	me->challenge = NULL;	return YES;    }    return NO;}PUBLIC HTAssocList * HTResponse_challenge (HTResponse * me){    return (me ? me->challenge : NULL);}/***  Access Authentication Realms*/PUBLIC BOOL HTResponse_setRealm (HTResponse * me, char * realm){    if (me && realm) {	StrAllocCopy(me->realm, realm);	return YES;    }    return NO;}PUBLIC const char * HTResponse_realm (HTResponse * me){    return (me ? me->realm : NULL);}/***  Access Authentication Schemes*/PUBLIC BOOL HTResponse_setScheme (HTResponse * me, char * scheme){    if (me && scheme) {	StrAllocCopy(me->scheme, scheme);	return YES;    }    return NO;}PUBLIC const char * HTResponse_scheme (HTResponse * me){    return (me ? me->scheme : NULL);}/***  Connection Directives*/PUBLIC BOOL HTResponse_addConnection (HTResponse * me,				      char * token, char * value){    if (me) {	if (!me->connection) me->connection = HTAssocList_new();	return HTAssocList_replaceObject(me->connection, token, value);    }    return NO;}PUBLIC BOOL HTResponse_deleteConnectionAll (HTResponse * me){    if (me && me->connection) {	HTAssocList_delete(me->connection);	me->connection = NULL;	return YES;    }    return NO;}PUBLIC HTAssocList * HTResponse_connection (HTResponse * me){    return (me ? me->connection : NULL);}/***  PEP Protocol header*/PUBLIC BOOL HTResponse_addProtocol (HTResponse * me,				    char * token, char * value){    if (me) {	if (!me->protocol) me->protocol = HTAssocList_new();	return HTAssocList_addObject(me->protocol, token,value);    }    return NO;}PUBLIC BOOL HTResponse_deleteProtocolAll (HTResponse * me){    if (me && me->protocol) {	HTAssocList_delete(me->protocol);	me->protocol = NULL;	return YES;    }    return NO;}PUBLIC HTAssocList * HTResponse_protocol (HTResponse * me){    return (me ? me->protocol : NULL);}/***  PEP Protocol Info header*/PUBLIC BOOL HTResponse_addProtocolInfo (HTResponse * me,					char * token, char * value){    if (me) {	if (!me->protocol_info) me->protocol_info = HTAssocList_new();	return HTAssocList_addObject(me->protocol_info, token,value);    }    return NO;}PUBLIC BOOL HTResponse_deleteProtocolInfoAll (HTResponse * me){    if (me && me->protocol_info) {	HTAssocList_delete(me->protocol_info);	me->protocol_info = NULL;	return YES;    }    return NO;}PUBLIC HTAssocList * HTResponse_protocolInfo (HTResponse * me){    return (me ? me->protocol_info : NULL);}/***  PEP Protocol request header*/PUBLIC BOOL HTResponse_addProtocolRequest (HTResponse * me,					   char * token, char * value){    if (me) {	if (!me->protocol_request) me->protocol_request = HTAssocList_new();	return HTAssocList_addObject(me->protocol_request, token,value);    }    return NO;}PUBLIC BOOL HTResponse_deleteProtocolRequestAll (HTResponse * me){    if (me && me->protocol_request) {	HTAssocList_delete(me->protocol_request);	me->protocol_request = NULL;	return YES;    }    return NO;}PUBLIC HTAssocList * HTResponse_protocolRequest (HTResponse * me){    return (me ? me->protocol_request : NULL);}/***  Cache control directives received in the response*/PUBLIC BOOL HTResponse_deleteCacheControlAll (HTResponse * me){    if (me && me->cache_control) {	HTAssocList_delete(me->cache_control);	me->cache_control = NULL;	return YES;    }    return NO;}PUBLIC HTAssocList * HTResponse_cacheControl (HTResponse * me){    return (me ? me->cache_control : NULL);}PUBLIC BOOL HTResponse_addCacheControl (HTResponse * me,				       char * token, char * value){    if (me) {	if (!me->cache_control)	    me->cache_control=HTAssocList_new();	return HTAssocList_replaceObject(me->cache_control,					 token, value);    }    return NO;}/***  Check whether we can cache this object or not.*/PUBLIC HTCachable HTResponse_isCachable (HTResponse * me){    if (me) {	/* We may already have decided that this object is not cachable */	if (me->cachable == HT_NO_CACHE) return HT_NO_CACHE;#if 0	/*  We don't cache negotiated resources for the moment */	if (me->variants) return HT_NO_CACHE;#endif	/*	**  Check if we should cache this object or not. We are very liberale	**  in that we cache everything except if we explicit are told not to	**  cache (no-store, no-cache). In all other cases we can get around	**  it by forcing revalidation	*/	if (me->cache_control) {	    char * token;	    if ((token=HTAssocList_findObject(me->cache_control, "no-store")))		return HT_NO_CACHE;	    if ((token=HTAssocList_findObject(me->cache_control, "no-cache")))		if (!*token) return HT_NO_CACHE;	}	/* Cache everything else */	return me->cachable;    }    return HT_NO_CACHE;}PUBLIC BOOL HTResponse_setCachable (HTResponse * me, HTCachable mode){    if (me) {	me->cachable = mode;	return YES;    }    return NO;}PUBLIC BOOL HTResponse_isCached (HTResponse * me, BOOL mode){    if (me) {	me->cached = mode;	return YES;    }    return NO;}PUBLIC time_t HTResponse_maxAge (HTResponse * me){    if (me && me->cache_control) {	char * token = HTAssocList_findObject(me->cache_control, "max-age");	if (token) return atol(token);    }    return (time_t) -1;}PUBLIC BOOL HTResponse_mustRevalidate (HTResponse * me){    return me && me->cache_control &&	(HTAssocList_findObject(me->cache_control,				"must-revalidate") != NULL);}PUBLIC char * HTResponse_noCache (HTResponse * me){    return (me && me->cache_control) ?	HTAssocList_findObject(me->cache_control,			       "no-cache") : NULL;}PUBLIC char * HTResponse_etag (HTResponse * me){    if (me && me->headers) {	char * value = HTAssocList_findObject(me->headers, "etag");	char * etag = HTNextField(&value);	return etag;    }    return NULL;}/***  Byte ranges*/PUBLIC BOOL HTResponse_deleteRangeAll (HTResponse * me){    if (me && me->byte_ranges) {	HTAssocList_delete(me->byte_ranges);	me->byte_ranges = NULL;	return YES;    }    return NO;}PUBLIC BOOL HTResponse_addRange (HTResponse * me, char * unit, char * range){    if (me) {	if (!me->byte_ranges) me->byte_ranges = HTAssocList_new();	return HTAssocList_addObject(me->byte_ranges, unit, range);    }    return NO;}PUBLIC HTAssocList * HTResponse_range (HTResponse * me){    return (me ? me->byte_ranges : NULL);}/***  Content Length*/PUBLIC long int HTResponse_length (HTResponse * me){    return me ? me->content_length : -1;}PUBLIC void HTResponse_setLength (HTResponse * me, long int length){    if (me) me->content_length = length;}PUBLIC void HTResponse_addLength (HTResponse * me, long int delta_length){    if (me) {	if (me->content_length < 0)	    me->content_length = delta_length;	else	    me->content_length += delta_length;    }}/***  Content-Type*/PUBLIC HTFormat HTResponse_format (HTResponse * me){    return me ? me->content_type : NULL;}PUBLIC void HTResponse_setFormat (HTResponse * me, HTFormat form){    if (me) me->content_type = form;}PUBLIC HTAssocList * HTResponse_formatParam (HTResponse * me){    return me ? me->type_parameters : NULL;}PUBLIC BOOL HTResponse_addFormatParam (HTResponse * me,				     const char * name, const char * value){    if (me) {	if (!me->type_parameters) me->type_parameters = HTAssocList_new();	return HTAssocList_replaceObject(me->type_parameters, name, value);    }    return NO;}/***  Charset parameter to Content-Type*/PUBLIC HTCharset HTResponse_charset (HTResponse * me){    if (me && me->type_parameters) {	char * charset = HTAssocList_findObject(me->type_parameters,"charset");	return HTAtom_for(charset);    }    return NULL;}PUBLIC BOOL HTResponse_setCharset (HTResponse * me, HTCharset charset){    return HTResponse_addFormatParam(me, "charset", HTAtom_name(charset));}/***	Content Encoding*/PUBLIC BOOL HTResponse_addEncoding (HTResponse * me, HTEncoding encoding){    if (me && encoding) {	if (!me->content_encoding) me->content_encoding = HTList_new();	return HTList_addObject(me->content_encoding, encoding);    }    return NO;}PUBLIC HTList * HTResponse_encoding (HTResponse * me){    return me ? me->content_encoding : NULL;}/***	Transfer Encoding*/PUBLIC BOOL HTResponse_addTransfer (HTResponse * me, HTEncoding transfer){    if (me && transfer) {	if (!me->transfer_encoding) me->transfer_encoding = HTList_new();	return HTList_addObject(me->transfer_encoding, transfer);    }    return NO;}PUBLIC HTList * HTResponse_transfer (HTResponse * me){    return me ? me->transfer_encoding : NULL;}/***	Content Transfer Encoding*/PUBLIC HTEncoding HTResponse_contentTransferEncoding (HTResponse * me){    return me ? me->cte : NULL;}PUBLIC BOOL HTResponse_setContentTransferEncoding (HTResponse * me, HTEncoding transfer){    if (me) {	me->cte = transfer;	return YES;    }    return NO;}PUBLIC BOOL HTResponse_addVariant (HTResponse * me, char * token, char * value){    if (me) {	if (!me->variants) me->variants =HTAssocList_new();	return HTAssocList_replaceObject (me->variants, token, value);    }    return NO;}PUBLIC BOOL HTResponse_deleteVariantAll (HTResponse * me){    if (me && me->variants) {	HTAssocList_delete(me->variants);	me->variants = NULL;	return YES;    }    return NO;}PUBLIC HTAssocList * HTResponse_variant (HTResponse * me){    return (me ? me->variants : NULL);}/***  Trailers*/PUBLIC BOOL HTResponse_addTrailer (HTResponse * me,				   char * token, char * value){    if (me) {	if (!me->trailer) me->trailer = HTAssocList_new();	return HTAssocList_addObject(me->trailer, token, value);    }    return NO;}PUBLIC BOOL HTResponse_deleteTrailerAll (HTResponse * me){    if (me && me->trailer) {	HTAssocList_delete(me->trailer);	me->trailer = NULL;	return YES;    }    return NO;}PUBLIC HTAssocList * HTResponse_trailer (HTResponse * me){    return (me ? me->trailer : NULL);}/***  Original header information*/PUBLIC BOOL HTResponse_addHeader (HTResponse * me,				  char * token, char * value){    if (me) {	if (!me->headers) me->headers = HTAssocList_new();	return HTAssocList_addObject(me->headers, token, value);    }    return NO;}PUBLIC BOOL HTResponse_deleteHeaderAll (HTResponse * me){    if (me && me->headers) {	HTAssocList_delete(me->headers);	me->headers = NULL;	return YES;    }    return NO;}PUBLIC HTAssocList * HTResponse_header (HTResponse * me){    return (me ? me->headers : NULL);}PUBLIC HTAssocList * HTResponse_handOverHeader (HTResponse * me){    HTAssocList * headers = NULL;    if (me) {	headers = me->headers;	me->headers = NULL;	me->type_parameters = NULL;	/* @@@ */    }    return headers;}/***  HTTP reason string*/PUBLIC char * HTResponse_reason (HTResponse * me){    if (me) {      return me->reason;    }    return NULL;}PUBLIC BOOL HTResponse_setReason (HTResponse * me, char * reason){  if (me && reason && *reason) {      StrAllocCopy(me->reason, reason);      return YES;    }  return NO;}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产日韩av一区| 韩国欧美国产1区| 日韩精品免费视频人成| 免费久久精品视频| 国产成人日日夜夜| 在线视频你懂得一区| 欧美日韩一区二区不卡| 久久精品亚洲一区二区三区浴池| 国产精品不卡视频| 日本vs亚洲vs韩国一区三区二区| 国产精品69毛片高清亚洲| 在线区一区二视频| 久久久久久久综合日本| 亚洲精品乱码久久久久久日本蜜臀| 日韩经典一区二区| 菠萝蜜视频在线观看一区| 欧美日韩和欧美的一区二区| 国产欧美日韩综合| 首页综合国产亚洲丝袜| 成人精品一区二区三区四区| 欧美伦理影视网| 国产精品热久久久久夜色精品三区| 亚洲第一激情av| 粉嫩13p一区二区三区| 欧美剧情片在线观看| 欧美激情一区三区| 奇米一区二区三区av| 91日韩在线专区| 久久夜色精品国产欧美乱极品| 91麻豆免费观看| 欧美日韩精品欧美日韩精品一综合| 久久先锋资源网| 欧美日韩一级片网站| 日韩精品一区二区三区视频在线观看 | 亚洲一级二级三级在线免费观看| 麻豆免费看一区二区三区| 91女神在线视频| 久久精品人人做人人综合| 五月婷婷久久丁香| 一本久道久久综合中文字幕| 久久久精品天堂| 免费美女久久99| 欧美视频三区在线播放| 国产精品乱人伦一区二区| 激情小说欧美图片| 欧美日韩日本视频| 亚洲精品国产无天堂网2021| 成人免费黄色在线| 国产欧美一区二区三区鸳鸯浴 | 精品成人一区二区三区| 亚洲国产成人tv| 91香蕉国产在线观看软件| 国产欧美日韩视频在线观看| 狠狠网亚洲精品| 欧美一级免费大片| 日韩在线一区二区三区| 欧美色精品天天在线观看视频| 亚洲欧美另类久久久精品2019| 懂色av一区二区在线播放| 久久久久久久电影| 精品一区二区在线视频| 欧美岛国在线观看| 久久精品国产澳门| 91麻豆精品国产91| 日韩av电影天堂| 91精品国产欧美一区二区| 午夜免费欧美电影| 在线成人av影院| 天天做天天摸天天爽国产一区| 欧美日韩午夜在线| 午夜av电影一区| 91精品在线一区二区| 爽好多水快深点欧美视频| 欧美日韩在线播放一区| 亚洲777理论| 欧美日本韩国一区| 免费高清在线一区| 精品国偷自产国产一区| 黄网站免费久久| 国产丝袜欧美中文另类| 不卡av在线网| 亚洲在线观看免费| 在线电影一区二区三区| 日韩激情在线观看| www日韩大片| 成人一级片在线观看| 亚洲三级免费电影| 欧美三级三级三级| 偷拍与自拍一区| 日韩亚洲欧美在线| 国产一区二区福利| 成人欧美一区二区三区在线播放| 91网站最新地址| 亚洲电影视频在线| 欧美第一区第二区| 成人国产亚洲欧美成人综合网 | 色综合天天做天天爱| 亚洲国产中文字幕在线视频综合| 欧美日韩二区三区| 久久精品噜噜噜成人88aⅴ| 国产亚洲短视频| 99麻豆久久久国产精品免费 | 在线不卡免费欧美| 麻豆精品久久久| 中文一区二区完整视频在线观看| 99精品黄色片免费大全| 亚洲福利视频一区二区| 精品入口麻豆88视频| 不卡一卡二卡三乱码免费网站| 亚洲精品视频在线观看网站| 欧美剧情片在线观看| 成人做爰69片免费看网站| 一区二区三区.www| 91精品国产福利| yourporn久久国产精品| 亚洲 欧美综合在线网络| 久久久综合九色合综国产精品| 91啪亚洲精品| 国产又粗又猛又爽又黄91精品| 综合亚洲深深色噜噜狠狠网站| 在线成人高清不卡| 99久久久免费精品国产一区二区| 五月天丁香久久| 国产精品成人免费在线| 日韩欧美国产一区二区三区| 97久久超碰国产精品| 六月丁香婷婷久久| 一区二区三区四区精品在线视频| 欧美xxxxxxxxx| 在线欧美一区二区| 成人天堂资源www在线| 日本免费在线视频不卡一不卡二| 久久久久综合网| 在线成人av网站| 色香色香欲天天天影视综合网| 国内精品免费**视频| 亚洲午夜激情网页| 中国av一区二区三区| 欧美成人一区二区三区在线观看| 91亚洲精品久久久蜜桃| 狠狠色综合色综合网络| 午夜精品久久久久久不卡8050| 国产精品国产自产拍高清av王其| 欧美一区二区久久久| 色999日韩国产欧美一区二区| 激情综合五月婷婷| 亚洲香肠在线观看| 国产精品丝袜91| 欧美mv和日韩mv的网站| 欧美色网一区二区| 97成人超碰视| 国产东北露脸精品视频| 麻豆91精品视频| 亚洲一区欧美一区| 亚洲欧美另类在线| 亚洲欧洲成人自拍| 国产欧美中文在线| 久久精品视频一区二区| 91精品国产色综合久久不卡电影| 91高清在线观看| 91蜜桃网址入口| 国产69精品久久99不卡| 国产在线视频一区二区三区| 日韩成人一级大片| 亚洲成人动漫精品| 亚洲在线视频免费观看| 中文字幕一区二区三区色视频| 国产婷婷一区二区| 精品国产乱码久久久久久图片 | 国产成人av电影免费在线观看| 久久精品国产精品青草| 麻豆精品新av中文字幕| 美国av一区二区| 秋霞av亚洲一区二区三| 日本女人一区二区三区| 日本欧美一区二区三区| 蜜桃免费网站一区二区三区| 免费观看久久久4p| 麻豆中文一区二区| 久久精品国产一区二区| 久久99精品久久久久久动态图| 蜜桃免费网站一区二区三区| 美腿丝袜亚洲三区| 精品一区二区三区av| 激情欧美一区二区三区在线观看| 美女在线观看视频一区二区| 久久精工是国产品牌吗| 久久99精品国产麻豆不卡| 激情另类小说区图片区视频区| 精品在线你懂的| 成人亚洲一区二区一| 99国产欧美久久久精品| 色哟哟一区二区在线观看| 欧美亚一区二区| 欧美肥胖老妇做爰| 2020国产成人综合网| 国产午夜精品久久久久久免费视| 国产欧美一区二区三区在线老狼| 日韩理论片网站| 亚洲成人第一页|