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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? webs.h

?? 開發(fā)板bios源碼 開發(fā)板bios源碼
?? H
字號:
/* 
 *	webs.h -- GoAhead Web public header
 *
 * Copyright (c) GoAhead Software Inc., 1992-2000. All Rights Reserved.
 *
 *	See the file "license.txt" for information on usage and redistribution
 *
 * $Id: webs.h,v 1.5 2002/07/29 15:28:45 bporter Exp $
 */

#ifndef _h_WEBS
#define _h_WEBS 1

/******************************** Description *********************************/

/* 
 *	GoAhead Web Server header. This defines the Web public APIs.
 *	Include this header for files that contain ASP or Form procedures.
 *	Include wsIntrn.h when creating URL handlers.
 */

/********************************* Includes ***********************************/

#include	"ej.h"
#ifdef WEBS_SSL_SUPPORT
	#include	"websSSL.h"
#endif

/********************************** Defines ***********************************/
/*
 *	By license terms the server software name defined in the following line of
 *	code must not be modified.
 */
#define WEBS_NAME				T("GoAhead-Webs")
#define WEBS_VERSION			T("2.1.3")

#define WEBS_HEADER_BUFINC 		512			/* Header buffer size */
#define WEBS_ASP_BUFINC			512			/* Asp expansion increment */
#define WEBS_MAX_PASS			32			/* Size of password */
#define WEBS_BUFSIZE			1000		/* websWrite max output string */
#define WEBS_MAX_HEADER			(5 * 1024)	/* Sanity check header */
#define WEBS_MAX_URL			4096		/* Maximum URL size for sanity */
#define WEBS_SOCKET_BUFSIZ		256			/* Bytes read from socket */

#define WEBS_HTTP_PORT			T("httpPort")
#define CGI_BIN					T("cgi-bin")

/* 
 *	Request flags. Also returned by websGetRequestFlags().
 */
#define WEBS_LOCAL_PAGE			0x1			/* Request for local webs page */ 
#define WEBS_KEEP_ALIVE			0x2			/* HTTP/1.1 keep alive */
#define WEBS_DONT_USE_CACHE		0x4			/* Not implemented cache support */
#define WEBS_COOKIE				0x8			/* Cookie supplied in request */
#define WEBS_IF_MODIFIED		0x10		/* If-modified-since in request */
#define WEBS_POST_REQUEST		0x20		/* Post request operation */
#define WEBS_LOCAL_REQUEST		0x40		/* Request from this system */
#define WEBS_HOME_PAGE			0x80		/* Request for the home page */ 
#define WEBS_ASP				0x100		/* ASP request */ 
#define WEBS_HEAD_REQUEST		0x200		/* Head request */
#define WEBS_CLEN				0x400		/* Request had a content length */
#define WEBS_FORM				0x800		/* Request is a form */
#define WEBS_REQUEST_DONE		0x1000		/* Request complete */
#define WEBS_POST_DATA			0x2000		/* Already appended post data */
#define WEBS_CGI_REQUEST		0x4000		/* cgi-bin request */
#define WEBS_SECURE				0x8000		/* connection uses SSL */
#define WEBS_AUTH_BASIC			0x10000		/* Basic authentication request */
#define WEBS_AUTH_DIGEST		0x20000		/* Digest authentication request */
#define WEBS_HEADER_DONE		0x40000		/* Already output the HTTP header */

/*
 *	URL handler flags
 */
#define WEBS_HANDLER_FIRST	0x1			/* Process this handler first */
#define WEBS_HANDLER_LAST	0x2			/* Process this handler last */

/* 
 *	Per socket connection webs structure
 */
typedef struct websRec {
	ringq_t			header;				/* Header dynamic string */
	time_t			since;				/* Parsed if-modified-since time */
	sym_fd_t		cgiVars;			/* CGI standard variables */
	sym_fd_t		cgiQuery;			/* CGI decoded query string */
	time_t			timestamp;			/* Last transaction with browser */
	int				timeout;			/* Timeout handle */
	char_t			ipaddr[32];			/* Connecting ipaddress */
	char_t			type[64];			/* Mime type */
	char_t			*dir;				/* Directory containing the page */
	char_t			*path;				/* Path name without query */
	char_t			*url;				/* Full request url */
	char_t			*host;				/* Requested host */
	char_t			*lpath;				/* Cache local path name */
	char_t			*query;				/* Request query */
	char_t			*decodedQuery;		/* Decoded request query */
	char_t			*authType;			/* Authorization type (Basic/DAA) */
	char_t			*password;			/* Authorization password */
	char_t			*userName;			/* Authorization username */
	char_t			*cookie;			/* Cookie string */
	char_t			*userAgent;			/* User agent (browser) */
	char_t			*protocol;			/* Protocol (normally HTTP) */
	char_t			*protoVersion;		/* Protocol version */
	int				sid;				/* Socket id (handler) */
	int				listenSid;			/* Listen Socket id */
	int				port;				/* Request port number */
	int				state;				/* Current state */
	int				flags;				/* Current flags -- see above */
	int				code;				/* Request result code */
	int				clen;				/* Content length */
	int				wid;				/* Index into webs */
	char_t			*cgiStdin;			/* filename for CGI stdin */
	int				docfd;				/* Document file descriptor */
	int				numbytes;			/* Bytes to transfer to browser */
	int				written;			/* Bytes actually transferred */
	void			(*writeSocket)(struct websRec *wp);
#ifdef DIGEST_ACCESS_SUPPORT
    char_t			*realm;		/* usually the same as "host" from websRec */
    char_t			*nonce;		/* opaque-to-client string sent by server */
    char_t			*digest;	/* digest form of user password */
    char_t			*uri;		/* URI found in DAA header */
    char_t			*opaque;	/* opaque value passed from server */
    char_t			*nc;		/* nonce count */
    char_t			*cnonce;	/* check nonce */
    char_t			*qop;		/* quality operator */
#endif
#ifdef WEBS_SSL_SUPPORT
	websSSL_t		*wsp;		/* SSL data structure */
#endif
} websRec;

typedef websRec	*webs_t;
typedef websRec websType;

/******************************** Prototypes **********************************/
extern int		 websAccept(int sid, char *ipaddr, int port, int listenSid);
extern int 		 websAspDefine(char_t *name, 
					int (*fn)(int ejid, webs_t wp, int argc, char_t **argv));
extern int 		 websAspRequest(webs_t wp, char_t *lpath);
extern void		 websCloseListen();
extern int 		 websDecode64(char_t *outbuf, char_t *string, int buflen);
extern void		 websDecodeUrl(char_t *token, char_t *decoded, int len);
extern void  	 websDone(webs_t wp, int code);
extern void 	 websEncode64(char_t *outbuf, char_t *string, int buflen);
extern void  	 websError(webs_t wp, int code, char_t *msg, ...);
/* function websErrorMsg() made extern 03 Jun 02 BgP */
extern char_t 	*websErrorMsg(int code);
extern void  	 websFooter(webs_t wp);
extern int 		 websFormDefine(char_t *name, void (*fn)(webs_t wp, 
					char_t *path, char_t *query));
extern char_t 	*websGetDefaultDir();
extern char_t 	*websGetDefaultPage();
extern char_t 	*websGetHostUrl();
extern char_t 	*websGetIpaddrUrl();
extern char_t 	*websGetPassword();
extern int		 websGetPort();
extern char_t 	*websGetPublishDir(char_t *path, char_t **urlPrefix);
extern char_t 	*websGetRealm();
extern int 		 websGetRequestBytes(webs_t wp);
extern char_t	*websGetRequestDir(webs_t wp);
extern int		 websGetRequestFlags(webs_t wp);
extern char_t	*websGetRequestIpaddr(webs_t wp);
extern char_t 	*websGetRequestLpath(webs_t wp);
extern char_t	*websGetRequestPath(webs_t wp);
extern char_t	*websGetRequestPassword(webs_t wp);
extern char_t	*websGetRequestType(webs_t wp);
extern int 		 websGetRequestWritten(webs_t wp);
extern char_t 	*websGetVar(webs_t wp, char_t *var, char_t *def);
extern int 		 websCompareVar(webs_t wp, char_t *var, char_t *value);
extern void 	 websHeader(webs_t wp);
extern int		 websOpenListen(int port, int retries);
extern int 		 websPageOpen(webs_t wp, char_t *lpath, char_t *path,
					int mode, int perm);
extern void 	 websPageClose(webs_t wp);
extern int 		 websPublish(char_t *urlPrefix, char_t *path);
extern void		 websRedirect(webs_t wp, char_t *url);
extern void 	 websSecurityDelete();
extern int 		 websSecurityHandler(webs_t wp, char_t *urlPrefix, 
					char_t *webDir, int arg, char_t *url, char_t *path, 
					char_t *query);
extern void 	 websSetDefaultDir(char_t *dir);
extern void 	 websSetDefaultPage(char_t *page);
extern void 	 websSetEnv(webs_t wp);
extern void 	 websSetHost(char_t *host);
extern void 	 websSetIpaddr(char_t *ipaddr);
extern void 	 websSetPassword(char_t *password);
extern void 	 websSetRealm(char_t *realmName);
extern void 	 websSetRequestBytes(webs_t wp, int bytes);
extern void		 websSetRequestFlags(webs_t wp, int flags);
extern void 	 websSetRequestLpath(webs_t wp, char_t *lpath);
extern void 	 websSetRequestPath(webs_t wp, char_t *dir, char_t *path);
extern char_t	*websGetRequestUserName(webs_t wp);
extern void 	 websSetRequestWritten(webs_t wp, int written);
extern void 	 websSetVar(webs_t wp, char_t *var, char_t *value);
extern int 		 websTestVar(webs_t wp, char_t *var);
extern void		 websTimeoutCancel(webs_t wp);
extern int 		 websUrlHandlerDefine(char_t *urlPrefix, char_t *webDir, 
					int arg, int (*fn)(webs_t wp, char_t *urlPrefix, 
					char_t *webDir, int arg, char_t *url, char_t *path, 
					char_t *query), int flags);
extern int 		 websUrlHandlerDelete(int (*fn)(webs_t wp, char_t *urlPrefix,
					char_t *webDir, int arg, char_t *url, char_t *path, 
					char_t *query));
extern int		 websUrlHandlerRequest(webs_t wp);
extern int 		 websUrlParse(char_t *url, char_t **buf, char_t **host, 
					char_t **path, char_t **port, char_t **query, 
					char_t **proto, char_t **tag, char_t **ext);
extern char_t 	*websUrlType(char_t *webs, char_t *buf, int charCnt);
extern int 		 websWrite(webs_t wp, char_t* fmt, ...);
extern int 		 websWriteBlock(webs_t wp, char_t *buf, int nChars);
extern int 		 websWriteDataNonBlock(webs_t wp, char *buf, int nChars);
extern int 		 websValid(webs_t wp);
extern int 		 websValidateUrl(webs_t wp, char_t *path);
extern void		websSetTimeMark(webs_t wp);

/*
 *	The following prototypes are used by the SSL patch found in websSSL.c
 */
extern int 		websAlloc(int sid);
extern void 	websFree(webs_t wp);
extern void 	websTimeout(void *arg, int id);
extern void 	websReadEvent(webs_t wp);

/*
 *	Prototypes for functions available when running as part of the 
 *	GoAhead Embedded Management Framework (EMF)
 */
#ifdef EMF
extern void 	 websFormExplain(webs_t wp, char_t *path, char_t *query);
#endif

#endif /* _h_WEBS */

/******************************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美本精品男人aⅴ天堂| 国产精品女主播av| 国产精品热久久久久夜色精品三区| 一区二区三区免费在线观看| 国产一区二三区| 欧美日韩在线免费视频| 国产精品欧美极品| 国产福利一区二区三区在线视频| 欧美精品一卡两卡| 亚洲一区在线免费观看| 波多野结衣91| 亚洲国产精华液网站w| 麻豆91在线播放| 欧美日韩国产电影| 亚洲黄色av一区| 91美女视频网站| 亚洲欧洲性图库| 国产成人免费在线观看不卡| 欧美精品一区二区三区四区 | 久久免费国产精品 | 国产精品成人在线观看| 国产一区欧美一区| 久久久久久久一区| 激情小说亚洲一区| 久久综合久久综合九色| 精品一区二区三区视频在线观看 | 国产精品视频免费看| 国产一区二区三区电影在线观看| 日韩精品一区在线观看| 日本不卡视频一二三区| 91精品国产黑色紧身裤美女| 亚洲成av人影院| 91精品国产色综合久久| 日韩精品每日更新| 日韩一级免费观看| 美女性感视频久久| 久久久久久久久岛国免费| 国产一区二区不卡老阿姨| 国产日产欧美一区二区视频| 成人免费看的视频| 亚洲色图欧洲色图婷婷| 欧美亚洲综合一区| 蜜臀av性久久久久蜜臀aⅴ四虎 | 国产激情偷乱视频一区二区三区| 久久久国产精华| www.在线成人| 亚洲一二三四久久| 日韩久久久久久| 精品亚洲aⅴ乱码一区二区三区| 精品粉嫩aⅴ一区二区三区四区| 国产乱理伦片在线观看夜一区| 日本一区免费视频| 欧美亚洲一区二区在线观看| 男男gaygay亚洲| 日本一区二区三区视频视频| 色综合色综合色综合| 日韩av中文字幕一区二区三区| 精品91自产拍在线观看一区| 99久久国产综合精品色伊| 日日夜夜精品免费视频| 久久久精品一品道一区| 色婷婷av久久久久久久| 奇米精品一区二区三区在线观看一 | 欧美色图天堂网| 理论片日本一区| 国产欧美一区视频| 欧美日韩在线直播| 国产v综合v亚洲欧| 亚洲电影第三页| 国产欧美精品一区aⅴ影院 | 在线亚洲高清视频| 国产主播一区二区| 亚洲高清免费观看 | 久久综合资源网| 色88888久久久久久影院野外| 美女尤物国产一区| 亚洲综合免费观看高清完整版在线 | 成人听书哪个软件好| 亚洲成av人片一区二区梦乃| 中文幕一区二区三区久久蜜桃| 7777精品伊人久久久大香线蕉最新版| 国产sm精品调教视频网站| 视频在线观看国产精品| 国产丝袜美腿一区二区三区| 制服丝袜国产精品| 色婷婷亚洲精品| jiyouzz国产精品久久| 久草中文综合在线| 性做久久久久久| 亚洲品质自拍视频| 欧美国产日韩a欧美在线观看| 7777精品伊人久久久大香线蕉| 91视频在线观看免费| 国产精品1区2区3区| 免费成人你懂的| 性做久久久久久久免费看| 亚洲伦理在线免费看| 国产精品美女久久久久久久久 | 国产精品欧美综合在线| 亚洲精品一区二区三区99| 日韩视频在线一区二区| 欧美日韩精品欧美日韩精品| 色av一区二区| 在线观看日韩高清av| 色偷偷久久一区二区三区| 成人毛片老司机大片| 国产成人免费视频网站高清观看视频 | 不卡电影免费在线播放一区| 国内精品第一页| 精品国产乱码久久久久久影片| 99久久精品国产麻豆演员表| 成人黄色小视频| 成人福利视频网站| 成人动漫av在线| 成人av电影在线观看| 不卡视频免费播放| 91啪亚洲精品| 欧美综合一区二区| 欧美日韩一卡二卡三卡| 欧美视频中文一区二区三区在线观看 | 91原创在线视频| 91亚洲国产成人精品一区二三| 99久久精品国产网站| 日本道色综合久久| 欧美日韩精品欧美日韩精品| 91精品国产一区二区人妖| 精品国产区一区| 亚洲国产精品av| 亚洲免费在线看| 偷拍一区二区三区| 久久99久国产精品黄毛片色诱| 精品一区二区三区欧美| 国产精品一二三区在线| 不卡的电影网站| 欧美老女人在线| 精品国产伦一区二区三区免费 | 日韩一区二区在线免费观看| 日韩欧美一级二级三级| 国产日韩欧美不卡在线| 一区二区三区中文在线观看| 亚洲成a人片综合在线| 精品一区二区三区久久| 成人黄色网址在线观看| 欧美日韩视频在线一区二区| 精品88久久久久88久久久| 成人免费小视频| 日本aⅴ亚洲精品中文乱码| 国产福利一区二区| 欧美日韩国产高清一区二区| 久久亚洲一区二区三区四区| 亚洲久草在线视频| 久久99国产精品久久| 色哟哟在线观看一区二区三区| 欧美一区在线视频| 亚洲私人黄色宅男| 久久精品噜噜噜成人av农村| 99国产精品久久久久| 欧美不卡在线视频| 亚洲精品一卡二卡| 国产一区二区三区免费播放| 欧美影院午夜播放| 中文字幕精品一区二区精品绿巨人| 亚洲国产一区二区a毛片| 国产福利91精品一区二区三区| 欧美人与z0zoxxxx视频| 国产精品国产三级国产有无不卡| 天堂成人免费av电影一区| 成人av资源站| 久久久99精品免费观看不卡| 日韩1区2区日韩1区2区| 91毛片在线观看| 欧美激情中文字幕一区二区| 日本视频在线一区| 欧美怡红院视频| |精品福利一区二区三区| 精久久久久久久久久久| 宅男噜噜噜66一区二区66| 亚洲码国产岛国毛片在线| 国产盗摄女厕一区二区三区| 日韩你懂的在线播放| 国产成人一区二区精品非洲| 久久综合狠狠综合久久综合88| 精品国产不卡一区二区三区| 亚洲成av人片一区二区三区| 色婷婷av一区二区| 日韩精品一二三| 在线中文字幕一区二区| 日韩美女精品在线| 不卡视频一二三四| 国产精品国产三级国产有无不卡 | 福利电影一区二区三区| 精品av综合导航| 国产一区二区三区美女| 精品少妇一区二区三区免费观看 | 国产精品一区三区| 2020国产成人综合网| 国产精品888| 国产精品欧美极品| 色综合网色综合| 一区二区高清视频在线观看|