1 |
/* |
2 |
* res.h for referencing functions in libio/net/res.c |
3 |
* |
4 |
* $Id: irc_res.h 67 2005-10-03 23:50:49Z adx $ |
5 |
*/ |
6 |
|
7 |
|
8 |
struct Client; |
9 |
|
10 |
struct DNSReply |
11 |
{ |
12 |
char *h_name; |
13 |
struct irc_ssaddr addr; |
14 |
}; |
15 |
|
16 |
struct DNSQuery |
17 |
{ |
18 |
#ifdef _WIN32 |
19 |
dlink_node node; |
20 |
HANDLE handle; |
21 |
char reply[MAXGETHOSTSTRUCT]; |
22 |
#endif |
23 |
void *ptr; /* pointer used by callback to identify request */ |
24 |
void (*callback)(void* vptr, struct DNSReply *reply); /* callback to call */ |
25 |
}; |
26 |
|
27 |
extern struct irc_ssaddr irc_nsaddr_list[]; |
28 |
extern int irc_nscount; |
29 |
|
30 |
extern void init_resolver(void); |
31 |
extern void restart_resolver(void); |
32 |
extern void delete_resolver_queries(const struct DNSQuery *); |
33 |
extern void gethost_byname_type(const char *, struct DNSQuery *, int); |
34 |
extern void gethost_byname(const char *, struct DNSQuery *); |
35 |
extern void gethost_byaddr(const struct irc_ssaddr *, struct DNSQuery *); |
36 |
extern void add_local_domain(char *, size_t); |