4 #ifdef USE_DNS /* skip whole file if not using DNS stuff... */
6 struct dnsRecord
{ time_t timeStamp
; /* Timestamp of resolv data */
7 int numeric
; /* 0: Name, 1: IP-address */
8 char hostName
[1]; }; /* Hostname (var length) */
10 struct dns_child
/* Defines the communication with a DNS child */
12 int inpipe
[2]; /* Pipe Child -> Father */
13 int outpipe
[2]; /* Pipe Father -> Child */
14 int pid
; /* PID of Child */
15 int flags
; /* see below */
16 struct dnode
*cur
; /* Currently processed node */
19 extern void resolve_dns(struct log_struct
*);
22 extern int dns_resolver(void *);
23 extern int open_cache();
24 extern int close_cache();
27 extern DB
*geodb_open(char *);
28 extern char *geodb_ver(DB
*, char *);
29 extern char *geodb_get_cc(DB
*, char *, char *);
30 extern void geodb_close(DB
*);
32 #define DNS_CHILD_READY 0x1 /* Our child flags */
33 #define DNS_CHILD_RUNNING 0x2
35 #define MAXCHILD 100 /* Maximum number of DNS children */
38 #define GEODB_LOC "/usr/share/GeoDB"
42 #endif /* _DNS_RESOLV_H */