00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _EGG_DNS_H_
00023 #define _EGG_DNS_H_
00024
00025 #define DNS_IPV4 1
00026 #define DNS_IPV6 2
00027 #define DNS_REVERSE 3
00028
00029 #define DNS_PORT 53
00030
00031 typedef int (*dns_callback_t)(void *client_data, const char *query, char **result);
00032
00033 int egg_dns_init(void);
00034 int egg_dns_shutdown(void);
00035
00036 void egg_dns_send(char *query, int len);
00037 int egg_dns_lookup(const char *host, int timeout, dns_callback_t callback, void *client_data, event_owner_t *owner);
00038 int egg_dns_reverse(const char *ip, int timeout, dns_callback_t callback, void *client_data, event_owner_t *owner);
00039 int egg_dns_cancel(int id, int issue_callback);
00040 int egg_dns_cancel_by_owner(struct egg_module *module, void *script);
00041
00042 #endif