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

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

?? htsocket.c

?? www工具包. 這是W3C官方支持的www支撐庫(kù). 其中提供通用目的的客戶端的WebAPI: complete HTTP/1.1 (with caching, pipelining, PUT, POS
?? C
字號(hào):
/*								     HTSocket.c**	LOAD A SOCKET****	(c) COPYRIGHT MIT 1995.**	Please first read the full copyright statement in the file COPYRIGH.**	@(#) $Id: HTSocket.c,v 2.35 1999/07/07 15:43:28 frystyk Exp $****** HISTORY:**	6 June 95  HFN	Written*//* Library Include files */#include "wwwsys.h"#include "WWWUtil.h"#include "WWWCore.h"#include "WWWTrans.h"#include "HTNetMan.h"#include "HTSocket.h"					 /* Implemented here */#ifndef RAW_PORT#define RAW_PORT 1024#endif/* Final states have negative value */typedef enum _RAWState {    RAW_ERROR		= -2,    RAW_OK		= -1,    RAW_BEGIN		= 0,    RAW_NEED_STREAM,    RAW_READ} RawState;/* This is the context structure for the this module */typedef struct _raw_info {    RawState		state;		  /* Current State of the connection */    HTNet *		net;    HTRequest *		request;} raw_info;struct _HTStream {    const HTStreamClass *	isa;};struct _HTInputStream {    const HTInputStreamClass *	isa;};/* ------------------------------------------------------------------------- */PRIVATE int RawCleanup (HTRequest * request, int status){    HTNet * net = HTRequest_net(request);    raw_info * raw = (raw_info *) HTNet_context(net);    HTTRACE(PROT_TRACE, "Raw clean... Called with status %d, net %p\n" _ status _ net);    if (status == HT_INTERRUPTED) {    	HTAlertCallback * cbf = HTAlert_find(HT_PROG_INTERRUPT);    	if (cbf) (*cbf)(request, HT_PROG_INTERRUPT,	    HT_MSG_NULL, NULL, NULL, NULL);    } else if (status == HT_TIMEOUT) {    	HTAlertCallback * cbf = HTAlert_find(HT_PROG_TIMEOUT);    	if (cbf) (*cbf)(request, HT_PROG_TIMEOUT,	    HT_MSG_NULL, NULL, NULL, NULL);    }	    /* Delete the Net object */    HTNet_delete(net, HT_ERROR);    HT_FREE(raw);    return YES;}/*	HTLoadSocket**	------------**	Given an open socket, this routine loads what ever is on the socket**** On entry,**      request		This is the request structure** On Exit**	returns		HT_ERROR	Error has occured in call back**			HT_OK		Call back was OK*/PRIVATE int SocketEvent (SOCKET soc, void * pVoid, HTEventType type);PUBLIC int HTLoadSocket (SOCKET soc, HTRequest * request){    raw_info * raw;			    /* Specific protocol information */    HTNet * net = HTRequest_net(request);    HTTRACE(PROT_TRACE, "Load socket. Setting up socket for accept\n");    if ((raw = (raw_info *) HT_CALLOC(1, sizeof(raw_info))) == NULL)      HT_OUTOFMEM("HTLoadSocket");    raw->state = RAW_BEGIN;    raw->net = net;    raw->request = request;    HTNet_setContext(net, raw);    HTNet_setEventCallback(net, SocketEvent);    HTNet_setEventParam(net, raw);    /* Start listening on a socket */    if (HTHost_listen(NULL, net, HTAnchor_physical(HTRequest_anchor(request))) == HT_ERROR)	return SocketEvent(soc, raw, HTEvent_CLOSE);    /* Get it started - ops is ignored */    return SocketEvent(soc, raw, HTEvent_BEGIN);}PRIVATE int SocketEvent (SOCKET soc, void * pVoid, HTEventType type){    raw_info * raw = (raw_info *) pVoid;    int status = HT_ERROR;    HTNet * net = raw->net;    HTRequest * request = raw->request;    HTHost * host = HTNet_host(net);    /*    **  Check whether we have been interrupted or timed out    */    if (type == HTEvent_BEGIN) {	raw->state = RAW_BEGIN;    } else if (type == HTEvent_CLOSE) {			      /* Interrupted */	RawCleanup(request, HT_INTERRUPTED);	return HT_OK;    } else if (type == HTEvent_TIMEOUT) {	HTRequest_addError(request, ERR_FATAL, NO, HTERR_TIME_OUT,			   NULL, 0, "HTLoadSocket");	RawCleanup(request, HT_TIMEOUT);	return HT_OK;    } else if (type == HTEvent_END) {	RawCleanup(request, HT_OK);	return HT_OK;    }	    /* Now jump into the state machine */    while (1) {	switch(raw->state) {	case RAW_BEGIN:	    status = HTHost_accept(host, net, NULL);	    host = HTNet_host(net);            if (status == HT_OK) {		raw->state = RAW_NEED_STREAM;	    } else if (status == HT_WOULD_BLOCK || status == HT_PENDING) {		return HT_OK;	    } else			raw->state = RAW_ERROR;	       /* Error or interrupt */	    break;	case RAW_NEED_STREAM:	{	    /* 	    ** Create the stream pipe FROM the channel to the application.	    ** The target for the input stream pipe is set up using the	    ** stream stack.	    */            HTStream * in_stream =		HTStreamStack(WWW_RAW,			      HTRequest_outputFormat(request),			      HTRequest_outputStream(request),			      request, YES);	    HTNet_setReadStream(net, in_stream);            HTRequest_setOutputConnected(request, YES);	    raw->state = RAW_READ;	    break;	}	case RAW_READ:	    status = HTHost_read(host, net);	    if (status == HT_WOULD_BLOCK)		return HT_OK;	    else if (status==HT_CLOSED)		raw->state = RAW_OK;	    else 		raw->state = RAW_ERROR;	    break;	case RAW_OK:	    RawCleanup(request, HT_OK);	    return HT_OK;	    break;	case RAW_ERROR:	    RawCleanup(request, HT_ERROR);	    return HT_OK;	    break;	default:	    HTDEBUGBREAK("Bad raw state %d\n" _ raw->state);	}    }    return HT_OK;}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91美女在线看| 欧美色图天堂网| 亚洲综合男人的天堂| 欧美一区二区啪啪| 91啦中文在线观看| 国产乱人伦精品一区二区在线观看| 亚洲精品久久7777| 国产精品丝袜一区| 亚洲精品在线三区| 正在播放一区二区| 欧美最猛黑人xxxxx猛交| 成人在线综合网| 国产曰批免费观看久久久| 三级一区在线视频先锋 | 国产精品天天摸av网| 欧美另类变人与禽xxxxx| 不卡av电影在线播放| 免费成人在线观看| 手机精品视频在线观看| 亚洲综合无码一区二区| 中文字幕一区二区三中文字幕| 欧美成人精品福利| 欧美一区二区三区小说| 欧美视频在线观看一区二区| 99精品热视频| 成av人片一区二区| 精品乱人伦小说| 制服.丝袜.亚洲.中文.综合| 欧美色综合网站| 色综合色综合色综合色综合色综合| 国产福利一区二区三区在线视频| 久久精品理论片| 奇米精品一区二区三区在线观看 | 97se亚洲国产综合自在线| 国产一区高清在线| 极品美女销魂一区二区三区| 精品在线一区二区| 精品一二三四区| 国产一区二三区| 国产成人在线视频网址| 国产美女视频一区| 国产成人精品免费在线| 成人精品视频.| 99国产精品久久久久久久久久久| 成人精品在线视频观看| 91免费版pro下载短视频| 色狠狠一区二区三区香蕉| 欧美亚洲国产一区二区三区va | 暴力调教一区二区三区| www.综合网.com| 欧美综合一区二区三区| 宅男噜噜噜66一区二区66| 日韩一级免费观看| 精品乱码亚洲一区二区不卡| 久久精品亚洲国产奇米99| 国产精品无圣光一区二区| 中文字幕在线一区| 亚洲在线中文字幕| 秋霞国产午夜精品免费视频| 国产精品一区专区| 91在线国产福利| 欧美电影一区二区| 欧美精品一区二| 亚洲欧洲一区二区在线播放| 一区二区三区在线免费观看| 日本sm残虐另类| 成人黄色777网| 精品视频999| 欧美成人官网二区| 国产精品国产自产拍高清av王其| 伊人性伊人情综合网| 日韩不卡一二三区| 国产精品一区免费在线观看| 91色视频在线| 日韩免费观看2025年上映的电影| 久久久777精品电影网影网| 亚洲精品国产无天堂网2021| 蜜桃视频一区二区三区| 99久久99精品久久久久久| 51精品视频一区二区三区| 久久蜜桃一区二区| 一区二区三区日韩精品| 久久99精品国产麻豆婷婷洗澡| thepron国产精品| 日韩精品一区二区三区中文不卡 | 欧美乱妇一区二区三区不卡视频| 精品乱码亚洲一区二区不卡| 亚洲色图色小说| 国产一区二区成人久久免费影院 | 国产高清精品在线| 欧美精品tushy高清| 国产精品区一区二区三区| 日本系列欧美系列| 一本大道久久精品懂色aⅴ| 欧美成人猛片aaaaaaa| 亚洲一区二区三区三| 国产超碰在线一区| 日韩一级片网站| 亚洲午夜久久久久久久久电影网 | 欧美在线观看视频一区二区| 国产欧美精品一区| 久久不见久久见中文字幕免费| 一本久道中文字幕精品亚洲嫩| 精品福利av导航| 日韩电影在线看| 在线中文字幕不卡| 国产精品久久久久7777按摩| 理论电影国产精品| 这里只有精品电影| 一区二区三区四区不卡视频| 处破女av一区二区| 久久婷婷国产综合国色天香| 亚洲成人手机在线| 一本久久a久久免费精品不卡| 日本一区二区动态图| 国产在线精品一区二区三区不卡 | 精品国产99国产精品| 午夜亚洲福利老司机| 91激情五月电影| 亚洲男人的天堂一区二区| 成人a区在线观看| 中文字幕第一区第二区| 国产裸体歌舞团一区二区| 日韩欧美国产精品| 奇米精品一区二区三区四区| 制服.丝袜.亚洲.另类.中文| 视频一区二区三区中文字幕| 精品污污网站免费看| 亚洲综合免费观看高清完整版在线| 91伊人久久大香线蕉| 成人欧美一区二区三区1314| 97se亚洲国产综合自在线不卡| 成人欧美一区二区三区白人 | 青青草国产精品亚洲专区无| 欧美肥大bbwbbw高潮| 丝袜亚洲精品中文字幕一区| 欧美情侣在线播放| 日韩 欧美一区二区三区| 91精品国产综合久久久久久久| 亚洲18女电影在线观看| 欧美一卡2卡3卡4卡| 蜜臀精品久久久久久蜜臀| 欧美成人一级视频| 国产精品一区三区| 国产精品久久久久永久免费观看 | 久久激情五月婷婷| 久久亚洲捆绑美女| 成人高清视频在线| 亚洲欧美激情视频在线观看一区二区三区| 99久久精品国产观看| 亚洲国产综合在线| 日韩欧美综合一区| 国产福利一区二区三区视频| 国产精品久久久久久久久晋中 | 日韩欧美综合在线| 国产精品一级在线| 亚洲另类一区二区| 91精品国产一区二区三区蜜臀 | 欧美一级理论性理论a| 国产做a爰片久久毛片| 中文字幕精品一区二区精品绿巨人 | 亚洲视频免费看| 欧美精品九九99久久| 国产一区二区在线看| 国产精品国产三级国产三级人妇| 在线观看免费成人| 精品一区二区免费看| 亚洲日本免费电影| 日韩欧美国产麻豆| 91看片淫黄大片一级在线观看| 亚洲一区二区三区四区在线观看| 91精品婷婷国产综合久久竹菊| 国产一区中文字幕| 亚洲国产日韩在线一区模特| 欧美精品一区二区三区久久久| 丁香六月久久综合狠狠色| 亚洲二区视频在线| 国产日韩欧美精品综合| 欧美午夜精品免费| 国产成人av一区| 偷拍一区二区三区| 国产精品国产自产拍高清av王其 | 中文字幕佐山爱一区二区免费| 欧美日韩高清在线| 成人在线视频首页| 欧美96一区二区免费视频| 亚洲色图视频网站| 久久久综合视频| 欧美日韩另类国产亚洲欧美一级| 国产麻豆成人传媒免费观看| 图片区小说区区亚洲影院| 国产精品理论片| 精品国产伦理网| 欧美体内she精高潮| 不卡视频免费播放| 国产一区在线精品| 秋霞午夜鲁丝一区二区老狼| 亚洲一区二区三区四区的| 日本一区二区免费在线| 日韩午夜激情免费电影|