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

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

?? httpauth.h

?? 站點映像程序
?? H
字號:
/*    HTTP authentication routines   Copyright (C) 1999, Joe Orton <joe@orton.demon.co.uk>                                                                        This program is free software; you can redistribute it and/or modify   it under the terms of the GNU General Public License as published by   the Free Software Foundation; either version 2 of the License, or   (at your option) any later version.     This program is distributed in the hope that it will be useful,   but WITHOUT ANY WARRANTY; without even the implied warranty of   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the   GNU General Public License for more details.     You should have received a copy of the GNU General Public License   along with this program; if not, write to the Free Software   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.*/#ifndef HTTPAUTH_H#define HTTPAUTH_H#include <sys/types.h>#include "md5.h"#include "common.h"/* HTTP Authentication - a full client implementation of RFC2617. *  * TODO: *  - Bring the external 'can authenticate' state in? *  - Add handling for domains and realms *  - Allow on-the-fly request for password *//* To use: *  * 1. Declare a http_auth_session_t variable, to hold the details for * the server. If you support Proxy authentication, declare another * one for that. * * 2. To begin a new session, call http_auth_init() with this variable. * * 3. Before sending a request, pass http_auth_new_request it's details. *  * 4. If the server has previously demanded authentication credentials,  * call http_auth_request() and add your 'Authentication:' header to the * request. *  * 5. Send the request. * * 6. Read the response: *  - Pass the value of the '(Proxy|WWW)-Authenticate' header to  *    http_auth_challenge. *  - If there is a '(Proxy-)Authentication-Info', save its value. *  - Pass each block of the response entity-body to http_auth_response_body. * * 7. After reading the response, call http_auth_verify_response to * check whether the server was authenticated okay, passing the previously * saved '(Proxy-)Authentication-Info' value. *//* The authentication scheme we are using */typedef enum {    http_auth_scheme_basic,    http_auth_scheme_digest,    http_auth_scheme_none} http_auth_scheme_t;typedef enum {     http_auth_alg_md5,    http_auth_alg_md5_sess,    http_auth_alg_unknown} http_auth_algorithm_t;/* Selected method of qop which the client is using */typedef enum {    http_auth_qop_none,    http_auth_qop_auth,    http_auth_qop_auth_int} http_auth_qop_t;/* Authentication session state. */typedef struct {    /* The scheme used for this authentication session */    http_auth_scheme_t scheme;    /* The username and password we are using to authenticate with */    const char *username;    const char *password;    /* The method and URI we are using for the current request */    const char *uri;    const char *method;    /* Whether we have a request body for the current request */    bool got_body;    /* And what the body is - stream or buffer */    FILE *body_stream;    const char *body_buffer;    /* This used for Basic auth */    char *basic;     /* These all used for Digest auth */    char *unq_realm;    char *unq_nonce;    char *unq_cnonce;    char *opaque;    http_auth_qop_t qop;    http_auth_algorithm_t alg;    int nonce_count;    /* The ASCII representation of the session's H(A1) value */    char h_a1[33];    /* Used for calculation of H(entity-body) of the response */    struct md5_ctx response_body;    /* Temporary store for half of the Request-Digest     * (an optimisation - used in the response-digest calculation) */    struct md5_ctx stored_rdig;} http_auth_session_t;/* Initializes the authentication state for the given session, * which will use the given username and password. */void http_auth_init( http_auth_session_t *sess, 		     const char *username, const char *password );/* Finishes off the given authentication session, freeing * any memory used. */void http_auth_finish( http_auth_session_t *sess );/* Call this before sending a new request. * Pass ONE OF body_buffer as non-NULL if the request will  * include an entity-body. If body_buffer is non-NULL, it MUST * be \0-terminated. */void http_auth_new_request( http_auth_session_t *sess,			    const char *method, const char *uri,			    const char *body_buffer, FILE *body_stream );/* Returns the value of the authentication field if one is to be sent, * else NULL. The return value will be taken from malloc()'ed memory, * so should be free()'ed after use. */char *http_auth_request( http_auth_session_t *sess );/* Pass this the value of the "(Proxy,WWW)-Authenticate: " header field. * Returns true if we can now authenticate ourselves with the server. */bool http_auth_challenge( http_auth_session_t *sess, const char *value );/* As you receive sections of the response entity-body, pass them to  * this function. */void http_auth_response_body( http_auth_session_t *sess, 			      const char *buffer, size_t buffer_len );/* If you receive a "(Proxy-)Authentication-Info:" header, pass its value to * this function. Returns true if this successfully authenticates * the response as coming from the server, and false if it hasn't. */bool http_auth_verify_response( http_auth_session_t *sess, const char *value );#endif /* HTTPAUTH_H */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区三区激情| 久久精品国产免费| 麻豆精品国产91久久久久久| 国产91丝袜在线播放0| 欧美嫩在线观看| 亚洲男人天堂一区| 国产伦精品一区二区三区免费| 欧美亚洲国产bt| 日韩理论片中文av| 国产传媒日韩欧美成人| 欧美一级国产精品| 香蕉乱码成人久久天堂爱免费| 国产成人激情av| 精品少妇一区二区三区在线视频| 一区二区三区免费| 99精品在线观看视频| 欧美国产精品一区| 久久99国产精品尤物| 日韩欧美一级精品久久| 日本色综合中文字幕| 欧美喷潮久久久xxxxx| 亚洲一区二区在线视频| 91欧美一区二区| 亚洲三级视频在线观看| 91网站黄www| 亚洲美女视频在线| 在线日韩一区二区| 一区二区三区久久久| 色婷婷久久综合| 亚洲女同ⅹxx女同tv| 91久久精品国产91性色tv| 亚洲丝袜自拍清纯另类| 色就色 综合激情| 亚洲一区二区三区激情| 欧美精品免费视频| 青草av.久久免费一区| 欧美成人一区二区| 国产精品一区二区男女羞羞无遮挡| 久久先锋影音av鲁色资源| 国产一区二区三区四区五区入口 | 色域天天综合网| 亚洲男女毛片无遮挡| 色综合中文字幕国产 | 欧美精品一区二区三| 黑人巨大精品欧美黑白配亚洲| 精品国产区一区| 国产99久久精品| 亚洲视频精选在线| 欧美人与性动xxxx| 韩国三级中文字幕hd久久精品| 久久久亚洲综合| 99久久综合国产精品| 亚洲色图视频免费播放| 欧美人xxxx| 国产精品自在欧美一区| 日韩一区在线看| 欧美日韩一卡二卡三卡| 国产曰批免费观看久久久| 国产精品美女久久久久久久| 色婷婷综合久色| 另类中文字幕网| 国产精品国产自产拍高清av | 成人免费av资源| 亚洲一区二区三区视频在线播放| 91精品国产高清一区二区三区 | 奇米色777欧美一区二区| 26uuu国产电影一区二区| 色综合一个色综合亚洲| 日本免费新一区视频| 中文字幕av免费专区久久| 欧美三级日韩三级| 国产在线一区观看| 亚洲精品免费在线| 2024国产精品| 欧美色图激情小说| 成人性生交大合| 日韩中文字幕91| 亚洲少妇30p| xnxx国产精品| 在线电影欧美成精品| 成人免费视频播放| 久久国产精品99久久人人澡| 亚洲欧美日韩一区二区| 久久综合九色综合欧美98| 欧美精品黑人性xxxx| 99久久国产免费看| 国产精品一区专区| 日韩成人精品视频| 亚洲国产精品综合小说图片区| 国产农村妇女毛片精品久久麻豆| 91精品欧美一区二区三区综合在| 91无套直看片红桃| 亚洲成人免费视频| 一区二区三区不卡在线观看 | 亚欧色一区w666天堂| 最新不卡av在线| 欧美国产精品中文字幕| 精品久久久久一区| 91麻豆精品国产91久久久久| 色久优优欧美色久优优| 成人做爰69片免费看网站| 久久国产日韩欧美精品| 奇米一区二区三区av| 日韩av一二三| 亚洲123区在线观看| 亚洲一二三区在线观看| 亚洲激情自拍视频| 亚洲啪啪综合av一区二区三区| 欧美国产禁国产网站cc| 久久久久久久久99精品| 国产亚洲一区二区三区| 久久免费视频一区| 欧美精品一区二区三区视频| 日韩精品一区二区三区视频播放| 91精品国产综合久久久久久| 欧美日韩日日摸| 欧美精品丝袜中出| 91精品国产日韩91久久久久久| 欧美喷潮久久久xxxxx| 91麻豆精品久久久久蜜臀| 欧美岛国在线观看| 2020国产精品自拍| 欧美国产视频在线| 1000部国产精品成人观看| 亚洲欧美韩国综合色| 亚洲h在线观看| 美女视频网站黄色亚洲| 韩国成人在线视频| 成人性生交大片免费看中文网站 | 国产在线精品一区二区| 国产精品一区二区三区乱码| 懂色av一区二区三区蜜臀| 成人一区二区三区在线观看| 91丨porny丨在线| 欧美精品日韩一区| 欧美韩国日本一区| 亚洲成人第一页| 六月丁香综合在线视频| 成人亚洲一区二区一| 欧美怡红院视频| 日韩一区二区三区视频在线| 久久精品视频免费观看| 亚洲乱码中文字幕| 免费在线视频一区| 波多野结衣亚洲| 欧美日韩国产一区| 国产日韩欧美高清在线| 亚洲乱码国产乱码精品精98午夜 | 欧美一区二区播放| 欧美激情在线看| 天堂资源在线中文精品| 国内精品国产成人国产三级粉色| 99久久精品免费看国产免费软件| 欧美人牲a欧美精品| 国产精品美女久久久久高潮| 亚洲一区在线观看免费| 国产成人精品免费在线| 欧美精品日韩一区| 亚洲欧美国产三级| 国产乱人伦偷精品视频不卡| 欧美日韩精品电影| 国产精品女主播在线观看| 日韩中文字幕一区二区三区| 成人av电影免费观看| 精品国产欧美一区二区| 亚洲成av人片在线观看无码| 懂色av中文一区二区三区| 日韩欧美一级二级三级久久久| 一区二区三区在线视频免费 | 欧美性色aⅴ视频一区日韩精品| 精品国产91亚洲一区二区三区婷婷 | 在线看不卡av| 国产亚洲欧美中文| 免费成人美女在线观看.| 92国产精品观看| 国产亚洲一区字幕| 美女www一区二区| 51精品国自产在线| 亚洲综合另类小说| 色综合久久久久久久| 国产精品免费av| 国精产品一区一区三区mba桃花| 欧美日韩国产区一| 一个色综合网站| k8久久久一区二区三区| 国产亚洲福利社区一区| 九九在线精品视频| 欧美电影免费观看高清完整版| 亚洲sss视频在线视频| 91国偷自产一区二区三区观看| 国产精品短视频| 成人精品在线视频观看| 国产无一区二区| 国产一区二区不卡老阿姨| 日韩欧美国产综合| 欧美日韩在线综合| 国产一区二区精品久久91| 亚洲一区二区免费视频| 91色.com| 亚洲精品成人a在线观看|