tmp_str = ldns_buffer_export(buffer);
str = XMALLOC(char, strlen(tmp_str) + 1);
-/*
-if(str == 0x80530f0){
-memcpy(0, "a", 1);
-}
-*/
memcpy(str, tmp_str, strlen(tmp_str) + 1);
return str;
} else {
fprintf(output, "Unable to convert rr to string\n");
}
+ FREE(str);
}
void
} else {
fprintf(output, "Unable to convert packet to string\n");
}
+ FREE(str);
}
ldns_resolver_query(ldns_resolver *r, ldns_rdf *name, ldns_rr_type type, ldns_rr_class class,
uint16_t flags)
{
+ ldns_rdf *domainname;
ldns_rdf *newname;
+ ldns_pkt *pkt;
if (!ldns_resolver_defnames(r)) {
return ldns_resolver_send(r, name, type, class, flags);
}
newname = ldns_dname_concat(name, ldns_resolver_domain(r));
+
if (!newname) {
return NULL;
}
ldns_rdf_print(stdout, newname);
printf("the new name\n");
- return ldns_resolver_send(r, newname, type, class, flags);
+ pkt = ldns_resolver_send(r, newname, type, class, flags);
+
+ ldns_rdf_free(newname);
+ return pkt;
}
/**
}
qname = ldns_dname_new_frm_str("www.miek.nl.");
+
pkt = ldns_resolver_send(res, qname, LDNS_RR_TYPE_A, 0, LDNS_RD);
if (pkt) {
ldns_pkt_print(stdout, pkt);
}
+ ldns_pkt_free(pkt);
+
pkt = ldns_resolver_send(res, qname, LDNS_RR_TYPE_A, 0, LDNS_RD);
if (pkt) {
ldns_pkt_print(stdout, pkt);
}
+ ldns_pkt_free(pkt);
name = ldns_dname_new_frm_str("www.miek.nl");
pkt = ldns_pkt_query_new(name, LDNS_RR_TYPE_AAAA, 0, LDNS_RD);
ldns_pkt_print(stdout, pkt);
+ /* this free also frees the ldns_rdf variable 'name' */
+ ldns_pkt_free(pkt);
+
+ ldns_rdf_free(qname);
+ ldns_rdf_free(nameserver);
+ ldns_resolver_free(res);
- pkt = ldns_pkt_query_new(name, LDNS_RR_TYPE_AAAA, 0, LDNS_RD);
- ldns_pkt_print(stdout, pkt);
-
- pkt = ldns_pkt_query_new(name, LDNS_RR_TYPE_AAAA, 0, LDNS_RD);
- ldns_pkt_print(stdout, pkt);
return 0;
}
printf("Packet:\n");
if (packet)
ldns_pkt_print(stdout, packet);
-
+ ldns_pkt_free(packet);
printf("test 5\n");
packet = ldns_pkt_query_new_frm_str("www.kanariepiet.com",
LDNS_RR_CLASS_IN, (uint16_t) (LDNS_AD | LDNS_AA));
printf("Packet:\n");
+/*
if (packet)
ldns_pkt_print(stdout, packet);
+*/
+ ldns_pkt_free(packet);
return 0;
}
/* print the resulting pkt to stdout */
ldns_pkt_print(stdout, pkt);
+ ldns_resolver_free(res);
+ ldns_rdf_free(default_dom);
+ ldns_rdf_free(qname);
+ ldns_rdf_free(nameserver);
+ ldns_pkt_free(pkt);
+
return 0;
}
printf("error pkt sending\n");
return 1;
}
-
- /* print the resulting pkt to stdout */
- ldns_pkt_print(stdout, pkt);
-
- pkt = ldns_resolver_send(res, qname, ldns_rr_get_type_by_name(type), 0, LDNS_RD);
-
- if (!pkt) {
- printf("error pkt sending\n");
- return 1;
- }
-
+
/* print the resulting pkt to stdout */
ldns_pkt_print(stdout, pkt);
+ ldns_rdf_free(nameserver);
+ ldns_rdf_free(qname);
+ ldns_pkt_free(pkt);
ldns_resolver_free(res);
return 0;
}
printf("error making qname\n");
return -1;
}
-
- pkt = ldns_resolver_send(res, qname, ldns_rr_get_type_by_name(type), 0, LDNS_RD);
- if (!pkt) {
- printf("error pkt sending\n");
- } else {
- }
- pkt = ldns_resolver_send(res, qname, ldns_rr_get_type_by_name(type), 0, LDNS_RD);
- if (!pkt) {
- printf("error pkt sending\n");
- } else {
- }
pkt = ldns_resolver_query(res, qname, ldns_rr_get_type_by_name(type), 0, LDNS_RD);
if (!pkt) {
} else {
}
+ ldns_rdf_free(nameserver);
+ ldns_rdf_free(defdomain);
+ ldns_rdf_free(qname);
+ ldns_pkt_free(pkt);
+ ldns_resolver_free(res);
+
return 0;
}
if (pkt) {
ldns_pkt_print(stdout, pkt);
}
+ ldns_pkt_free(pkt);
+
pkt = ldns_resolver_send(res, qname, LDNS_RR_TYPE_A, 0, LDNS_RD);
if (pkt) {
ldns_pkt_print(stdout, pkt);
}
+ ldns_pkt_free(pkt);
+
+ ldns_rdf_free(qname);
+ ldns_rdf_free(nameserver);
+ ldns_resolver_free(res);
+
return 0;
}