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

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

?? lhash.h

?? OpenSSL 0.9.8k 最新版OpenSSL
?? H
字號(hào):
/* crypto/lhash/lhash.h *//* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) * All rights reserved. * * This package is an SSL implementation written * by Eric Young (eay@cryptsoft.com). * The implementation was written so as to conform with Netscapes SSL. *  * This library is free for commercial and non-commercial use as long as * the following conditions are aheared to.  The following conditions * apply to all code found in this distribution, be it the RC4, RSA, * lhash, DES, etc., code; not just the SSL code.  The SSL documentation * included with this distribution is covered by the same copyright terms * except that the holder is Tim Hudson (tjh@cryptsoft.com). *  * Copyright remains Eric Young's, and as such any Copyright notices in * the code are not to be removed. * If this package is used in a product, Eric Young should be given attribution * as the author of the parts of the library used. * This can be in the form of a textual message at program startup or * in documentation (online or textual) provided with the package. *  * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the copyright *    notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright *    notice, this list of conditions and the following disclaimer in the *    documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software *    must display the following acknowledgement: *    "This product includes cryptographic software written by *     Eric Young (eay@cryptsoft.com)" *    The word 'cryptographic' can be left out if the rouines from the library *    being used are not cryptographic related :-). * 4. If you include any Windows specific code (or a derivative thereof) from  *    the apps directory (application code) you must include an acknowledgement: *    "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" *  * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. *  * The licence and distribution terms for any publically available version or * derivative of this code cannot be changed.  i.e. this code cannot simply be * copied and put under another distribution licence * [including the GNU Public Licence.] *//* Header for dynamic hash table routines * Author - Eric Young */#ifndef HEADER_LHASH_H#define HEADER_LHASH_H#include <openssl/e_os2.h>#ifndef OPENSSL_NO_FP_API#include <stdio.h>#endif#ifndef OPENSSL_NO_BIO#include <openssl/bio.h>#endif#ifdef  __cplusplusextern "C" {#endiftypedef struct lhash_node_st	{	void *data;	struct lhash_node_st *next;#ifndef OPENSSL_NO_HASH_COMP	unsigned long hash;#endif	} LHASH_NODE;typedef int (*LHASH_COMP_FN_TYPE)(const void *, const void *);typedef unsigned long (*LHASH_HASH_FN_TYPE)(const void *);typedef void (*LHASH_DOALL_FN_TYPE)(void *);typedef void (*LHASH_DOALL_ARG_FN_TYPE)(void *, void *);/* Macros for declaring and implementing type-safe wrappers for LHASH callbacks. * This way, callbacks can be provided to LHASH structures without function * pointer casting and the macro-defined callbacks provide per-variable casting * before deferring to the underlying type-specific callbacks. NB: It is * possible to place a "static" in front of both the DECLARE and IMPLEMENT * macros if the functions are strictly internal. *//* First: "hash" functions */#define DECLARE_LHASH_HASH_FN(f_name,o_type) \	unsigned long f_name##_LHASH_HASH(const void *);#define IMPLEMENT_LHASH_HASH_FN(f_name,o_type) \	unsigned long f_name##_LHASH_HASH(const void *arg) { \		o_type a = (o_type)arg; \		return f_name(a); }#define LHASH_HASH_FN(f_name) f_name##_LHASH_HASH/* Second: "compare" functions */#define DECLARE_LHASH_COMP_FN(f_name,o_type) \	int f_name##_LHASH_COMP(const void *, const void *);#define IMPLEMENT_LHASH_COMP_FN(f_name,o_type) \	int f_name##_LHASH_COMP(const void *arg1, const void *arg2) { \		o_type a = (o_type)arg1; \		o_type b = (o_type)arg2; \		return f_name(a,b); }#define LHASH_COMP_FN(f_name) f_name##_LHASH_COMP/* Third: "doall" functions */#define DECLARE_LHASH_DOALL_FN(f_name,o_type) \	void f_name##_LHASH_DOALL(void *);#define IMPLEMENT_LHASH_DOALL_FN(f_name,o_type) \	void f_name##_LHASH_DOALL(void *arg) { \		o_type a = (o_type)arg; \		f_name(a); }#define LHASH_DOALL_FN(f_name) f_name##_LHASH_DOALL/* Fourth: "doall_arg" functions */#define DECLARE_LHASH_DOALL_ARG_FN(f_name,o_type,a_type) \	void f_name##_LHASH_DOALL_ARG(void *, void *);#define IMPLEMENT_LHASH_DOALL_ARG_FN(f_name,o_type,a_type) \	void f_name##_LHASH_DOALL_ARG(void *arg1, void *arg2) { \		o_type a = (o_type)arg1; \		a_type b = (a_type)arg2; \		f_name(a,b); }#define LHASH_DOALL_ARG_FN(f_name) f_name##_LHASH_DOALL_ARGtypedef struct lhash_st	{	LHASH_NODE **b;	LHASH_COMP_FN_TYPE comp;	LHASH_HASH_FN_TYPE hash;	unsigned int num_nodes;	unsigned int num_alloc_nodes;	unsigned int p;	unsigned int pmax;	unsigned long up_load; /* load times 256 */	unsigned long down_load; /* load times 256 */	unsigned long num_items;	unsigned long num_expands;	unsigned long num_expand_reallocs;	unsigned long num_contracts;	unsigned long num_contract_reallocs;	unsigned long num_hash_calls;	unsigned long num_comp_calls;	unsigned long num_insert;	unsigned long num_replace;	unsigned long num_delete;	unsigned long num_no_delete;	unsigned long num_retrieve;	unsigned long num_retrieve_miss;	unsigned long num_hash_comps;	int error;	} LHASH;#define LH_LOAD_MULT	256/* Indicates a malloc() error in the last call, this is only bad * in lh_insert(). */#define lh_error(lh)	((lh)->error)LHASH *lh_new(LHASH_HASH_FN_TYPE h, LHASH_COMP_FN_TYPE c);void lh_free(LHASH *lh);void *lh_insert(LHASH *lh, void *data);void *lh_delete(LHASH *lh, const void *data);void *lh_retrieve(LHASH *lh, const void *data);void lh_doall(LHASH *lh, LHASH_DOALL_FN_TYPE func);void lh_doall_arg(LHASH *lh, LHASH_DOALL_ARG_FN_TYPE func, void *arg);unsigned long lh_strhash(const char *c);unsigned long lh_num_items(const LHASH *lh);#ifndef OPENSSL_NO_FP_APIvoid lh_stats(const LHASH *lh, FILE *out);void lh_node_stats(const LHASH *lh, FILE *out);void lh_node_usage_stats(const LHASH *lh, FILE *out);#endif#ifndef OPENSSL_NO_BIOvoid lh_stats_bio(const LHASH *lh, BIO *out);void lh_node_stats_bio(const LHASH *lh, BIO *out);void lh_node_usage_stats_bio(const LHASH *lh, BIO *out);#endif#ifdef  __cplusplus}#endif#endif

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品日韩在线观看| 99视频一区二区| 欧美韩日一区二区三区| 欧美日韩国产一级二级| 国产精品一色哟哟哟| 亚洲成av人在线观看| 中文av字幕一区| 精品免费一区二区三区| 欧美午夜寂寞影院| 国产不卡高清在线观看视频| 丝袜美腿成人在线| 亚洲黄色在线视频| 亚洲国产激情av| 亚欧色一区w666天堂| 国产日韩欧美不卡在线| 69堂成人精品免费视频| 成人av网站在线观看| 美女尤物国产一区| 夜夜精品视频一区二区| 国产精品网站导航| 欧美mv日韩mv| 欧美一级久久久| 欧美日韩精品一区二区在线播放| 91亚洲午夜精品久久久久久| 国产电影一区在线| 国产一区 二区| 激情成人午夜视频| 久久国产精品99久久久久久老狼| 日韩在线a电影| 日本亚洲天堂网| 男人的天堂亚洲一区| 日韩av电影天堂| 毛片av中文字幕一区二区| 欧美bbbbb| 激情欧美一区二区| 国产精品伊人色| 成人性视频网站| 波多野结衣一区二区三区 | 免费观看成人鲁鲁鲁鲁鲁视频| 久久久久国产精品厨房| 久久综合色8888| 欧美mv日韩mv国产网站| 精品国产3级a| 国产欧美一区二区三区鸳鸯浴| 久久久久久免费网| 国产日产欧美一区二区视频| 国产欧美精品区一区二区三区| 中文字幕av不卡| 亚洲女爱视频在线| 成人自拍视频在线| 日本午夜一本久久久综合| 一区二区中文视频| 国产精品色一区二区三区| 久久精品综合网| 欧美日韩国产123区| 亚洲综合久久av| 亚洲免费观看在线观看| 国产精品三级视频| 国产精品第一页第二页第三页| 国产日韩欧美麻豆| 国产午夜精品美女毛片视频| 精品国产一区二区三区不卡 | 久久久久成人黄色影片| 日韩一区二区三区视频| 国产精品久久久久影院| 樱花影视一区二区| 亚洲另类春色国产| 国产欧美综合在线观看第十页| 欧美性猛片aaaaaaa做受| 国产欧美日韩在线看| 欧美艳星brazzers| 日韩一区二区电影| 欧美一区二区三区在线| 久久婷婷成人综合色| 亚洲免费观看高清完整版在线观看 | 亚洲欧洲av在线| 香蕉影视欧美成人| 国产成人99久久亚洲综合精品| 色94色欧美sute亚洲线路一ni| 制服丝袜亚洲网站| 国产欧美日韩在线看| 亚洲国产成人精品视频| 国产91在线看| 日韩一级二级三级| 亚洲美女在线国产| 国产精品亚洲综合一区在线观看| 欧美图区在线视频| 久久久久久久久久久久久女国产乱 | 在线成人午夜影院| 亚洲在线观看免费| 国产在线精品一区二区不卡了| 色菇凉天天综合网| 26uuu另类欧美| 调教+趴+乳夹+国产+精品| 成人深夜在线观看| 日韩欧美国产电影| 亚洲一区二区影院| 99久久精品99国产精品| 久久日韩精品一区二区五区| 亚洲成人激情社区| 91色porny| 国产精品午夜久久| 国产一区二区美女| 欧美电影免费观看高清完整版在线| 夜夜嗨av一区二区三区四季av| 国产精品一二三区在线| 欧美一区二区啪啪| 一区二区三区加勒比av| 成+人+亚洲+综合天堂| 久久精品亚洲乱码伦伦中文| 日本午夜一本久久久综合| 欧美日韩综合色| 艳妇臀荡乳欲伦亚洲一区| 国产精品久久精品日日| 精品动漫一区二区三区在线观看| 亚洲欧洲三级电影| 激情久久五月天| 日韩你懂的在线播放| 日韩av中文字幕一区二区| 欧美视频自拍偷拍| 一区二区三区在线高清| 成人免费视频播放| 亚洲国产高清在线| 丁香另类激情小说| 国产精品网站导航| 成人爱爱电影网址| 亚洲婷婷综合久久一本伊一区| 成人av在线电影| 中文字幕永久在线不卡| 成人av在线网| 亚洲国产精品自拍| 日韩vs国产vs欧美| 欧美丝袜丝交足nylons| 亚洲激情中文1区| 欧美在线制服丝袜| 亚洲电影在线播放| 欧美体内she精视频| 偷拍一区二区三区| 91精品国产综合久久久蜜臀图片| 日韩黄色免费电影| 日韩欧美卡一卡二| 国产一区二区成人久久免费影院| 欧美草草影院在线视频| 国产麻豆91精品| 国产精品嫩草久久久久| 日本韩国欧美三级| 五月天一区二区| 欧美电视剧免费全集观看| 国产精品1区2区| 国产精品久久午夜夜伦鲁鲁| 91网上在线视频| 狠狠久久亚洲欧美| 久久男人中文字幕资源站| 国产精品系列在线播放| 亚洲欧美日韩国产综合在线| 欧美性受xxxx黑人xyx性爽| 全国精品久久少妇| 国产肉丝袜一区二区| 91在线视频免费观看| 亚洲欧洲无码一区二区三区| 国产乱码精品一区二区三区五月婷| 亚洲国产精品二十页| 在线观看日韩国产| 九九九精品视频| 国产精品国产三级国产aⅴ中文 | 久久成人久久鬼色| 国产片一区二区三区| 欧美三片在线视频观看| 紧缚捆绑精品一区二区| 亚洲男同1069视频| 欧美成人aa大片| 色综合视频在线观看| 久久国产人妖系列| 亚洲激情图片一区| 精品区一区二区| 色av一区二区| 国产精品综合av一区二区国产馆| 欧美精品久久久久久久久老牛影院| 91小视频在线| 这里只有精品99re| 久久精品在线免费观看| 国产欧美精品在线观看| 中文字幕亚洲视频| 喷水一区二区三区| 国产在线国偷精品产拍免费yy| 不卡的av中国片| 欧美肥妇free| 国产精品美女久久久久av爽李琼| 成人免费视频在线观看| 丝袜诱惑亚洲看片| 成人禁用看黄a在线| 欧美在线观看视频一区二区| 欧美一区二区视频在线观看| 久久女同互慰一区二区三区| 亚洲最新视频在线观看| 精品一区二区在线看| 91九色最新地址| 欧美激情一区二区在线| 成人高清视频免费观看| 日韩欧美在线不卡|