adns.h 809 B

123456789101112131415161718192021222324252627282930313233343536
  1. /* new async dns
  2. *
  3. */
  4. #ifndef _ADNS_H_
  5. #define _ADNS_H_
  6. #define DNS_A 1
  7. #define DNS_AAAA 28
  8. #define DNS_PTR 12
  9. #define DNS_CNAME 5
  10. #define DNS_IPV4 1
  11. #define DNS_IPV6 2
  12. #define DNS_REVERSE 3
  13. #define DNS_PORT 53
  14. typedef void (*dns_callback_t)(int, void *client_data, const char *query, char **result);
  15. int egg_dns_init(void);
  16. //int egg_dns_shutdown(void);
  17. void egg_dns_send(char *query, int len);
  18. int egg_dns_lookup(const char *host, int timeout, dns_callback_t callback, void *client_data);
  19. int egg_dns_reverse(const char *ip, int timeout, dns_callback_t callback, void *client_data);
  20. int egg_dns_cancel(int id, int issue_callback);
  21. void tell_dnsdebug(int);
  22. void dns_cache_flush();
  23. bool valid_dns_id(int, int);
  24. extern int dns_sock, dns_idx;
  25. extern const char *dns_ip;
  26. #endif /* !_EGG_DNS_H_ */