{
ldns_rdf *newname;
ldns_pkt *pkt;
-
+
if (!ldns_resolver_defnames(r)) {
return ldns_resolver_send(r, name, type, class, flags);
}
}
newname = ldns_dname_cat(name, ldns_resolver_domain(r));
-
if (!newname) {
return NULL;
}
ldns_pkt_set_id(query_pkt, id);
+ ldns_pkt_print(stdout, query_pkt);
+
/* return NULL on error */
answer_pkt = ldns_send(r, query_pkt);
}
if (0 == len) {
return LDNS_STATUS_DOMAINNAME_UNDERFLOW;
+ }
+
+ /* root label */
+ if (1 == len) {
+ *d = ldns_rdf_new_frm_data(LDNS_RDF_TYPE_DNAME, 1, ".");
+ return LDNS_STATUS_OK;
}
+ /* get on with the rest */
+
/* s is on the current dot
* p on the previous one
* q builds the dname
*q = 0;
}
len++;
+ printf("len: %d\n", len);
/* s - buf_str works because no magic is done in the above for-loop */
*d = ldns_rdf_new_frm_data(LDNS_RDF_TYPE_DNAME, len, buf);