COMPILE = $(CC) $(CPPFLAGS) $(CFLAGS)
COMP_LIB = $(LIBTOOL) --mode=compile $(CC) $(CPPFLAGS) $(CFLAGS)
-LINK = $(CC) $(LDFLAGS) $(LIBS)
-LINK_LIB = $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) $(LIBS) -version-number $(version_info) -no-undefined
-LINK_EXE = $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) $(LIBSSL_LDFLAGS)
+LINK = $(CC) $(CFLAGS) $(LDFLAGS) $(LIBS)
+LINK_LIB = $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) $(LIBS) -version-number $(version_info) -no-undefined
+LINK_EXE = $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) $(LIBSSL_LDFLAGS)
.PHONY: clean realclean docclean manpages doc lint all lib pyldns test
.PHONY: install uninstall install-doc uninstall-doc uninstall-pyldns
}
/** Convert to hexstring and call verbose(), prepend with header */
-void
+static void
verbose_hex(int lvl, uint8_t *data, size_t datalen, const char *header)
{
- size_t i;
- char errmsg[strlen(header) + datalen*3];
- strcpy(errmsg, header);
- for(i = 0; i < datalen; i++)
- snprintf(errmsg + strlen(header) + i*3, 4, "%02x ", (unsigned int)data[i]);
- errmsg[strlen(header) + datalen*3 - 1] = 0;
- verbose(lvl, "%s", errmsg);
+ verbose(lvl, "%s", header);
+ while (datalen-- > 0) {
+ verbose(lvl, " %02x", (unsigned int)*data++);
+ }
+ verbose(lvl, "\n");
}
/** Match q edns data to p raw edns data */
pd = ldns_buffer_begin(p->raw_ednsdata);
if( qdlen == pdlen && 0 == memcmp(qd, pd, qdlen) ) return 1;
verbose(3, "EDNS data does not match.\n");
- verbose_hex(3, qd, qdlen, "q: ");
- verbose_hex(3, pd, pdlen, "p: ");
+ verbose_hex(3, qd, qdlen, "q:");
+ verbose_hex(3, pd, pdlen, "p:");
return 0;
}
ldns_rr_class class, uint16_t port, ldns_tsig_credentials *tsig_cred, ldns_rdf **zone_rdf)
{
ldns_resolver *r1, *r2;
- ldns_pkt *query = NULL, *resp;
+ ldns_pkt *query = NULL, *resp = NULL;
ldns_rr_list *nslist, *iplist;
ldns_rdf *soa_zone, *soa_mname = NULL, *ns_name;
size_t i;