1 /***************************************************************************/
2 /*    This code is part of WWW grabber called pavuk                        */
3 /*    Copyright (c) 1997 - 2001 Stefan Ondrejicka                          */
4 /*    Distributed under GPL 2 or later                                     */
5 /***************************************************************************/
6 
7 #ifndef _dns_h_
8 #define _dns_h_
9 
10 #define DNS_MAX_ADDR    64
11 
12 #include <sys/socket.h>
13 #include <netinet/in.h>
14 
15 typedef struct _abs_addr
16 {
17   int family;
18   char addr[DNS_MAX_ADDR];
19 } abs_addr;
20 
21 #ifndef HAVE_SOCKADDR_STORAGE
22 struct sockaddr_storage
23 {
24   int ss_family;
25   char padding[132];
26 };
27 #endif
28 
29 extern int dns_gethostbyname(char *, int *, char *, int *);
30 
31 extern char *dns_get_abs_addr_ip(abs_addr *);
32 extern struct sockaddr *dns_setup_sockaddr(abs_addr *, int,
33   struct sockaddr_storage *, int *);
34 extern char *dns_get_sockaddr_ip(struct sockaddr *);
35 extern int dns_get_sockaddr_port(struct sockaddr *);
36 
37 
38 extern int dns_getprotoid(char *);
39 
40 extern int dns_serv_start(void);
41 extern void dns_server_kill(void);
42 extern void dns_free_tab(void);
43 
44 #endif
45