⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 protos.h

📁 -
💻 H
📖 第 1 页 / 共 4 页
字号:
extern void httpStatusLineSet(HttpStatusLine * sline, double version,    http_status status, const char *reason);extern const char *httpStatusLineReason(const HttpStatusLine * sline);/* parse/pack *//* parse a 0-terminating buffer and fill internal structires; returns true on success */extern int httpStatusLineParse(HttpStatusLine * sline, const char *start,    const char *end);/* pack fields using Packer */extern void httpStatusLinePackInto(const HttpStatusLine * sline, Packer * p);extern const char *httpStatusString(http_status status);/* Http Body *//* init/clean */extern void httpBodyInit(HttpBody * body);extern void httpBodyClean(HttpBody * body);/* get body ptr (always use this) */extern const char *httpBodyPtr(const HttpBody * body);/* set body, does not clone mb so you should not reuse it */extern void httpBodySet(HttpBody * body, MemBuf * mb);/* pack */extern void httpBodyPackInto(const HttpBody * body, Packer * p);/* Http Cache Control Header Field */extern void httpHdrCcInitModule();extern void httpHdrCcCleanModule();extern HttpHdrCc *httpHdrCcCreate();extern HttpHdrCc *httpHdrCcParseCreate(const String * str);extern void httpHdrCcDestroy(HttpHdrCc * cc);extern HttpHdrCc *httpHdrCcDup(const HttpHdrCc * cc);extern void httpHdrCcPackInto(const HttpHdrCc * cc, Packer * p);extern void httpHdrCcJoinWith(HttpHdrCc * cc, const HttpHdrCc * new_cc);extern void httpHdrCcSetMaxAge(HttpHdrCc * cc, int max_age);extern void httpHdrCcUpdateStats(const HttpHdrCc * cc, StatHist * hist);extern void httpHdrCcStatDumper(StoreEntry * sentry, int idx, double val, double size, int count);/* Http Range Header Field */extern HttpHdrRange *httpHdrRangeParseCreate(const String * range_spec);/* returns true if ranges are valid; inits HttpHdrRange */extern int httpHdrRangeParseInit(HttpHdrRange * range, const String * range_spec);extern void httpHdrRangeDestroy(HttpHdrRange * range);extern HttpHdrRange *httpHdrRangeDup(const HttpHdrRange * range);extern void httpHdrRangePackInto(const HttpHdrRange * range, Packer * p);/* iterate through specs */extern HttpHdrRangeSpec *httpHdrRangeGetSpec(const HttpHdrRange * range, HttpHdrRangePos * pos);/* adjust specs after the length is known */extern int httpHdrRangeCanonize(HttpHdrRange * range, size_t clen);/* other */extern String httpHdrRangeBoundaryStr(clientHttpRequest * http);extern int httpHdrRangeIsComplex(const HttpHdrRange * range);extern int httpHdrRangeWillBeComplex(const HttpHdrRange * range);extern size_t httpHdrRangeFirstOffset(const HttpHdrRange * range);extern size_t httpHdrRangeLowestOffset(const HttpHdrRange * range, size_t size);/* Http Content Range Header Field */extern HttpHdrContRange *httpHdrContRangeCreate();extern HttpHdrContRange *httpHdrContRangeParseCreate(const char *crange_spec);/* returns true if range is valid; inits HttpHdrContRange */extern int httpHdrContRangeParseInit(HttpHdrContRange * crange, const char *crange_spec);extern void httpHdrContRangeDestroy(HttpHdrContRange * crange);extern HttpHdrContRange *httpHdrContRangeDup(const HttpHdrContRange * crange);extern void httpHdrContRangePackInto(const HttpHdrContRange * crange, Packer * p);/* inits with given spec */extern void httpHdrContRangeSet(HttpHdrContRange *, HttpHdrRangeSpec, size_t ent_len);/* Http Header Tools */extern HttpHeaderFieldInfo *httpHeaderBuildFieldsInfo(const HttpHeaderFieldAttrs * attrs, int count);extern void httpHeaderDestroyFieldsInfo(HttpHeaderFieldInfo * info, int count);extern int httpHeaderIdByName(const char *name, int name_len, const HttpHeaderFieldInfo * attrs, int end);extern int httpHeaderIdByNameDef(const char *name, int name_len);extern void httpHeaderMaskInit(HttpHeaderMask * mask, int value);extern void httpHeaderCalcMask(HttpHeaderMask * mask, const int *enums, int count);extern int httpHeaderHasConnDir(const HttpHeader * hdr, const char *directive);extern void httpHeaderAddContRange(HttpHeader * hdr, HttpHdrRangeSpec spec, size_t ent_len);extern void strListAdd(String * str, const char *item, char del);extern int strListIsMember(const String * str, const char *item, char del);extern int strListIsSubstr(const String * list, const char *s, char del);extern int strListGetItem(const String * str, char del, const char **item, int *ilen, const char **pos);extern const char *getStringPrefix(const char *str, const char *end);extern int httpHeaderParseInt(const char *start, int *val);extern int httpHeaderParseSize(const char *start, size_t * sz);extern int httpHeaderReset(HttpHeader * hdr);#if STDC_HEADERSextern void httpHeaderPutStrf(HttpHeader * hdr, http_hdr_type id, const char *fmt,...);#elseextern void     httpHeaderPutStrf();#endif/* Http Header */extern void httpHeaderInitModule();extern void httpHeaderCleanModule();/* init/clean */extern void httpHeaderInit(HttpHeader * hdr, http_hdr_owner_type owner);extern void httpHeaderClean(HttpHeader * hdr);/* append/update */extern void httpHeaderAppend(HttpHeader * dest, const HttpHeader * src);extern void httpHeaderUpdate(HttpHeader * old, const HttpHeader * fresh, const HttpHeaderMask * denied_mask);/* parse/pack */extern int httpHeaderParse(HttpHeader * hdr, const char *header_start, const char *header_end);extern void httpHeaderPackInto(const HttpHeader * hdr, Packer * p);/* field manipulation */extern int httpHeaderHas(const HttpHeader * hdr, http_hdr_type type);extern void httpHeaderPutInt(HttpHeader * hdr, http_hdr_type type, int number);extern void httpHeaderPutTime(HttpHeader * hdr, http_hdr_type type, time_t time);extern void httpHeaderPutStr(HttpHeader * hdr, http_hdr_type type, const char *str);extern void httpHeaderPutAuth(HttpHeader * hdr, const char *authScheme, const char *realm);extern void httpHeaderPutCc(HttpHeader * hdr, const HttpHdrCc * cc);extern void httpHeaderPutContRange(HttpHeader * hdr, const HttpHdrContRange * cr);extern void httpHeaderPutRange(HttpHeader * hdr, const HttpHdrRange * range);extern void httpHeaderPutExt(HttpHeader * hdr, const char *name, const char *value);extern int httpHeaderGetInt(const HttpHeader * hdr, http_hdr_type id);extern time_t httpHeaderGetTime(const HttpHeader * hdr, http_hdr_type id);extern TimeOrTag httpHeaderGetTimeOrTag(const HttpHeader * hdr, http_hdr_type id);extern HttpHdrCc *httpHeaderGetCc(const HttpHeader * hdr);extern ETag httpHeaderGetETag(const HttpHeader * hdr, http_hdr_type id);extern HttpHdrRange *httpHeaderGetRange(const HttpHeader * hdr);extern HttpHdrContRange *httpHeaderGetContRange(const HttpHeader * hdr);extern const char *httpHeaderGetStr(const HttpHeader * hdr, http_hdr_type id);extern const char *httpHeaderGetLastStr(const HttpHeader * hdr, http_hdr_type id);extern const char *httpHeaderGetAuth(const HttpHeader * hdr, http_hdr_type id, const char *authScheme);extern String httpHeaderGetList(const HttpHeader * hdr, http_hdr_type id);extern int httpHeaderDelByName(HttpHeader * hdr, const char *name);extern int httpHeaderDelById(HttpHeader * hdr, http_hdr_type id);extern void httpHeaderDelAt(HttpHeader * hdr, HttpHeaderPos pos);/* avoid using these low level routines */extern HttpHeaderEntry *httpHeaderGetEntry(const HttpHeader * hdr, HttpHeaderPos * pos);extern HttpHeaderEntry *httpHeaderFindEntry(const HttpHeader * hdr, http_hdr_type id);extern void httpHeaderAddEntry(HttpHeader * hdr, HttpHeaderEntry * e);extern HttpHeaderEntry *httpHeaderEntryClone(const HttpHeaderEntry * e);extern void httpHeaderEntryPackInto(const HttpHeaderEntry * e, Packer * p);/* store report about current header usage and other stats */extern void httpHeaderStoreReport(StoreEntry * e);/* Http Msg (currently in HttpReply.c @?@ ) */extern int httpMsgIsPersistent(float http_ver, const HttpHeader * hdr);extern int httpMsgIsolateHeaders(const char **parse_start, const char **blk_start, const char **blk_end);/* Http Reply */extern void httpReplyInitModule();/* create/destroy */extern HttpReply *httpReplyCreate();extern void httpReplyDestroy(HttpReply * rep);/* reset: clean, then init */extern void httpReplyReset(HttpReply * rep);/* absorb: copy the contents of a new reply to the old one, destroy new one */extern void httpReplyAbsorb(HttpReply * rep, HttpReply * new_rep);/* parse returns -1,0,+1 on error,need-more-data,success */extern int httpReplyParse(HttpReply * rep, const char *buf);	/*, int atEnd); */extern void httpReplyPackInto(const HttpReply * rep, Packer * p);/* ez-routines *//* mem-pack: returns a ready to use mem buffer with a packed reply */extern MemBuf httpReplyPack(const HttpReply * rep);/* swap: create swap-based packer, pack, destroy packer */extern void httpReplySwapOut(const HttpReply * rep, StoreEntry * e);/* set commonly used info with one call */extern void httpReplySetHeaders(HttpReply * rep, double ver, http_status status,    const char *reason, const char *ctype, int clen, time_t lmt, time_t expires);/* do everything in one call: init, set, pack, clean, return MemBuf */extern MemBuf httpPackedReply(double ver, http_status status, const char *ctype,    int clen, time_t lmt, time_t expires);/* construct 304 reply and pack it into MemBuf, return MemBuf */extern MemBuf httpPacked304Reply(const HttpReply * rep);/* update when 304 reply is received for a cached object */extern void httpReplyUpdateOnNotModified(HttpReply * rep, HttpReply * freshRep);/* header manipulation */extern int httpReplyContentLen(const HttpReply * rep);extern const char *httpReplyContentType(const HttpReply * rep);extern time_t httpReplyExpires(const HttpReply * rep);extern int httpReplyHasCc(const HttpReply * rep, http_hdr_cc_type type);extern void httpRedirectReply(HttpReply *, http_status, const char *);/* Http Request */extern request_t *requestCreate(method_t, protocol_t, const char *urlpath);extern void requestDestroy(request_t *);extern request_t *requestLink(request_t *);extern void requestUnlink(request_t *);extern int httpRequestParseHeader(request_t * req, const char *parse_start);extern void httpRequestSwapOut(const request_t * req, StoreEntry * e);extern void httpRequestPack(const request_t * req, Packer * p);extern int httpRequestPrefixLen(const request_t * req);extern int httpRequestHdrAllowed(const HttpHeaderEntry * e, String * strConnection);extern void icmpOpen(void);extern void icmpClose(void);extern void icmpPing(struct in_addr to);extern void icmpSourcePing(struct in_addr to, const icp_common_t *, const char *url);extern void icmpDomainPing(struct in_addr to, const char *domain);extern void *icpCreateMessage(icp_opcode opcode,    int flags,    const char *url,    int reqnum,    int pad);extern int icpUdpSend(int, const struct sockaddr_in *, icp_common_t *, log_type, int);extern PF icpHandleUdp;extern PF icpUdpSendQueue;extern PF httpAccept;#ifdef SQUID_SNMPextern PF snmpHandleUdp;extern void snmpInit(void);extern void snmpConnectionOpen(void);extern void snmpConnectionShutdown(void);extern void snmpConnectionClose(void);extern void snmpDebugOid(int lvl, oid * Name, snint Len);extern void addr2oid(struct in_addr addr, oid * Dest);extern struct in_addr *oid2addr(oid * id);extern struct in_addr *client_entry(struct in_addr *current);extern variable_list *snmp_basicFn(variable_list *, snint *);extern variable_list *snmp_confFn(variable_list *, snint *);extern variable_list *snmp_sysFn(variable_list *, snint *);extern variable_list *snmp_prfSysFn(variable_list *, snint *);extern variable_list *snmp_prfProtoFn(variable_list *, snint *);extern variable_list *snmp_prfPeerFn(variable_list *, snint *);extern variable_list *snmp_netIpFn(variable_list *, snint *);extern variable_list *snmp_netFqdnFn(variable_list *, snint *);extern variable_list *snmp_netDnsFn(variable_list *, snint *);extern variable_list *snmp_meshPtblFn(variable_list *, snint *);extern variable_list *snmp_meshCtblFn(variable_list *, snint *);#endif /* SQUID_SNMP */extern void icpHandleIcpV3(int, struct sockaddr_in, char *, int);extern int icpCheckUdpHit(StoreEntry *, request_t * request);extern void icpConnectionsOpen(void);extern void icpConnectionShutdown(void);extern void icpConnectionClose(void);extern int icpSetCacheKey(const cache_key * key);extern const cache_key *icpGetCacheKey(const char *url, int reqnum);extern void ipcache_nbgethostbyname(const char *name,    IPH * handler,    void *handlerData);extern EVH ipcache_purgelru;extern const ipcache_addrs *ipcache_gethostbyname(const char *, int flags);extern void ipcacheInvalidate(const char *);extern void ipcacheReleaseInvalid(const char *);extern void ipcache_init(void);extern void stat_ipcache_get(StoreEntry *);extern int ipcacheQueueDrain(void);extern void ipcacheCycleAddr(const char *name, ipcache_addrs *);extern void ipcacheMarkBadAddr(const char *name, struct in_addr);extern void ipcacheMarkGoodAddr(const char *name, struct in_addr);extern void ipcacheFreeMemory(void);extern ipcache_addrs *ipcacheCheckNumeric(const char *name);extern void ipcache_restart(void);extern int ipcacheUnregister(const char *name, void *data);/* MemBuf *//* init with specific sizes */extern void memBufInit(MemBuf * mb, mb_size_t szInit, mb_size_t szMax);/* init with defaults */extern void memBufDefInit(MemBuf * mb);/* cleans mb; last function to call if you do not give .buf away */extern void memBufClean(MemBuf * mb);/* resets mb preserving (or initializing if needed) memory buffer */extern void memBufReset(MemBuf * mb);/* unfirtunate hack to test if the buffer has been Init()ialized */extern int memBufIsNull(MemBuf * mb);/* calls memcpy, appends exactly size bytes, extends buffer if needed */extern void memBufAppend(MemBuf * mb, const char *buf, mb_size_t size);/* calls snprintf, extends buffer if needed */#if STDC_HEADERSextern void memBufPrintf(MemBuf * mb, const char *fmt,...);#elseextern void memBufPrintf();#endif/* vprintf for other printf()'s to use */extern void memBufVPrintf(MemBuf * mb, const char *fmt, va_list ap);/* returns free() function to be used, _freezes_ the object! */extern FREE *memBufFreeFunc(MemBuf * mb);/* puts report on MemBuf _module_ usage into mb */extern void memBufReport(MemBuf * mb);extern char *mime_get_header(const char *mime, const char *header);extern char *mime_get_header_field(const char *mime, const char *name, const char *prefix);extern size_t headersEnd(const char *, size_t);extern const char *mime_get_auth(const char *hdr, const char *auth_scheme, const char **auth_field);extern void mimeInit(char *filename);extern void mimeFreeMemory(void);extern char *mimeGetContentEncoding(const char *fn);extern char *mimeGetContentType(const char *fn);extern char *mimeGetIcon(const char *fn);extern char *mimeGetIconURL(const char *fn);extern char mimeGetTransferMode(const char *fn);extern int mimeGetDownloadOption(const char *fn);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -