]> git.ipfire.org Git - thirdparty/squid.git/blob - src/protos.h
LINT
[thirdparty/squid.git] / src / protos.h
1
2
3 extern void accessLogLog(AccessLogEntry *);
4 extern void accessLogRotate(void);
5 extern void accessLogClose(void);
6 extern void accessLogOpen(const char *);
7 extern void accessLogInit(void);
8 extern void hierarchyNote(HierarchyLogEntry *, hier_code, icp_ping_data *, const char *);
9
10 extern aclCheck_t *aclChecklistCreate(const struct _acl_access *,
11 request_t *,
12 struct in_addr src,
13 char *ua,
14 char *id);
15 extern void aclNBCheck(aclCheck_t *, PF *, void *);
16 extern int aclCheckFast(const struct _acl_access *A, aclCheck_t *);
17 extern void aclChecklistFree(aclCheck_t *);
18 extern int aclMatchAcl(struct _acl *, aclCheck_t *);
19 extern void aclDestroyAccessList(struct _acl_access **list);
20 extern void aclDestroyAcls(acl **);
21 extern void aclParseAccessLine(struct _acl_access **);
22 extern void aclParseAclLine(acl **);
23 extern struct _acl *aclFindByName(const char *name);
24 extern char *aclGetDenyInfoUrl(struct _acl_deny_info_list **, const char *name);
25 extern void aclParseDenyInfoLine(struct _acl_deny_info_list **);
26 extern void aclDestroyDenyInfoList(struct _acl_deny_info_list **);
27 extern void aclDestroyRegexList(struct _relist *data);
28 extern int aclMatchRegex(relist * data, const char *word);
29 extern void aclParseRegexList(void *curlist);
30
31
32 extern int aio_cancel(aio_result_t *);
33 extern int aio_open(const char *, int, mode_t, aio_result_t *);
34 extern int aio_read(int, char *, int, off_t, int, aio_result_t *);
35 extern int aio_write(int, char *, int, off_t, int, aio_result_t *);
36 extern int aio_close(int, aio_result_t *);
37 extern int aio_stat(const char *, struct stat *, aio_result_t *);
38 extern int aio_unlink(const char *, aio_result_t *);
39 extern int aio_opendir(const char *, aio_result_t *);
40 extern aio_result_t *aio_poll_done(void);
41
42
43 extern void aioCancel(int);
44 extern void aioOpen(const char *, int, mode_t, AIOCB *, void *);
45 extern void aioClose(int);
46 extern void aioWrite(int, char *, int, AIOCB *, void *);
47 extern void aioRead(int, char *, int, AIOCB *, void *);
48 extern void aioStat(char *, struct stat *, AIOCB *, void *);
49 extern void aioUnlink(const char *, AIOCB *, void *);
50 extern void aioCheckCallbacks(void);
51
52 extern int parseConfigFile(const char *file_name);
53 extern void intlistDestroy(intlist **);
54 extern void wordlistDestroy(wordlist **);
55 extern void configFreeMemory(void);
56
57 extern void cbdataInit(void);
58 extern void cbdataAdd(void *p);
59 extern void cbdataFree(void *p);
60 extern void cbdataLock(void *p);
61 extern void cbdataUnlock(void *p);
62 extern int cbdataValid(void *p);
63 extern void cbdataDump(StoreEntry *);
64
65 extern void clientdbInit(void);
66 extern void clientdbUpdate(struct in_addr, log_type, protocol_t);
67 extern int clientdbDeniedPercent(struct in_addr);
68 extern void clientdbDump(StoreEntry *);
69 extern CWCB clientWriteComplete;
70
71 extern void clientAccessCheck(void *);
72 extern void clientAccessCheckDone(int, void *);
73 extern void icpProcessExpired(int fd, void *);
74 extern int modifiedSince(StoreEntry *, request_t *);
75 extern char *clientConstructTraceEcho(clientHttpRequest *);
76 extern void clientPurgeRequest(clientHttpRequest *);
77 extern int checkNegativeHit(StoreEntry *);
78
79 #if USE_PROXY_AUTH
80 extern const char *proxyAuthenticate(const char *headers);
81 #endif /* USE_PROXY_AUTH */
82
83
84 extern int commSetNonBlocking(int fd);
85 extern void commSetCloseOnExec(int fd);
86 extern int comm_accept(int fd, struct sockaddr_in *, struct sockaddr_in *);
87 extern void comm_close(int fd);
88 extern void commConnectStart(int fd, const char *, u_short, CNCB *, void *);
89 extern int comm_connect_addr(int sock, const struct sockaddr_in *);
90 extern int comm_init(void);
91 extern int comm_listen(int sock);
92 extern int comm_open(int, int, struct in_addr, u_short port, int, const char *note);
93 extern u_short comm_local_port(int fd);
94 #if HAVE_POLL
95 extern int comm_poll(time_t);
96 #else
97 extern int comm_select(time_t);
98 #endif
99 extern void commSetSelect(int, unsigned int, PF *, void *, time_t);
100 extern void comm_add_close_handler(int fd, PF *, void *);
101 extern void comm_remove_close_handler(int fd, PF *, void *);
102 extern int comm_udp_sendto(int fd, const struct sockaddr_in *, int size, const char *buf, int len);
103 extern void comm_write(int fd,
104 char *buf,
105 int size,
106 CWCB * handler,
107 void *handler_data,
108 FREE *);
109 extern void commCallCloseHandlers(int fd);
110 extern int commSetTimeout(int fd, int, PF *, void *);
111 extern void commSetDefer(int fd, DEFER * func, void *);
112
113 extern void _db_init(const char *logfile, const char *options);
114 extern void _db_rotate_log(void);
115
116 #ifdef __STDC__
117 extern void _db_print(const char *,...);
118 #else
119 extern void _db_print();
120 #endif
121
122
123 extern int file_open(const char *path, int mode, FOCB *, void *callback_data);
124 extern void file_close(int fd);
125 extern int file_write(int fd,
126 char *buf,
127 int len,
128 DWCB * handle,
129 void *handle_data,
130 FREE *);
131 extern int file_read(int fd,
132 char *buf,
133 int req_len,
134 int offset,
135 DRCB * handler,
136 void *client_data);
137 extern int file_walk(int fd, FILE_WALK_HD *, void *, FILE_WALK_LHD *, void *);
138 extern int disk_init(void);
139 extern int diskWriteIsComplete(int);
140
141 extern void dnsShutdownServers(void);
142 extern void dnsOpenServers(void);
143 extern dnsserver_t *dnsGetFirstAvailable(void);
144 extern void dnsStats(StoreEntry *);
145 extern void dnsFreeMemory(void);
146
147 extern char *squid_error_url(const char *, int, int, const char *, int, const char *);
148 extern char *squid_error_request(const char *, int, int);
149 extern char *access_denied_msg(int, int, const char *, const char *);
150 extern char *access_denied_redirect(int, int, const char *, const char *, const char *);
151 #if USE_PROXY_AUTH
152 extern char *proxy_denied_msg(int, int, const char *, const char *);
153 #endif /* USE_PROXY_AUTH */
154 extern char *authorization_needed_msg(const request_t *, const char *);
155 extern void errorpageFreeMemory(void);
156
157
158 extern void eventAdd(const char *name, EVH * func, void *arg, time_t when);
159 extern void eventRun(void);
160 extern time_t eventNextTime(void);
161 extern void eventDelete(EVH * func, void *arg);
162
163 extern void fd_close(int fd);
164 extern void fd_open(int fd, unsigned int type, const char *);
165 extern void fd_note(int fd, const char *);
166 extern void fd_bytes(int fd, int len, unsigned int type);
167 extern void fdFreeMemory(void);
168 extern void fdDumpOpen(void);
169
170 extern void fdstat_init(void);
171 extern int fdstat_are_n_free_fd(int);
172
173 extern fileMap *file_map_create(int);
174 extern int file_map_allocate(fileMap *, int);
175 extern int file_map_bit_set(fileMap *, int);
176 extern int file_map_bit_test(fileMap *, int);
177 extern void file_map_bit_reset(fileMap *, int);
178 extern void filemapFreeMemory(fileMap *);
179
180
181 extern void fqdncache_nbgethostbyaddr(struct in_addr, FQDNH *, void *);
182 extern int fqdncacheUnregister(struct in_addr, void *);
183 extern const char *fqdncache_gethostbyaddr(struct in_addr, int flags);
184 extern void fqdncache_init(void);
185 extern void fqdnStats(StoreEntry *);
186 extern void fqdncacheReleaseInvalid(const char *);
187 extern const char *fqdnFromAddr(struct in_addr);
188 extern int fqdncacheQueueDrain(void);
189 extern void fqdncacheFreeMemory(void);
190 extern void fqdncache_restart(void);
191
192 extern void ftpStart(request_t * req, StoreEntry * entry);
193
194 extern void gopherStart(StoreEntry *);
195 extern int gopherCachable(const char *);
196
197
198 /* init */
199 extern hash_table *hash_create(HASHCMP *, int, HASHHASH *);
200 extern int hash_insert(hash_table *, const char *, void *);
201 extern int hash_delete(hash_table *, const char *);
202 extern int hash_delete_link(hash_table *, hash_link *);
203 extern int hash_join(hash_table *, hash_link *);
204 extern int hash_remove_link(hash_table *, hash_link *);
205
206 /* searching, accessing */
207 extern hash_link *hash_lookup(hash_table *, const void *);
208 extern hash_link *hash_first(hash_table *);
209 extern hash_link *hash_next(hash_table *);
210 extern hash_link *hash_get_bucket(hash_table *, unsigned int);
211 extern void hashFreeMemory(hash_table *);
212 extern HASHHASH hash_string;
213 extern HASHHASH hash_url;
214 extern HASHHASH hash4;
215
216 extern int httpCachable(method_t);
217 extern void httpStart(request_t *, StoreEntry *, peer *);
218 extern void httpParseReplyHeaders(const char *, struct _http_reply *);
219 extern void httpProcessReplyHeader(HttpStateData *, const char *, int);
220 extern void httpReplyHeaderStats(StoreEntry *);
221 extern size_t httpBuildRequestHeader(request_t * request,
222 request_t * orig_request,
223 StoreEntry * entry,
224 size_t * in_len,
225 char *hdr_out,
226 size_t out_sz,
227 int cfd,
228 int flags);
229 extern int httpAnonAllowed(const char *line);
230 extern int httpAnonDenied(const char *line);
231 extern char *httpReplyHeader(double ver,
232 http_status status,
233 char *ctype,
234 int clen,
235 time_t lmt,
236 time_t expires);
237
238
239 extern void icmpOpen(void);
240 extern void icmpClose(void);
241 extern void icmpPing(struct in_addr to);
242 extern void icmpSourcePing(struct in_addr to, const icp_common_t *, const char *url);
243 extern void icmpDomainPing(struct in_addr to, const char *domain);
244
245 extern void *icpCreateMessage(icp_opcode opcode,
246 int flags,
247 const char *url,
248 int reqnum,
249 int pad);
250 extern void icpUdpSend(int fd,
251 const struct sockaddr_in *,
252 icp_common_t * msg,
253 log_type,
254 protocol_t);
255 extern PF icpHandleUdp;
256 extern PF httpAccept;
257 extern DEFER httpAcceptDefer;
258 #ifdef SQUID_SNMP
259 extern PF snmpAccept;
260 #endif /* SQUID_SNMP */
261 extern void icpSendERROR(int fd,
262 log_type errorCode,
263 const char *text,
264 clientHttpRequest *,
265 int httpCode);
266 extern void AppendUdp(icpUdpData *);
267 extern PF icpUdpReply;
268 extern void icpHandleIcpV3(int, struct sockaddr_in, char *, int);
269 extern int icpCheckUdpHit(StoreEntry *, request_t * request);
270 #if USE_ICP_HIT_OBJ
271 extern int icpCheckUdpHitObj(StoreEntry * e, request_t * r, icp_common_t * h, int len);
272 extern void *icpCreateHitObjMessage(icp_opcode, int, const char *, int, int, StoreEntry *);
273 #endif
274
275 extern void ipcache_nbgethostbyname(const char *name,
276 IPH * handler,
277 void *handlerData);
278 extern EVH ipcache_purgelru;
279 extern const ipcache_addrs *ipcache_gethostbyname(const char *, int flags);
280 extern void ipcacheInvalidate(const char *);
281 extern void ipcacheReleaseInvalid(const char *);
282 extern void ipcacheShutdownServers(void);
283 extern void ipcache_init(void);
284 extern void stat_ipcache_get(StoreEntry *);
285 extern int ipcacheQueueDrain(void);
286 extern void ipcacheCycleAddr(const char *name);
287 extern void ipcacheMarkBadAddr(const char *name, struct in_addr);
288 extern void ipcacheMarkGoodAddr(const char *name, struct in_addr);
289 extern void ipcacheFreeMemory(void);
290 extern ipcache_addrs *ipcacheCheckNumeric(const char *name);
291 extern void ipcache_restart(void);
292 extern int ipcacheUnregister(const char *name, void *data);
293
294 extern char *mime_get_header(const char *mime, const char *header);
295 extern char *mime_headers_end(const char *mime);
296 extern int mk_mime_hdr(char *result, const char *type, int size, time_t ttl, time_t lmt);
297 extern void mimeInit(char *filename);
298 extern char *mimeGetContentEncoding(const char *fn);
299 extern char *mimeGetContentType(const char *fn);
300 extern char *mimeGetIcon(const char *fn);
301 extern char mimeGetTransferMode(const char *fn);
302
303 extern int mcastSetTtl(int, int);
304 extern IPH mcastJoinGroups;
305
306 /* Labels for hierachical log file */
307 /* put them all here for easier reference when writing a logfile analyzer */
308
309
310 extern peer *getFirstPeer(void);
311 extern peer *getFirstUpParent(request_t *);
312 extern peer *getNextPeer(peer *);
313 extern peer *getSingleParent(request_t *);
314 extern int neighborsCount(request_t *);
315 extern int neighborsUdpPing(request_t *,
316 StoreEntry *,
317 IRCB * callback,
318 void *data,
319 int *exprep);
320 extern void neighborAddAcl(const char *, const char *);
321 extern void neighborsUdpAck(const char *, icp_common_t *, const struct sockaddr_in *, StoreEntry *);
322 extern void neighborAdd(const char *, const char *, int, int, int, int, int);
323 extern void neighbors_open(int);
324 extern peer *peerFindByName(const char *);
325 extern peer *getDefaultParent(request_t * request);
326 extern peer *getRoundRobinParent(request_t * request);
327 extern int neighborUp(const peer * e);
328 extern void peerDestroy(peer * e);
329 extern char *neighborTypeStr(const peer * e);
330 extern void peerCheckConnectStart(peer *);
331
332 extern void netdbHandlePingReply(const struct sockaddr_in *from, int hops, int rtt);
333 extern void netdbPingSite(const char *hostname);
334 extern void netdbInit(void);
335 extern void netdbDump(StoreEntry *);
336 extern int netdbHops(struct in_addr);
337 extern void netdbFreeMemory(void);
338 extern int netdbHostHops(const char *host);
339 extern int netdbHostRtt(const char *host);
340 extern void netdbUpdatePeer(request_t *, peer * e, int rtt, int hops);
341
342 extern void objcachePasswdAdd(cachemgr_passwd **, char *, wordlist *);
343 extern void objcachePasswdDestroy(cachemgr_passwd ** a);
344 extern void objcacheStart(int fd, StoreEntry *);
345 extern void objcacheInit(void);
346
347 extern void peerSelect(request_t *, StoreEntry *, PSC *, PSC *, void *data);
348 extern peer *peerGetSomeParent(request_t *, hier_code *);
349 extern void peerSelectInit(void);
350
351 extern void protoDispatch(int, StoreEntry *, request_t *);
352
353 extern int protoUnregister(StoreEntry *, request_t *);
354 extern void protoStart(int, StoreEntry *, peer *, request_t *);
355 extern int protoAbortFetch(StoreEntry * entry);
356 extern DEFER protoCheckDeferRead;
357
358 extern void redirectStart(clientHttpRequest *, RH *, void *);
359 extern void redirectOpenServers(void);
360 extern void redirectShutdownServers(void);
361 extern void redirectStats(StoreEntry *);
362 extern int redirectUnregister(const char *url, void *);
363 extern void redirectFreeMemory(void);
364
365 extern void refreshAddToList(const char *, int, time_t, int, time_t);
366 extern int refreshCheck(const StoreEntry *, const request_t *, time_t delta);
367 extern time_t getMaxAge(const char *url);
368
369
370
371 extern void serverConnectionsClose(void);
372 extern void shut_down(int);
373
374
375 extern void start_announce(void *unused);
376 extern void sslStart(int fd, const char *, request_t *, size_t * sz);
377 extern void waisStart(request_t *, StoreEntry *);
378 extern void storeDirClean(void *unused);
379 extern void passStart(int, const char *, request_t *, size_t *);
380 extern void identStart(int, ConnStateData *, IDCB * callback);
381
382 extern void *pop(Stack *);
383 extern int empty_stack(const Stack *);
384 extern int full_stack(const Stack *);
385 extern void push(Stack *, void *);
386 extern void init_stack(Stack *, int);
387 extern void stackFreeMemory(Stack *);
388
389 extern void stat_init(cacheinfo **, const char *);
390 extern void pconnHistCount(int, int);
391
392 /* To reduce memory fragmentation, we now store the memory version of an
393 * object in fixed size blocks of size PAGE_SIZE and instead of calling
394 * malloc and free, we manage our own fixed block free list.
395 */
396
397 extern char *get_free_4k_page(void);
398 extern char *get_free_8k_page(void);
399 extern void *get_free_request_t(void);
400 extern void *get_free_mem_obj(void);
401 extern mem_hdr *memInit(void);
402 extern void put_free_4k_page(void *);
403 extern void put_free_8k_page(void *);
404 extern void put_free_request_t(void *);
405 extern void put_free_mem_obj(void *);
406 extern void stmemInit(void);
407 extern void stmemFreeMemory(void);
408
409 extern int memFreeDataUpto(mem_hdr *, int);
410 extern void memAppend(mem_hdr *, const char *, int);
411 extern ssize_t memCopy(const mem_hdr *, off_t, char *, size_t);
412 extern void memFree(mem_hdr *);
413 extern void memFreeData(mem_hdr *);
414
415
416
417 /* ----------------------------------------------------------------- */
418
419 extern StoreEntry *storeGet(const cache_key *);
420 extern StoreEntry *storeCreateEntry(const char *, const char *, int, method_t);
421 extern void storeSetPublicKey(StoreEntry *);
422 extern StoreEntry *storeGetFirst(void);
423 extern StoreEntry *storeGetNext(void);
424 extern void storeComplete(StoreEntry *);
425 extern void storeInit(void);
426 extern int storeClientWaiting(const StoreEntry *);
427 extern void storeAbort(StoreEntry *, int);
428 extern void storeAppend(StoreEntry *, const char *, int);
429 extern void storeLockObject(StoreEntry *);
430 extern void storeSwapInStart(StoreEntry *, SIH *, void *data);
431 extern int storeRelease(StoreEntry *);
432 extern int storeUnlockObject(StoreEntry *);
433 extern int storeUnregister(StoreEntry *, void *);
434 extern void storeClientCopy(StoreEntry * e,
435 off_t seen_offset,
436 off_t copy_offset,
437 size_t size,
438 char *buf,
439 STCB * callback,
440 void *data);
441 extern int storePendingNClients(const StoreEntry *);
442 extern int storeWriteCleanLogs(int reopen);
443 extern HASHCMP urlcmp;
444 extern EVH storeMaintainSwapSpace;
445 extern void storeExpireNow(StoreEntry *);
446 extern void storeReleaseRequest(StoreEntry *);
447 extern void storeRotateLog(void);
448 extern off_t storeLowestMemReaderOffset(const StoreEntry *);
449 extern void storeCloseLog(void);
450 extern void storeConfigure(void);
451 extern void storeNegativeCache(StoreEntry *);
452 extern void storeFreeMemory(void);
453 extern int expiresMoreThan(time_t, time_t);
454 extern void storeClientListAdd(StoreEntry *, void *);
455 extern void InvokeHandlers(StoreEntry *);
456 extern int storeEntryValidToSend(StoreEntry *);
457 extern void storeTimestampsSet(StoreEntry *);
458 extern time_t storeExpiredReferenceAge(void);
459 extern void storeRegisterAbort(StoreEntry * e, STABH * cb, void *);
460 extern void storeUnregisterAbort(StoreEntry * e);
461 extern void storeMemObjectDump(MemObject * mem);
462 extern const char *storeUrl(const StoreEntry *);
463 extern void storeCreateMemObject(StoreEntry *, const char *, const char *);
464
465 /* storeKey stuff */
466 extern const cache_key *storeKeyDup(const cache_key *);
467 extern void storeKeyFree(const cache_key *);
468 extern const cache_key *storeKeyScan(const char *);
469 extern const char *storeKeyText(const cache_key *);
470 extern const cache_key *storeKeyPublic(const char *, method_t);
471 extern const cache_key *storeKeyPrivate(const char *, method_t, int);
472 extern int storeKeyHashBuckets(int);
473 extern HASHHASH storeKeyHashHash;
474 extern HASHCMP storeKeyHashCmp;
475
476 #ifdef __STDC__
477 extern void storeAppendPrintf(StoreEntry *, const char *,...);
478 #else
479 extern void storeAppendPrintf();
480 #endif
481
482 extern char *storeSwapFullPath(int, char *);
483 extern char *storeSwapSubSubDir(int, char *);
484 extern int storeVerifySwapDirs(void);
485 extern void storeCreateSwapSubDirs(int);
486 extern const char *storeSwapPath(int);
487 extern int storeDirMapBitTest(int fn);
488 extern void storeDirMapBitSet(int fn);
489 extern void storeDirMapBitReset(int fn);
490 extern int storeDirMapAllocate(void);
491 extern char *storeSwapDir(int);
492 extern FILE *storeDirOpenTmpSwapLog(int dirn, int *clean_flag);
493 extern void storeDirCloseTmpSwapLog(int dirn);
494 extern void storeDirOpenSwapLogs(void);
495 extern void storeDirCloseSwapLogs(void);
496 extern char *storeDirSwapLogFile(int, const char *);
497 extern void storeDirSwapLog(const StoreEntry *);
498 extern int storeDirNumber(int fileno);
499 extern void storeDirUpdateSwapSize(int fn, size_t size, int sign);
500 extern int storeDirProperFileno(int dirn, int fn);
501
502 extern const char *getMyHostname(void);
503 extern void safeunlink(const char *path, int quiet);
504 extern void death(int sig);
505 extern void fatal(const char *message);
506 extern void fatal_dump(const char *message);
507 extern void sigusr2_handle(int sig);
508 extern void sig_child(int sig);
509 extern void leave_suid(void);
510 extern void enter_suid(void);
511 extern void no_suid(void);
512 extern void writePidFile(void);
513 extern void setSocketShutdownLifetimes(int);
514 extern void setMaxFD(void);
515 extern time_t getCurrentTime(void);
516 extern void normal_shutdown(void);
517 extern int percent(int, int);
518 extern void squid_signal(int sig, SIGHDLR *, int flags);
519 extern pid_t readPidFile(void);
520 extern struct in_addr inaddrFromHostent(const struct hostent *hp);
521 extern int intAverage(int, int, int, int);
522 extern double doubleAverage(double, double, int, int);
523 extern void debug_trap(const char *);
524 extern void logsFlush(void);
525 extern char *checkNullString(char *p);
526
527 extern void unlinkdInit(void);
528 extern void unlinkdClose(void);
529 extern void unlinkdUnlink(const char *);
530
531 extern char *url_convert_hex(char *org_url, int allocate);
532 extern char *url_escape(const char *url);
533 extern protocol_t urlParseProtocol(const char *);
534 extern method_t urlParseMethod(const char *);
535 extern void urlInitialize(void);
536 extern request_t *urlParse(method_t, char *);
537 extern char *urlCanonical(const request_t *, char *);
538 extern request_t *requestLink(request_t *);
539 extern void requestUnlink(request_t *);
540 extern int matchDomainName(const char *d, const char *h);
541 extern int urlCheckRequest(const request_t *);
542 extern int urlDefaultPort(protocol_t p);
543 extern char *urlClean(char *);
544 extern char *urlCanonicalClean(const request_t *);
545
546
547 extern void useragentOpenLog(void);
548 extern void useragentRotateLog(void);
549 extern void logUserAgent(const char *, const char *);
550 extern peer_t parseNeighborType(const char *s);
551
552 extern void errorSend(int fd, ErrorState *);
553 extern void errorAppendEntry(StoreEntry *, ErrorState *);
554 extern void errorInitialize(void);
555 extern ErrorState *errorCon(err_type, http_status);
556
557 extern OBJH stat_io_get;
558 extern OBJH stat_objects_get;
559 extern OBJH stat_vmobjects_get;
560 extern OBJH stat_utilization_get;
561 extern OBJH statFiledescriptors;
562 extern OBJH log_enable;
563 extern OBJH info_get;
564 extern OBJH server_list;
565 extern OBJH neighborDumpNonPeers;
566 extern OBJH dump_config;
567 extern OBJH storeDirStats;
568 extern OBJH pconnHistDump;
569 extern void dump_peers(StoreEntry *, peer *);
570
571 extern void pconnPush(int, const char *host, u_short port);
572 extern int pconnPop(const char *host, u_short port);
573 extern void pconnInit(void);