📄 protos.h
字号:
extern int mimeGetViewOption(const char *fn);extern int mcastSetTtl(int, int);extern IPH mcastJoinGroups;/* Labels for hierachical log file *//* put them all here for easier reference when writing a logfile analyzer */extern peer *getFirstPeer(void);extern peer *getFirstUpParent(request_t *);extern peer *getNextPeer(peer *);extern peer *getSingleParent(request_t *);extern int neighborsCount(request_t *);extern int neighborsUdpPing(request_t *, StoreEntry *, IRCB * callback, void *data, int *exprep, int *timeout);extern void neighborAddAcl(const char *, const char *);extern void neighborsUdpAck(const cache_key *, icp_common_t *, const struct sockaddr_in *);extern void neighborAdd(const char *, const char *, int, int, int, int, int);extern void neighbors_open(int);extern peer *peerFindByName(const char *);extern peer *peerFindByNameAndPort(const char *, unsigned short);extern peer *getDefaultParent(request_t * request);extern peer *getRoundRobinParent(request_t * request);extern peer *getAnyParent(request_t * request);extern lookup_t peerDigestLookup(peer * p, request_t * request, StoreEntry * entry);extern peer *neighborsDigestSelect(request_t * request, StoreEntry * entry);extern void peerNoteDigestLookup(request_t * request, peer * p, lookup_t lookup);extern void peerNoteDigestGone(peer * p);extern int neighborUp(const peer * e);extern CBDUNL peerDestroy;extern char *neighborTypeStr(const peer * e);extern peer_t neighborType(const peer *, const request_t *);extern void peerCheckConnectStart(peer *);extern void dump_peer_options(StoreEntry *, peer *);extern int peerHTTPOkay(const peer *, request_t *);extern peer *whichPeer(const struct sockaddr_in *from);#if USE_HTCPextern void neighborsHtcpReply(const cache_key *, htcpReplyData *, const struct sockaddr_in *);#endifextern void netdbInit(void);extern void netdbHandlePingReply(const struct sockaddr_in *from, int hops, int rtt);extern void netdbPingSite(const char *hostname);extern void netdbInit(void);extern void netdbDump(StoreEntry *);extern int netdbHops(struct in_addr);extern void netdbFreeMemory(void);extern int netdbHostHops(const char *host);extern int netdbHostRtt(const char *host);extern int netdbHostPeerRtt(const char *host, peer * peer);extern void netdbUpdatePeer(request_t *, peer * e, int rtt, int hops);extern void netdbDeleteAddrNetwork(struct in_addr addr);extern int netdbHostPeerRtt(const char *host, peer * peer);extern void netdbBinaryExchange(StoreEntry *);extern EVH netdbExchangeStart;extern void netdbExchangeUpdatePeer(struct in_addr, peer *, double, double);extern peer *netdbClosestParent(request_t *);extern void netdbHostData(const char *host, int *samp, int *rtt, int *hops);extern void cachemgrStart(int fd, request_t * request, StoreEntry * entry);extern void cachemgrRegister(const char *, const char *, OBJH *, int, int);extern void cachemgrInit(void);extern void peerSelect(request_t *, StoreEntry *, PSC *, void *data);extern void peerSelectInit(void);/* peer_digest.c */extern PeerDigest *peerDigestCreate(peer * p);extern void peerDigestNeeded(PeerDigest * pd);extern void peerDigestNotePeerGone(PeerDigest * pd);extern void peerDigestStatsReport(const PeerDigest * pd, StoreEntry * e);/* forward.c */extern void fwdStart(int, StoreEntry *, request_t *, struct in_addr, struct in_addr);extern DEFER fwdCheckDeferRead;extern void fwdFail(FwdState *, ErrorState *);extern void fwdUnregister(int fd, FwdState *);extern void fwdComplete(FwdState * fwdState);extern void fwdInit(void);extern int fwdReforwardableStatus(http_status s);extern void fwdServersFree(FwdServer ** FS);extern void urnStart(request_t *, StoreEntry *);extern void redirectStart(clientHttpRequest *, RH *, void *);extern void redirectInit(void);extern void redirectShutdown(void);extern void authenticateStart(acl_proxy_auth_user *, RH *, void *);extern void authenticateInit(void);extern void authenticateShutdown(void);extern void refreshAddToList(const char *, int, time_t, int, time_t);extern int refreshIsCachable(const StoreEntry *);extern int refreshCheckHTTP(const StoreEntry *, request_t *);extern int refreshCheckICP(const StoreEntry *, request_t *);extern int refreshCheckDigest(const StoreEntry *, time_t delta);extern time_t getMaxAge(const char *url);extern void refreshInit(void);extern void serverConnectionsClose(void);extern void shut_down(int);extern void start_announce(void *unused);extern void sslStart(int fd, const char *, request_t *, size_t * sz);extern void waisStart(FwdState *);/* ident.c */#if USE_IDENTextern void identStart(struct sockaddr_in *me, struct sockaddr_in *peer, IDCB * callback, void *cbdata);extern void identInit(void);#endifextern void statInit(void);extern void statFreeMemory(void);extern double median_svc_get(int, int);extern void pconnHistCount(int, int);extern int stat5minClientRequests(void);extern double stat5minCPUUsage(void);extern const char *storeEntryFlags(const StoreEntry *);extern double statRequestHitRatio(int minutes);extern double statByteHitRatio(int minutes);/* StatHist */extern void statHistClean(StatHist * H);extern void statHistCount(StatHist * H, double val);extern void statHistCopy(StatHist * Dest, const StatHist * Orig);extern void statHistSafeCopy(StatHist * Dest, const StatHist * Orig);extern double statHistDeltaMedian(const StatHist * A, const StatHist * B);extern void statHistDump(const StatHist * H, StoreEntry * sentry, StatHistBinDumper bd);extern void statHistLogInit(StatHist * H, int capacity, double min, double max);extern void statHistEnumInit(StatHist * H, int last_enum);extern void statHistIntInit(StatHist * H, int n);extern StatHistBinDumper statHistEnumDumper;extern StatHistBinDumper statHistIntDumper;/* MemMeter */extern void memMeterSyncHWater(MemMeter * m);#define memMeterCheckHWater(m) { if ((m).hwater_level < (m).level) memMeterSyncHWater(&(m)); }#define memMeterInc(m) { (m).level++; memMeterCheckHWater(m); }#define memMeterDec(m) { (m).level--; }#define memMeterAdd(m, sz) { (m).level += (sz); memMeterCheckHWater(m); }#define memMeterDel(m, sz) { (m).level -= (sz); }/* mem */extern void memInit(void);extern void memClean();extern void memInitModule();extern void memCleanModule();extern void memConfigure();extern void *memAllocate(mem_type);extern void *memAllocBuf(size_t net_size, size_t * gross_size);extern CBDUNL memFree;extern void memFreeBuf(size_t size, void *);extern void memFree2K(void *);extern void memFree4K(void *);extern void memFree8K(void *);extern void memFreeDISK(void *);extern int memInUse(mem_type);extern size_t memTotalAllocated(void);/* MemPool */extern MemPool *memPoolCreate(const char *label, size_t obj_size);extern void memPoolDestroy(MemPool * pool);extern void *memPoolAlloc(MemPool * pool);extern void memPoolFree(MemPool * pool, void *obj);extern int memPoolWasUsed(const MemPool * pool);extern int memPoolInUseCount(const MemPool * pool);extern size_t memPoolInUseSize(const MemPool * pool);extern int memPoolUsedCount(const MemPool * pool);extern void memPoolReport(const MemPool * pool, StoreEntry * e);/* Mem */extern void memReport(StoreEntry * e);extern int stmemFreeDataUpto(mem_hdr *, int);extern void stmemAppend(mem_hdr *, const char *, int);extern ssize_t stmemCopy(const mem_hdr *, off_t, char *, size_t);extern void stmemFree(mem_hdr *);extern void stmemFreeData(mem_hdr *);/* ----------------------------------------------------------------- *//* * store.c */extern StoreEntry *new_StoreEntry(int, const char *, const char *);extern StoreEntry *storeGet(const cache_key *);extern StoreEntry *storeGetPublic(const char *uri, const method_t method);extern StoreEntry *storeCreateEntry(const char *, const char *, request_flags, method_t);extern void storeSetPublicKey(StoreEntry *);extern void storeComplete(StoreEntry *);extern void storeInit(void);extern int storeClientWaiting(const StoreEntry *);extern void storeAbort(StoreEntry *);extern void storeAppend(StoreEntry *, const char *, int);extern void storeLockObject(StoreEntry *);extern void storeSwapInStart(StoreEntry *, SIH *, void *data);extern void storeRelease(StoreEntry *);extern int storeUnlockObject(StoreEntry *);extern int storeUnregister(StoreEntry *, void *);extern void storeClientCopy(StoreEntry * e, off_t seen_offset, off_t copy_offset, size_t size, char *buf, STCB * callback, void *data);extern int storePendingNClients(const StoreEntry *);extern EVH storeMaintainSwapSpace;extern void storeExpireNow(StoreEntry *);extern void storeReleaseRequest(StoreEntry *);extern off_t storeLowestMemReaderOffset(const StoreEntry *);extern void storeConfigure(void);extern void storeNegativeCache(StoreEntry *);extern void storeFreeMemory(void);extern int expiresMoreThan(time_t, time_t);extern int storeClientCopyPending(StoreEntry *, void *);extern void InvokeHandlers(StoreEntry *);extern int storeEntryValidToSend(StoreEntry *);extern void storeTimestampsSet(StoreEntry *);extern time_t storeExpiredReferenceAge(void);extern void storeRegisterAbort(StoreEntry * e, STABH * cb, void *);extern void storeUnregisterAbort(StoreEntry * e);extern void storeMemObjectDump(MemObject * mem);extern void storeEntryDump(StoreEntry * e, int debug_lvl);extern const char *storeUrl(const StoreEntry *);extern void storeCreateMemObject(StoreEntry *, const char *, const char *);extern void storeCopyNotModifiedReplyHeaders(MemObject * O, MemObject * N);extern void storeBuffer(StoreEntry *);extern void storeBufferFlush(StoreEntry *);extern void storeHashInsert(StoreEntry * e, const cache_key *);extern void storeSetMemStatus(StoreEntry * e, int);#if STDC_HEADERSextern void storeAppendPrintf(StoreEntry *, const char *,...);#elseextern void storeAppendPrintf();#endifextern void storeAppendVPrintf(StoreEntry *, const char *, va_list ap);extern int storeCheckCachable(StoreEntry * e);extern void storeUnlinkFileno(int fileno);extern void storeSetPrivateKey(StoreEntry *);extern int objectLen(const StoreEntry * e);extern int contentLen(const StoreEntry * e);extern HttpReply *storeEntryReply(StoreEntry *);extern int storeTooManyDiskFilesOpen(void);extern void storeEntryReset(StoreEntry *);/* * store_log.c */extern void storeLog(int tag, const StoreEntry * e);extern void storeLogRotate(void);extern void storeLogClose(void);extern void storeLogOpen(void);/* * store_key_*.c */extern const cache_key *storeKeyDup(const cache_key *);extern cache_key *storeKeyCopy(cache_key *, const cache_key *);extern void storeKeyFree(const cache_key *);extern const cache_key *storeKeyScan(const char *);extern const char *storeKeyText(const cache_key *);extern const cache_key *storeKeyPublic(const char *, const method_t);extern const cache_key *storeKeyPrivate(const char *, method_t, int);extern int storeKeyHashBuckets(int);extern int storeKeyNull(const cache_key *);extern void storeKeyInit(void);extern HASHHASH storeKeyHashHash;extern HASHCMP storeKeyHashCmp;/* * store_clean.c */extern EVH storeDirClean;/* store_digest.c */extern void storeDigestInit();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -