X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fmdnsd.git;a=blobdiff_plain;f=cache.h;h=0dfacd42eb0de384ff0c8953c84e69ab57d1e78e;hp=03c35f61ff3dda192eaf82023ea805979c4a0b1a;hb=431db651f04d18d2ee454e49d14806f08283f28c;hpb=788316ef66136e6a68d881e5b24ccf5a98fa4550 diff --git a/cache.h b/cache.h index 03c35f6..0dfacd4 100644 --- a/cache.h +++ b/cache.h @@ -19,41 +19,34 @@ #include "dns.h" -struct cache_type { - struct avl_node avl; - - char *key; - char *val; -}; - struct cache_entry { - struct avl_node avl; + struct avl_node avl; - char *entry; - char *host; + const char *entry; + const char *host; uint32_t ttl; time_t time; }; struct cache_record { - struct avl_node avl; + struct avl_node avl; - char *record; + const char *record; uint16_t type; uint32_t ttl; int port; - char *txt; - uint8_t *rdata; + const char *txt; + const uint8_t *rdata; uint16_t rdlength; time_t time; }; -extern struct avl_tree records, entries, types; +extern struct avl_tree records, entries; extern int cache_init(void); extern void cache_scan(void); extern void cache_cleanup(void); -extern void cache_answer(struct uloop_fd *u, uint8_t *base, int blen, +extern void cache_answer(struct interface *iface, uint8_t *base, int blen, char *name, struct dns_answer *a, uint8_t *rdata); extern int cache_host_is_known(char *record); extern char* cache_lookup_name(const char *key);