1 /* 2 * Copyright (C) 1996-2021 The Squid Software Foundation and contributors 3 * 4 * Squid software is distributed under GPLv2+ license and includes 5 * contributions from numerous individuals and organizations. 6 * Please see the COPYING and CONTRIBUTORS files for details. 7 */ 8 9 /* DEBUG: section 35 FQDN Cache */ 10 11 #ifndef SQUID_FQDNCACHE_H_ 12 #define SQUID_FQDNCACHE_H_ 13 14 #include "ip/Address.h" 15 #include "sbuf/forward.h" 16 17 class StoreEntry; 18 namespace Dns 19 { 20 class LookupDetails; 21 } 22 23 typedef void FQDNH(const char *, const Dns::LookupDetails &details, void *); 24 25 void fqdncache_init(void); 26 void fqdnStats(StoreEntry *); 27 void fqdncacheFreeMemory(void); 28 void fqdncache_restart(void); 29 void fqdncache_purgelru(void *); 30 void fqdncacheAddEntryFromHosts(char *addr, SBufList &hostnames); 31 32 const char *fqdncache_gethostbyaddr(const Ip::Address &, int flags); 33 void fqdncache_nbgethostbyaddr(const Ip::Address &, FQDNH *, void *); 34 35 #endif /* SQUID_FQDNCACHE_H_ */ 36 37