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

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

?? request.h

?? PTypes (C++ Portable Types Library) is a simple alternative to the STL that includes multithreading
?? H
字號:
/* * *  C++ Portable Types Library (PTypes) *  Version 1.7.5   Released 9-Mar-2003 * *  Copyright (c) 2001, 2002, 2003 Hovik Melikyan * *  http://www.melikyan.com/ptypes/ *  http://ptypes.sourceforge.net/ * */#ifndef W_REQUEST_H#define W_REQUEST_H#include <ptypes.h>#include <pstreams.h>#include <pinet.h>#include "sysutils.h"#include "urlutils.h"USING_PTYPESenum http_version_t {    HTTP_VER_09,     HTTP_VER_10,     HTTP_VER_11,     HTTP_VER_UNKNOWN,        HTTP_VER_MAX};enum http_method_t {    HTTP_GET,    HTTP_HEAD,    HTTP_OTHER,        HTTP_METHOD_MAX};enum req_stat_t{    STAT_READ,    STAT_WRITE,    STAT_WAIT,        STAT_MAX};struct ehttp{    int code;    ehttp(int icode): code(icode) {}};class request_rec{public:    datetime        started;    int             rsp_code;       // rsp: response code, set through begin_response(), used for logging    req_stat_t      stat;           // for status requests: READ, WRITE or WAIT (if keep-alive)    instm*          sockin;         // client input stream    outstm*         sockout;        // client output stream    ipaddress       client_ip;      // req: client's IP    http_version_t  version;        // req/rsp: HTTP version, 0.9, 1.0, 1.1 or 1.*    http_method_t   method;         // req: HTTP method, currently GET or HEAD    string          method_str;     // method string, for other method handlers    bool            keep_alive;     // req/rsp: whether to close the connection; determined                                    // based on the HTTP version and the "Connection:" header;                                    // can be forced to false for some response types, e.g. 400 Bad Request    datetime        if_modified;    // req: "If-modified-since:" if present, invdatetime otherwise    string          req_line;       // req: the whole request line, e.g. "GET / HTTP/1.1"    string          uri;            // req: request-URI, as is    string          host;           // req: "Host:" header, if present    string          referer;        // req: "Referer:"; may be converted to relative URI    bool            partial;        // req: partial content requested (see rsp_file())    int             range_min;      // req: partial content    int             range_max;      // req: partial content    textmap         headers;        // other headers    // requested object info    urlrec          url;            // req: the request-URI parsed and split into components    file_type_t     file_type;      // file, directory or other (device or pipe)    bool            sym_link;       // the object is a symbolic link (Unix only)    bool            executable;     // the object is executable (binary on Unix, .exe on Windows)    string          abs_path;       // absolute file path to the requested object    string          rel_path;       // file path to the requested object relative to document root,                                    // may not be the same as url.path    string          file_name;      // file name    string          file_ext;       // file extension (including the leading dot)    unknown*        user;           // user data for custom handlers, freed automatically by ~request_rec()    // helpers for method handlers    string get_token(const cset& chars);    string get_uri();    void parse_request_line();      // ... excluding the method string    void parse_hdr(string& fname, string& fvalue);    void analyze_uri();             // sets all fields starting from file_type    // response utilities; headers are not sent if the HTTP version is 0.9    void begin_response(int code, const char* msg);    void put_header(const char* name, const char* value);    void put_header(const char* name, const string& value);    void put_content_type(const char* mime);    void put_content_length(int length);    void end_headers();    void std_response(bool conn_close, int code, const char* msg, const char* descr);    void std_response(bool conn_close, int code, const char* msg, const char* descr, const string& dparam);    // standard responses; all functions of this group raise ehttp exceptions    void rsp_not_found();    void rsp_bad_request();    void rsp_uri_too_long();    void rsp_forbidden();    void rsp_dir_index_forbidden();    void rsp_overloaded();    void abort_request();    void rsp_redirect(const string& newurl);    void rsp_not_modified();    void end_response();    void rsp_file();    void rsp_dir_index();    void rsp_wstat();protected:    string location;       // rsp: add "Location:" header to the response; set through                            // rsp_redirect()    int    hdr_size;       // byte size of response headers; used for logging, to determine                           // the actual response content length (see respond())    // request parsers    void parse_method();    void parse_headers();    // the boss    void respond();    request_rec(instm& isockin, outstm& isockout, ipaddress iclient_ip);    ~request_rec();};#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区四区视频精品免费 | 国产成+人+日韩+欧美+亚洲| 国产一区欧美二区| jizzjizzjizz欧美| 欧美乱熟臀69xxxxxx| 日本一二三四高清不卡| 日韩综合小视频| 99久久婷婷国产综合精品| 欧美成人三级电影在线| 亚洲一区精品在线| 不卡一区在线观看| 久久久久99精品一区| 污片在线观看一区二区| 91免费观看视频在线| 久久精品综合网| 黄色精品一二区| 日韩一区二区不卡| 天天操天天干天天综合网| 91浏览器入口在线观看| 欧美激情一区二区在线| 国产一区二区三区免费在线观看| 精品视频1区2区| 亚洲综合999| 色视频欧美一区二区三区| 国产精品不卡在线观看| 国产福利精品一区| 久久久国际精品| 国产一区二区三区av电影 | 一本一道久久a久久精品 | 粗大黑人巨茎大战欧美成人| 日韩欧美你懂的| 日韩成人精品在线观看| 欧美久久一区二区| 三级一区在线视频先锋| 欧美另类z0zxhd电影| 亚洲va欧美va国产va天堂影院| 色婷婷综合中文久久一本| 最新成人av在线| 色婷婷综合久久久| 亚洲国产日韩精品| 538在线一区二区精品国产| 亚洲v中文字幕| 欧美一级夜夜爽| 精品一区二区三区免费观看 | 日韩欧美一区在线| 免费不卡在线观看| 久久亚洲欧美国产精品乐播| 国产精品原创巨作av| 国产免费成人在线视频| 91一区在线观看| 午夜精彩视频在线观看不卡| 欧美久久久久免费| 国产原创一区二区三区| 国产日韩欧美精品综合| 一本一道久久a久久精品综合蜜臀| 一区二区三区色| 欧美军同video69gay| 国产中文一区二区三区| **性色生活片久久毛片| 在线精品国精品国产尤物884a| 亚洲电影一区二区三区| 精品久久国产老人久久综合| 国产aⅴ综合色| 一区二区三区在线观看国产| 69p69国产精品| 国产成人一级电影| 亚洲综合视频在线| 欧美mv日韩mv亚洲| 91麻豆6部合集magnet| 蜜臀久久久久久久| 国产精品理伦片| 91精品国产综合久久久久久漫画 | 欧美裸体一区二区三区| 国模冰冰炮一区二区| 亚洲裸体xxx| 日韩精品中文字幕一区二区三区 | 欧美人牲a欧美精品| 国产精品69久久久久水密桃| 亚洲精品国久久99热| 精品国产区一区| 欧美在线观看视频在线| 丁香桃色午夜亚洲一区二区三区| 亚洲成国产人片在线观看| 国产精品丝袜黑色高跟| 日韩一区二区三区在线| 成人黄色片在线观看| 人妖欧美一区二区| 亚洲一区二区三区视频在线| 中文字幕不卡在线播放| 精品欧美一区二区在线观看| 色婷婷av一区二区三区软件| 国产精品伊人色| 久草在线在线精品观看| 亚洲一区二区三区在线播放| 欧美国产精品v| 欧美成人r级一区二区三区| 欧美一a一片一级一片| 99精品视频在线观看免费| 国产一区二区主播在线| 免费高清视频精品| 日韩精品免费专区| 午夜在线电影亚洲一区| 亚洲女爱视频在线| 综合分类小说区另类春色亚洲小说欧美| 欧美电影免费观看高清完整版在线| 色噜噜偷拍精品综合在线| 成人一区二区三区视频在线观看 | 色呦呦网站一区| 成人av在线网| 成人性生交大片免费看中文| 国产精品资源站在线| 国产一区二区三区国产| 国产美女在线精品| 国产精一区二区三区| 国产乱码精品一区二区三区av | 久久久国产一区二区三区四区小说| 日韩一区二区免费在线观看| 88在线观看91蜜桃国自产| 欧美日本免费一区二区三区| 欧美日韩一区不卡| 日本韩国精品在线| 日本二三区不卡| 一本色道**综合亚洲精品蜜桃冫| 91免费看片在线观看| 91一区二区三区在线播放| 成人app软件下载大全免费| 国产成人免费视频网站| av在线一区二区三区| 91免费国产在线| 欧美日韩免费在线视频| 欧美日韩午夜在线| 日韩亚洲欧美高清| 国产人久久人人人人爽| 国产精品国产馆在线真实露脸 | 免费在线观看一区| 久久精品二区亚洲w码| 国产一区二区三区免费看| 成人av在线影院| 欧美日韩午夜在线视频| 欧美xxxxx牲另类人与| 久久综合九色综合97_久久久| 久久综合色一综合色88| 国产精品国产三级国产aⅴ中文 | 成人一级片在线观看| 日本精品一级二级| 7878成人国产在线观看| 久久人人超碰精品| 亚洲视频小说图片| 午夜精品福利一区二区三区av | 日本中文字幕一区二区有限公司| 国产一区二区免费在线| 91一区一区三区| 日韩欧美一级特黄在线播放| 国产精品热久久久久夜色精品三区| 一区二区三区毛片| 黄色小说综合网站| 91色乱码一区二区三区| 91精品在线免费| 中文字幕日本乱码精品影院| 五月天欧美精品| 国产**成人网毛片九色| 欧美日韩一级黄| 亚洲国产精品高清| 日韩va欧美va亚洲va久久| 成人性色生活片| 日韩三级伦理片妻子的秘密按摩| 国产精品乱子久久久久| 午夜婷婷国产麻豆精品| 波多野结衣中文一区| 91精品国产免费| 亚洲欧美日韩综合aⅴ视频| 国产乱人伦精品一区二区在线观看 | 奇米777欧美一区二区| 白白色 亚洲乱淫| 日韩欧美一级精品久久| 亚洲一区二区三区四区五区黄| 国v精品久久久网| 精品国产伦理网| 日av在线不卡| 欧美日韩一本到| 一区二区三区四区视频精品免费| 国产福利91精品| 日韩精品中文字幕在线不卡尤物| 亚洲图片一区二区| 99久久精品国产观看| 国产午夜一区二区三区| 六月婷婷色综合| 日韩欧美一区二区视频| 日韩高清中文字幕一区| 欧美主播一区二区三区美女| 亚洲人午夜精品天堂一二香蕉| 成人一级片在线观看| 国产日产欧美精品一区二区三区| 精品一区二区三区在线播放视频 | 蜜桃视频第一区免费观看| 欧美视频在线不卡| 亚洲一区二区三区四区不卡| 99视频一区二区三区| 亚洲天堂av老司机| a级高清视频欧美日韩|