Lines 26-34
Link Here
|
26 |
|
26 |
|
27 |
int getrrs(const char *label, int rrtype, void gotrec(unsigned int num, int type, const char *record)) |
27 |
int getrrs(const char *label, int rrtype, void gotrec(unsigned int num, int type, const char *record)) |
28 |
{ |
28 |
{ |
29 |
#ifdef _LINUX |
|
|
30 |
struct __res_state res; |
31 |
#endif |
32 |
unsigned char answer[8192]; |
29 |
unsigned char answer[8192]; |
33 |
HEADER *header = (HEADER *)answer; |
30 |
HEADER *header = (HEADER *)answer; |
34 |
char buf[2048]; |
31 |
char buf[2048]; |
Lines 38-57
Link Here
|
38 |
uint16_t type = 0, class = 0; |
35 |
uint16_t type = 0, class = 0; |
39 |
uint32_t ttl = 0; |
36 |
uint32_t ttl = 0; |
40 |
|
37 |
|
41 |
#ifdef _LINUX |
|
|
42 |
memset(&res, 0, sizeof(res)); |
43 |
res.options = RES_DEBUG; |
44 |
res_ninit(&res); |
45 |
#else |
46 |
res_init(); |
47 |
#endif |
48 |
|
49 |
memset(answer, 0, sizeof(answer)); |
38 |
memset(answer, 0, sizeof(answer)); |
50 |
#ifdef _LINUX |
|
|
51 |
ret = res_nquery(&res, label, C_IN, rrtype, answer, sizeof(answer)); |
52 |
#else |
53 |
ret = res_query(label, C_IN, rrtype, answer, sizeof(answer)); |
39 |
ret = res_query(label, C_IN, rrtype, answer, sizeof(answer)); |
54 |
#endif |
|
|
55 |
if (ret < 0) return -1; |
40 |
if (ret < 0) return -1; |
56 |
|
41 |
|
57 |
/* Our start and end */ |
42 |
/* Our start and end */ |