run-test18: run-test18.o $(LIBDNS_OBJECTS) $(LIBOBJS)
$(LINK) ${LIBS} -o $@ $+
-run-test-trace: run-test-trace.o $(LIBDNS_OBJECTS) $(LIBOBJS)
- $(LINK) ${LIBS} -o $@ $+
-
doc:
doxygen libdns.doxygen
## No need for changes here
lint:
- for i in $(LIBDNS_SOURCES); do \
- $(LINT) $(LINTFLAGS) -I. -I$(srcdir) $(srcdir)/$$i ; \
- done
+ find $(srcdir) -name \*.c -exec $(LINT) $(LINTFLAGS) -I. -I$(srcdir) {} \;
+
+# old
+# for i in $(LIBDNS_SOURCES); do \
+# $(LINT) $(LINTFLAGS) -I. -I$(srcdir) $(srcdir)/$$i ; \
+# done
tags: *.c *.h ldns/*.[ch]
ctags *.[ch] ldns/*.[ch]
/* Now we worry about padding. */
if (0 != srclength) {
/* Get what's left. */
- input[0] = input[1] = input[2] = '\0';
+ input[0] = input[1] = input[2] = (uint8_t) '\0';
for (i = 0; i < srclength; i++)
input[i] = *src++;
if (datalength >= targsize)
return (-1);
target[datalength] = '\0'; /* Returned value doesn't count \0. */
- return (datalength);
+ return (int) (datalength);
}
+++ /dev/null
-/**
- * An example ldns program
- *
- *
- * Get a name
- * Setup a resolver
- * trace the result from the root down to the name
- * Print the result along the way
- */
-
-#include <config.h>
-#include <ldns/resolver.h>
-
-void
-print_usage(char *file)
-{
- printf("Usage: %s <name> [initial NS]\n", file);
- printf(" if [initial NS] is not given 127.0.0.1 is used\n");
- exit(0);
-}
-
-int
-main(int argc, char **argv)
-{
- ldns_resolver *res;
- ldns_rdf *qname;
- ldns_rdf *nameserver;
- ldns_pkt *pkt;
- char *name;
- char *init_ns;
-
- if (argc < 2) {
- print_usage(argv[0]);
- } else if (argc == 2) {
- name = argv[1];
- init_ns = "127.0.0.1";
- } else {
- name = argv[1];
- init_ns = argv[2];
- }
-
- /* init */
- res = ldns_resolver_new();
- if (!res)
- return 1;
-
-}
resolver = ldns_resolver_new();
ldns_resolver_set_usevc(resolver, true);
- ldns_resolver_push_nameserver(resolver, nameserver);
+ (void) ldns_resolver_push_nameserver(resolver, nameserver);
domain = ldns_dname_new_frm_str(name);
if (!domain) {
printf("Bad domain\n");
}
- ldns_axfr_start(resolver, domain, LDNS_RR_CLASS_IN);
+ (void) ldns_axfr_start(resolver, domain, LDNS_RR_CLASS_IN);
while ((rr = ldns_axfr_next(resolver))) {
rr_str = ldns_rr2str(rr);
+++ /dev/null
-/**
- * An example ldns program
- *
- *
- * Get a name
- * Setup a resolver
- * trace the result from the root down to the name
- * Print the result along the way
- */
-
-#include <config.h>
-#include <ldns/resolver.h>
-
-void
-print_usage(char *file)
-{
- printf("Usage: %s <name> [initial NS]\n", file);
- printf(" if [initial NS] is not given 127.0.0.1 is used\n");
- exit(0);
-}
-
-int
-main(int argc, char **argv)
-{
- ldns_resolver *res;
- ldns_rdf *qname;
- ldns_rdf *nameserver;
- ldns_pkt *pkt;
- char *name;
- char *init_ns;
-
- if (argc < 2) {
- print_usage(argv[0]);
- } else if (argc == 2) {
- name = argv[1];
- init_ns = "127.0.0.1";
- } else {
- name = argv[1];
- init_ns = argv[2];
- }
-
- /* init */
- res = ldns_resolver_new();
- if (!res)
- return 1;
-
-}
+++ /dev/null
-/*
- * test main.c
- *
- */
-
-#include <config.h>
-
-
-#include <ldns/ldns.h>
-
-#include "util.h"
-
-/*
- 0xc2, 0xb4, 0x81, 0x80, 0x00, 0x01, 0x00, 0x01,
- 0x00, 0x02, 0x00, 0x02, 0x03, 0x77, 0x77, 0x77,
- 0x0b, 0x6b, 0x61, 0x6e, 0x61, 0x72, 0x69, 0x65,
- 0x70, 0x69, 0x65, 0x74, 0x03, 0x63, 0x6f, 0x6d,
- 0x00, 0x00, 0x01, 0x00, 0x01
-};
-*/
-/*
-static const uint8_t wire[] = {
- 0xd0, 0x0e, 0x81, 0x80, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02, 0x00,
- 0x02, 0x03, 0x77, 0x77, 0x77, 0x0b, 0x6b, 0x61, 0x6e, 0x61, 0x72,
- 0x69, 0x65, 0x70, 0x69, 0x65, 0x74, 0x03, 0x63, 0x6f, 0x6d, 0x00,
- 0x00, 0x01, 0x00, 0x01, 0xc0, 0x0c, 0x00, 0x01, 0x00, 0x01, 0x00,
- 0x01, 0x45, 0xf2, 0x00, 0x04, 0xd5, 0x85, 0x27, 0xcf, 0xc0, 0x10,
- 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x45, 0xf2, 0x00, 0x11, 0x03,
- 0x6e, 0x73, 0x32, 0x08, 0x68, 0x65, 0x78, 0x6f, 0x6e, 0x2d, 0x69,
- 0x73, 0x02, 0x6e, 0x6c, 0x00, 0xc0, 0x10, 0x00, 0x02, 0x00, 0x01,
- 0x00, 0x01, 0x45, 0xf2, 0x00, 0x06, 0x03, 0x6e, 0x73, 0x31, 0xc0,
- 0x45, 0xc0, 0x5e, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0xfb, 0x2e,
- 0x00, 0x04, 0xd5, 0x85, 0x27, 0xcb, 0xc0, 0x41, 0x00, 0x01, 0x00,
- 0x01, 0x00, 0x00, 0xfb, 0x2c, 0x00, 0x04, 0xd4, 0xcc, 0xdb, 0x5b
-};
-*/
-static const uint8_t wire[] = {
-0x4c, 0xf2, 0x81, 0x80, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02, 0x00, 0x02, 0x05
-, 0x6a, 0x65, 0x6c, 0x74, 0x65, 0x09, 0x6e,
-0x6c, 0x6e, 0x65, 0x74, 0x6c, 0x61, 0x62, 0x73, 0x02, 0x6e, 0x6c, 0x00, 0x00, 0x0f, 0x00, 0x01, 0xc0, 0x0c, 0x00, 0x0f,
-0x00, 0x01, 0x00, 0x00, 0x02, 0x54, 0x00, 0x08, 0x00, 0x0a, 0x03, 0x73, 0x6f, 0x6c, 0xc0, 0x12, 0xc0, 0x0c, 0x00, 0x02,
-0x00, 0x01, 0x00, 0x00, 0x00, 0x73, 0x00, 0x06, 0x03, 0x6e, 0x73, 0x32, 0xc0, 0x0c, 0xc0, 0x0c, 0x00, 0x02, 0x00, 0x01,
-0x00, 0x00, 0x00, 0x73, 0x00, 0x06, 0x03, 0x6e, 0x73, 0x31, 0xc0, 0x0c, 0xc0, 0x56, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00,
-0x00, 0x73, 0x00, 0x04, 0xc3, 0xa9, 0xd7, 0x9b, 0xc0, 0x44, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x73, 0x00, 0x04,
-0xc3, 0xa9, 0xd7, 0x9b
-};
-
-int
-main(void)
-{
- ldns_rdf *rd_f;
- ldns_rr *rr;
- ldns_pkt *packet;
- ldns_status status;
- char *rdfstr;
- uint8_t *rdf_data;
-
- rr = ldns_rr_new();
-
- rdf_data = (uint8_t *) XMALLOC(char, MAX_DOMAINLEN);
- rdf_data[0] = 3;
- memcpy(rdf_data+1, "www", 3);
- rdf_data[4] = 4;
- memcpy(rdf_data+5, "test", 4);
- rdf_data[9] = 3;
- memcpy(rdf_data+10, "net", 3);
- rdf_data[13] = 0;
- rd_f = ldns_rdf_new(LDNS_RDF_TYPE_DNAME, 20, rdf_data);
-
- ldns_rr_push_rdf(rr, rd_f);
- status = ldns_wire2pkt(&packet, wire, sizeof(wire));
- if (status == LDNS_STATUS_OK) {
- printf("packet id: %d\n", (int) ldns_pkt_id(packet));
- printf("qr bit: %d\n", (int) ldns_pkt_qr(packet));
- printf("opcode: %d\n",(int) ldns_pkt_opcode(packet));
- printf("aa bit: %d\n",(int) ldns_pkt_aa(packet));
- printf("tc bit: %d\n",(int) ldns_pkt_tc(packet));
- printf("rd bit: %d\n",(int) ldns_pkt_rd(packet));
- printf("cd bit: %d\n",(int) ldns_pkt_cd(packet));
- printf("ra bit: %d\n",(int) ldns_pkt_ra(packet));
- printf("ad bit: %d\n",(int) ldns_pkt_ad(packet));
- printf("rcode: %d\n",(int) ldns_pkt_rcode(packet));
- printf("qdcount: %d\n",(int) ldns_pkt_qdcount(packet));
- printf("ancount: %d\n",(int) ldns_pkt_ancount(packet));
- printf("nscount: %d\n",(int) ldns_pkt_nscount(packet));
- printf("arcount: %d\n",(int) ldns_pkt_arcount(packet));
- printf("pkt2str:\n");
- rdfstr = ldns_pkt2str(packet);
- if (rdfstr) {
- printf("%s\n", rdfstr);
- } else {
- printf("error\n");
- }
- ldns_pkt_free(packet);
- } else {
- printf("error in wire2packet: %d\n", status);
- }
-
-/*
- printf("host2str:\n");
- rdfstr = ldns_rdf2str(rr->_rdata_fields[0]);
- if (rdfstr) {
- printf("%s\n", rdfstr);
- } else {
- printf("error\n");
- }
-
- printf("rr2str:\n");
- rdfstr = ldns_rr2str(rr);
- if (rdfstr) {
- printf("%s\n", rdfstr);
- } else {
- printf("error\n");
- }
-
-
-*/
-
-
- return 0;
-}
-
+++ /dev/null
-/*
- * test1 for other stuff
- *
- */
-
-#include <config.h>
-#include <ldns/ldns.h>
-#include <ldns/str2host.h>
-#include <ldns/host2str.h>
-#include <ldns/buffer.h>
-#include <ldns/dname.h>
-
-#include "util.h"
-
-#if 0
-static const uint8_t wire[] = {
- 0xd0, 0x0e, 0x81, 0x80, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02, 0x00,
- 0x02, 0x03, 0x77, 0x77, 0x77, 0x0b, 0x6b, 0x61, 0x6e, 0x61, 0x72,
- 0x69, 0x65, 0x70, 0x69, 0x65, 0x74, 0x03, 0x63, 0x6f, 0x6d, 0x00,
- 0x00, 0x01, 0x00, 0x01, 0xc0, 0x0c, 0x00, 0x01, 0x00, 0x01, 0x00,
- 0x01, 0x45, 0xf2, 0x00, 0x04, 0xd5, 0x85, 0x27, 0xcf, 0xc0, 0x10,
- 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x45, 0xf2, 0x00, 0x11, 0x03,
- 0x6e, 0x73, 0x32, 0x08, 0x68, 0x65, 0x78, 0x6f, 0x6e, 0x2d, 0x69,
- 0x73, 0x02, 0x6e, 0x6c, 0x00, 0xc0, 0x10, 0x00, 0x02, 0x00, 0x01,
- 0x00, 0x01, 0x45, 0xf2, 0x00, 0x06, 0x03, 0x6e, 0x73, 0x31, 0xc0,
- 0x45, 0xc0, 0x5e, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0xfb, 0x2e,
- 0x00, 0x04, 0xd5, 0x85, 0x27, 0xcb, 0xc0, 0x41, 0x00, 0x01, 0x00,
- 0x01, 0x00, 0x00, 0xfb, 0x2c, 0x00, 0x04, 0xd4, 0xcc, 0xdb, 0x5b
-};
-#endif
-
-void
-doit(void)
-{
- ldns_buffer *buf;
- ldns_rdf *rdata;
- ldns_rdf *cnt_test;
- ldns_rdf *cat_test1;
- ldns_rdf *cat_test2;
- ldns_rdf *concat;
- char *str;
-
- buf = ldns_buffer_new(10); /* alloc away! */
- if (!buf) {
- printf("Nooooo\n");
- }
-
- printf("Setting 15242\n");
-
- if (ldns_str2rdf_int16(&rdata, "15242") != LDNS_STATUS_OK) {
- printf("_short: ah man, shit hit the fan\n");
- }
-
- (void) ldns_rdf2buffer_str_int16(buf, rdata);
- str = buffer2str(buf);
- fprintf(stderr, "%s\n", str);
-
- FREE(str);
- ldns_buffer_free(buf);
- ldns_rdf_free(rdata);
-
- /* test the label counter */
- cnt_test = ldns_dname_new_frm_str("miek.nl.");
- printf("Labels miek.nl. %d\n", ldns_dname_label_count(cnt_test));
- ldns_rdf_free(cnt_test);
-
- cnt_test = ldns_dname_new_frm_str("miek.nl");
- printf("Labels miek.nl %d\n", ldns_dname_label_count(cnt_test));
- ldns_rdf_free(cnt_test);
-
- cnt_test = ldns_dname_new_frm_str("miek");
- printf("Labels miek %d\n", ldns_dname_label_count(cnt_test));
- ldns_rdf_free(cnt_test);
-
-/* this errors
- cnt_test = ldns_dname_new_frm_str(".");
-printf("counting: %s\n", ldns_rdf2str(cnt_test));
- printf("Labels . %d\n", ldns_dname_label_count(cnt_test));
-
- cnt_test = ldns_dname_new_frm_str(".www.miek.nl.");
- printf("Labels .www.miek.nl. %d\n", ldns_dname_label_count(cnt_test));
-
- cnt_test = ldns_dname_new_frm_str("www.miek.nl.");
- printf("Labels www.miek.nl. %d\n", ldns_dname_label_count(cnt_test));
-*/
-
- cnt_test = ldns_dname_new_frm_str("nl");
- printf("Labels nl %d\n", ldns_dname_label_count(cnt_test));
- ldns_rdf_free(cnt_test);
-
-
- /* concat tests */
- cat_test1 = ldns_dname_new_frm_str("www");
- cat_test2 = ldns_dname_new_frm_str("miek.nl.");
- concat = ldns_dname_cat(cat_test1, cat_test2);
-
- ldns_rdf_print(stdout, concat);
-
- printf(" [%d]\n", ldns_rdf_size(concat));
- printf("Labels nl %d\n", ldns_dname_label_count(concat));
-
- ldns_rdf_free(cat_test1);
- ldns_rdf_free(cat_test2);
- ldns_rdf_free(concat);
-}
-
-
-int
-main(void)
-{
- ldns_rdf *bla;
- if (ldns_str2rdf_int16(&bla, "15242") != LDNS_STATUS_OK) {
- printf("_int16: ah man, shit hit the fan\n");
- }
- ldns_rdf_free(bla);
-
- /* %Y%m%d%H%M%S */
- if (ldns_str2rdf_time(&bla, "20041222134100") != LDNS_STATUS_OK) {
- printf("_time: ah man, shit hit the fan\n");
- }
- ldns_rdf_free(bla);
-
- printf("succes\n");
- doit();
- return 0;
-}
-
+++ /dev/null
-/**
- * An example ldns program
- *
- * Setup a resolver
- * Query a nameserver
- * Print the result
- */
-
-#include <config.h>
-#include <ldns/resolver.h>
-#include <ldns/dname.h>
-#include <ldns/host2str.h>
-
-int
-main(void)
-{
- ldns_pkt *pkt;
- ldns_rdf *name;
- ldns_rdf *qname;
-
- ldns_resolver *res;
- ldns_rdf *nameserver;
-
- /* init */
- res = ldns_resolver_new();
- if (!res)
- return -1;
- nameserver = ldns_rdf_new_frm_str(LDNS_RDF_TYPE_A, "127.0.0.1");
- if (ldns_resolver_push_nameserver(res, nameserver) != LDNS_STATUS_OK) {
- printf("error push nameserver\n");
- return -1;
- }
-
- 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);
-
- return 0;
-}
+++ /dev/null
-#include <config.h>
-
-#include <stdio.h>
-#include <stdlib.h>
-/*#include <stdint.h>*/
-#include <pcap.h>
-#include <net/ethernet.h>
-#include <netinet/in_systm.h>
-#include <netinet/in.h>
-#include <netinet/ip.h>
-#include <netinet/udp.h>
-#include <ldns/ldns.h>
-
-#define FOREVER -1
-#define UDP_HDR_LEN 8
-
-void
-process_pkt(u_char *user, const struct pcap_pkthdr *pcap_hdr,
- const u_char *data)
-{
- ldns_pkt *packet;
- struct ether_header *eth_hdr;
- struct ip *ip_hdr;
- struct udphdr *udp_hdr;
- int i, err, len;
- ldns_rr_list *question;
-
- eth_hdr = (struct ether_header *) data;
- len = pcap_hdr->caplen;
-
- printf("%02x:%02x:%02x:%02x:%02x:%02x",
- eth_hdr->ether_shost[0],
- eth_hdr->ether_shost[1],
- eth_hdr->ether_shost[2],
- eth_hdr->ether_shost[3],
- eth_hdr->ether_shost[4],
- eth_hdr->ether_shost[5]);
- printf(" -> %02x:%02x:%02x:%02x:%02x:%02x",
- eth_hdr->ether_dhost[0],
- eth_hdr->ether_dhost[1],
- eth_hdr->ether_dhost[2],
- eth_hdr->ether_dhost[3],
- eth_hdr->ether_dhost[4],
- eth_hdr->ether_dhost[5]);
- printf(" (0x%x)\n", eth_hdr->ether_type);
-
- /* handle IPv4 only for the time being */
- if (eth_hdr->ether_type != ETHERTYPE_IP) {
- /* return;*/
- }
-
- /* skip Ethernet header */
- data += sizeof(struct ether_header);
- len -= sizeof(struct ether_header);
-
- ip_hdr = (struct ip *) data;
-
- /* handle UDP only */
- if (ip_hdr->ip_p != IPPROTO_UDP) {
- /* return;*/
- }
-
- /* skip IP header */
- data += ip_hdr->ip_hl << 2;
- len -= ip_hdr->ip_hl << 2;
-
- udp_hdr = (struct udphdr *) data;
-
- printf(" %d.%d.%d.%d:%d",
- ip_hdr->ip_src.s_addr >> 24 & 0xff,
- ip_hdr->ip_src.s_addr >> 16 & 0xff,
- ip_hdr->ip_src.s_addr >> 8 & 0xff,
- ip_hdr->ip_src.s_addr & 0xff, 0);
- printf(" -> %d.%d.%d.%d:%d",
- ip_hdr->ip_dst.s_addr >> 24 & 0xff,
- ip_hdr->ip_dst.s_addr >> 16 & 0xff,
- ip_hdr->ip_dst.s_addr >> 8 & 0xff,
- ip_hdr->ip_dst.s_addr & 0xff, 0);
- printf(" %d", ip_hdr->ip_hl << 2);
-
- printf("\n");
-
- /* skip UDP header */
- data += UDP_HDR_LEN;
- len -= UDP_HDR_LEN;
-
- err = ldns_wire2pkt(&packet, data, len);
- if (err != LDNS_STATUS_OK) {
- return;
- }
-
- question = ldns_pkt_question(packet);
- printf("question count: %d\n", question->_rr_count);
- ldns_rr_list_print(stdout, question);
- printf("\n");
- /*
- for (i = 0; i < question->_rr_count; i++) {
- ldns_rr_print(stdout, question->_rrs[i]);
- }
- */
-
-}
-
-int
-main(int argc, char **argv)
-{
- char errbuf[PCAP_ERRBUF_SIZE];
- pcap_t *p;
-
- if (argc != 2) {
- fprintf(stderr, "usage: %s filename\n", argv[0]);
- exit(EXIT_FAILURE);
- }
- if ((p = pcap_open_offline(argv[1], errbuf)) == NULL) {
- fprintf(stderr, "%s\n", errbuf);
- exit(EXIT_FAILURE);
- }
- pcap_loop(p, FOREVER, process_pkt, NULL);
-}
-
+++ /dev/null
-/**
- * An example ldns program
- *
- * Setup a resolver
- * Query a nameserver
- * Print the result
- */
-
-#include <config.h>
-#include <ldns/dns.h>
-
-int
-main(int argc, char **argv)
-{
- ldns_rr *RR;
- const char *nameserver_address = "127.0.0.1";
- ldns_rr_list *keys_rrset;
- ldns_rr *sig;
- ldns_rr_list *rrset;
- ldns_rr_list *rrset2;
-
- printf("General test and DNSSEC tests\n");
-
- keys_rrset = ldns_rr_list_new();
- rrset = ldns_rr_list_new();
- rrset2 = ldns_rr_list_new();
-
- if (argc >= 2) {
- nameserver_address = argv[1];
- }
-
- RR = ldns_rr_new_frm_str("miek.nl. 3600 IN MX 10 elektron.atoom.net.");
- if (RR) {
- ldns_rr_print(stdout, RR);
- printf("\n");
- }
- RR = ldns_rr_new_frm_str("miek.nl. 3600 IN MX (\n\t10\n\telektron.atoom.net.\n\t)");
- if (RR) {
- ldns_rr_print(stdout, RR);
- printf("\n");
- }
- RR = ldns_rr_new_frm_str(" nlnetlabs.nl. 84236 IN DNSKEY 257 3 5 AQPzzTWMz8qSWIQlfRnPckx2BiVmkVN6LPupO3mbz7FhLSnm26n6iG9NLby97Ji453aWZY3M5/xJBSOS2vWtco2t8C0+xeO1bc/d6ZTy32DHchpW6rDH1vp86Ll+ha0tmwyy9QP7y2bVw5zSbFCrefk8qCUBgfHm9bHzMG1UBYtEIQ==");
-
- if (RR) {
- ldns_rr_print(stdout, RR);
- printf("\n");
- }
-
- printf("\n*** Okay, now the real dnssec testing ***\n\n");
-
- ldns_rr_set_push_rr(keys_rrset,ldns_rr_new_frm_str("nlnetlabs.nl. 81310 IN DNSKEY 257 3 RSASHA1 AQPzzTWMz8qSWIQlfRnPckx2BiVmkVN6LPupO3mbz7FhLSnm26n6iG9NLby97Ji453aWZY3M5/xJBSOS2vWtco2t8C0+xeO1bc/d6ZTy32DHchpW6rDH1vp86Ll+ha0tmwyy9QP7y2bVw5zSbFCrefk8qCUBgfHm9bHzMG1UBYtEIQ== ) ; {id = 43791} {sep}"));
-
- if (keys_rrset) {
- ldns_rr_list_print(stdout,keys_rrset);
- printf("\n");
- }
-
- ldns_rr_set_push_rr(rrset, ldns_rr_new_frm_str("www.nlnetlabs.nl. 86354 IN A 213.154.224.1"));
- if (rrset) {
- ldns_rr_list_print(stdout,rrset);
- printf("\n");
- }
- ldns_rr_set_push_rr(rrset2, ldns_rr_new_frm_str("www.nlnetlabs.nl. 86354 IN A 213.154.224.2"));
- ldns_rr_list_print(stdout,rrset2);
- printf("\nrrset2");
-
- sig = ldns_rr_new_frm_str("www.nlnetlabs.nl. 86400 IN RRSIG A RSASHA1 3 86400 1111020602 1108428602 ( 43791 nlnetlabs.nl. Q/uyU1R/mLWsCONp5yu8F67Rm62yH/ts7PO3tFbZ72XONGlwliztUgHF5Cr0Jei/GsRb2TPpyHZjr5lkeFQU/PnFeUmiKT1tTw24OcYXaiFWbEsZ+ormYGtq+2t5cwvYEbZsMMsMikv+VRmG1y6b8sNObAeIjtRZhrXogQolCm4= )");
- if (sig) {
- ldns_rr_print(stdout,sig);
- printf("\n");
- }
-
- /* try to verify some things */
- printf("\n*** Verifying ***\n\n");
-
- printf("Key tag %d\n", ldns_keytag(ldns_rr_list_rr(keys_rrset, 0)));
-
- if (ldns_verify_rrsig(rrset, sig, keys_rrset)) {
- printf("it verifies!!!\n");
- } else {
- printf("*bummer*\n");
- }
-
- printf("\n*** This one should fail! ***\n\n");
-
- if (ldns_verify_rrsig(rrset2, sig, keys_rrset)) {
- printf("it verifies!!!\n");
- } else {
- printf("*bummer*\n");
- }
-
- return 0;
-}
+++ /dev/null
-/**
- * An example ldns program
- *
- * Setup a resolver
- * Query a nameserver
- * Print the result
- */
-
-#include <config.h>
-#include <ldns/dns.h>
-
-void
-print_usage(char *file)
-{
- printf("Usage: %s <type> <name>\n", file);
- exit(0);
-}
-
-int
-main(int argc, char **argv)
-{
- ldns_resolver *res;
- ldns_rdf *qname;
- ldns_pkt *pkt;
- char *name = NULL;
- char *type = NULL;
-
- if (argc < 3) {
- print_usage(argv[0]);
- } else {
- type = argv[1];
- name = argv[2];
- }
-
- /* init */
- res = ldns_resolver_new_frm_file(NULL);
- if (!res) {
- printf("resolver creation failed\n");
- return -1;
- }
-
- /* UDP query */
- ldns_resolver_set_usevc(res, false);
- qname = ldns_dname_new_frm_str(name);
- if (!qname) {
- printf("error making qname\n");
- return -1;
- }
-
- pkt = ldns_resolver_query(res, qname, ldns_get_rr_type_by_name(type), 0, LDNS_RD);
- if (!pkt) {
- printf("error pkt sending\n");
- } else {
- ldns_pkt_print(stdout, pkt);
- }
-
- return 0;
-}
+++ /dev/null
-/**
- * An example ldns program
- *
- * Setup a resolver
- * Query a nameserver
- * Print the result
- */
-
-#include <config.h>
-#include <ldns/dns.h>
-
-void
-print_usage(char *file)
-{
- printf("Usage: %s <type> <name> <server ip>\n", file);
- printf("ipv4 only atm\n");
- exit(0);
-}
-
-int
-main(int argc, char **argv)
-{
- ldns_pkt *pkt, *answer;
- ldns_rdf *qname;
-
- ldns_resolver *res;
- ldns_rdf *nameserver;
- ldns_rdf *mac;
-
- char *server_ip = NULL;
- char *name = NULL;
- char *type = NULL;
-
- if (argc < 4) {
- print_usage(argv[0]);
- } else {
- type = argv[1];
- name = argv[2];
- server_ip = argv[3];
- }
-
- qname = ldns_dname_new_frm_str(name);
-
- pkt = ldns_pkt_query_new(qname, ldns_get_rr_type_by_name(type), 0, LDNS_RD);
-
- /* if you make packet yourself, set the id yourself */
- /* you should not use time as the only seed */
- srand((unsigned) time(NULL));
- ldns_pkt_set_id(pkt, (uint16_t) rand());
-
- ldns_pkt_tsig_sign(pkt, "jelte.", "vBUWJnkgDw4YTobXtbUD6XED5Qg74tnghYX3tzKzfsI=", 300, "hmac-md5.sig-alg.reg.int", NULL);
- mac = ldns_rr_rdf(ldns_pkt_tsig(pkt), 3);
-
- /* test our own sign */
- if (!ldns_pkt_tsig_verify(pkt, "jelte.", "vBUWJnkgDw4YTobXtbUD6XED5Qg74tnghYX3tzKzfsI=", NULL)) {
- printf("Can't verify my own sig :(\n");
- exit(-1);
- }
-
- /* print the resulting pkt to stdout */
- printf("QUERY:\n");
- ldns_pkt_print(stdout, pkt);
-
- /* Send to resolver */
-
- /* init */
- res = ldns_resolver_new();
- if (!res)
- return -1;
- nameserver = ldns_rdf_new_frm_str(LDNS_RDF_TYPE_A, server_ip);
- if (ldns_resolver_push_nameserver(res, nameserver) != LDNS_STATUS_OK) {
- printf("error push nameserver\n");
- return -1;
- }
- answer = ldns_send(res, pkt);
-
- printf("\n\nANSWER:\n");
- ldns_pkt_print(stdout, answer);
-
- printf("\nVerifying...\n");
-
- if (ldns_pkt_tsig_verify(answer, "jelte.", "vBUWJnkgDw4YTobXtbUD6XED5Qg74tnghYX3tzKzfsI=", mac)) {
- printf("Success!\n");
- } else {
- printf("Failed.\n");
- }
-
- ldns_pkt_free(answer);
- ldns_rdf_free(nameserver);
- ldns_pkt_free(pkt);
- ldns_resolver_free(res);
-
- return 0;
-}
+++ /dev/null
-/**
- * An example ldns program
- *
- * Setup a resolver
- * Query a nameserver
- * Print the result
- */
-
-#include <config.h>
-#include <ldns/dns.h>
-
-void
-doit(void)
-{
- ldns_rdf *a_rec;
- ldns_rdf *aaaa_rec;
- ldns_rdf *rev;
-
- rev = a_rec = NULL;
-
- a_rec = ldns_rdf_new_frm_str(LDNS_RDF_TYPE_A, "192.168.10.1");
- rev = ldns_rdf_address_reverse(a_rec);
-
- printf("printing the reverse of\n");
- if (a_rec)
- ldns_rdf_print(stdout, a_rec);
- printf("\n");
-
- /* this should be someones reverse.. */
- if (rev)
- ldns_rdf_print(stdout, rev);
- printf("\n");
-
- aaaa_rec = ldns_rdf_new_frm_str(LDNS_RDF_TYPE_AAAA, "2001:7b8:206:1::53");
- printf("printing the reverse of\n");
- if (aaaa_rec)
- ldns_rdf_print(stdout, aaaa_rec);
- printf("\n");
-
- rev = ldns_rdf_address_reverse(aaaa_rec);
- /* this should be someones reverse.. */
- if (rev)
- ldns_rdf_print(stdout, rev);
- printf("\n");
-}
-
-int
-main(void)
-{
- ldns_rr *ns;
- ldns_rr_list *list;
- ldns_resolver *res;
- ldns_rdf **nss;
- size_t i;
-
-#if 0
- printf("Test some simple ipvX reverse functions\n");
- doit();
- doit();
- doit();
- doit();
-#endif
-
- res = ldns_resolver_new();
- list = ldns_rr_list_new();
-
- ns = ldns_rr_new_frm_str("a.root-servers.net. 3600 IN A 198.41.0.1");
- ldns_rr_list_push_rr(list, ns);
- ns = ldns_rr_new_frm_str("a.root-servers.net. 3600 IN A 198.41.0.2");
- ldns_rr_list_push_rr(list, ns);
- ns = ldns_rr_new_frm_str("a.root-servers.net. 3600 IN A 198.41.0.3");
- ldns_rr_list_push_rr(list, ns);
- printf("\nrr:\n");
- ldns_rr_print(stdout, ns);
- printf("\nlist:\n");
- ldns_rr_list_print(stdout, list);
- printf("------\n");
-
- /*ldns_resolver_push_nameserver_rr(res, ns);*/
- if (ldns_resolver_push_nameserver(res, ldns_rr_rdf(ns,0)) != LDNS_STATUS_OK) {
- printf("err\n");
- }
- if (ldns_resolver_push_nameserver(res, ldns_rr_rdf(ns,0)) != LDNS_STATUS_OK) {
- printf("err\n");
- }
- printf("the whole shebang\n");
- ldns_resolver_push_nameserver_rr_list(res, list);
- ldns_resolver_push_nameserver_rr_list(res, list);
- ldns_resolver_push_nameserver_rr_list(res, list);
- ldns_resolver_push_nameserver_rr_list(res, list);
- ldns_resolver_push_nameserver_rr_list(res, list);
- ldns_resolver_push_nameserver_rr_list(res, list);
- ldns_resolver_push_nameserver_rr_list(res, list);
-
- printf("The whole resolver\n\n");
- ldns_resolver_print(stdout, res);
-
- nss = ldns_resolver_nameservers(res);
- if (!nss) {
- printf("ook hier gaat wat fout!\n");
- }
- for (i = 0; i < ldns_resolver_nameserver_count(res); i++) {
- ldns_rdf_print(stdout, nss[i]);
- printf("\n");
- }
- printf("removing whole shebang\n");
-
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_push_nameserver_rr_list(res, list);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_push_nameserver_rr_list(res, list);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
- ldns_resolver_pop_nameserver(res);
-
- printf("printing what is left\n");
- nss = ldns_resolver_nameservers(res);
-
- for (i = 0; i < ldns_resolver_nameserver_count(res); i++) {
- ldns_rdf_print(stdout, nss[i]);
- printf("\n");
- }
-
- return 0;
-}
+++ /dev/null
-/**
- * An example ldns program
- *
- * transform a key into a ds
- */
-
-#include <config.h>
-#include <ldns/dns.h>
-
-int
-main(void)
-{
- ldns_rr *key;
- ldns_rr *ds;
- ldns_rdf *ch;
- ldns_rr *nsec;
-
- key = ldns_rr_new_frm_str("nlnetlabs.nl. 86400 IN DNSKEY 257 3 RSASHA1 AQPzzTWMz8qSWIQlfRnPckx2BiVmkVN6LPupO3mbz7FhLSnm26n6iG9NLby97Ji453aWZY3M5/xJBSOS2vWtco2t8C0+xeO1bc/d6ZTy32DHchpW6rDH1vp86Ll+ha0tmwyy9QP7y2bVw5zSbFCrefk8qCUBgfHm9bHzMG1UBYtEIQ==");
-
- ldns_rr_print(stdout, key);
- printf("keytag %d\n", ldns_keytag(key));
-
- printf("\n");
-
- ds = ldns_key_rr2ds(key);
-
- nsec = ldns_rr_new_frm_str("nlnetlabs.nl. 18000 IN NSEC _sip._udp.nlnetlabs.nl. NS SOA MX TXT RRSIG NSEC DNSKEY");
-
- printf("\nand now the DS\n");
- printf("rdata count %d\n", ldns_rr_rd_count(ds));
- ldns_rr_print(stdout, ds);
- printf("\n");
-
- ch = ldns_dname_left_chop(ldns_rr_owner(ds));
- ldns_rdf_print(stdout, ch);
- printf("\n");
-
- return 0;
-}
+++ /dev/null
-/*
- * test2, read hexdump of file and print query
- *
- * reading code taken from drill, maybe put it in the library?
- * (rewritten cleanly of course, and with error checking)
- */
-
-#include <config.h>
-#include <ldns/ldns.h>
-#include <ldns/str2host.h>
-#include <ldns/host2str.h>
-#include <ldns/host2wire.h>
-#include <ldns/buffer.h>
-
-#include "util.h"
-
-#define MAX_PACKET 10000
-
-/**
- * Converts a hex string to binary data
- * len is the length of the string
- * buf is the buffer to store the result in
- * offset is the starting position in the result buffer
- *
- * This function returns the length of the result
- */
-size_t
-hexstr2bin(char *hexstr, int len, uint8_t *buf, size_t offset)
-{
- char c;
- int i;
- uint8_t int8 = 0;
- int sec = 0;
- size_t bufpos = 0;
-
- if (len % 2 != 0) {
- return 0;
- }
-
- for (i=0; i<len; i++) {
- c = hexstr[i];
-
- /* case insensitive, skip spaces */
- if (c != ' ') {
- if (c >= '0' && c <= '9') {
- int8 += c & 0x0f;
- } else if (c >= 'a' && c <= 'z') {
- int8 += (c & 0x0f) + 9;
- } else if (c >= 'A' && c <= 'Z') {
- int8 += (c & 0x0f) + 9;
- } else {
- printf("Error in reading hex data: \n");
- printf("%s ('%c' at %d, should read %d bytes)\n", hexstr, c, i, len);
- return 0;
- }
-
- if (sec == 0) {
- int8 = int8 << 4;
- sec = 1;
- } else {
-
- buf[bufpos+offset] = int8;
- int8 = 0;
- sec = 0;
- bufpos++;
- }
- }
-
- }
- return bufpos;
-}
-
-
-ldns_pkt *
-file2pkt(const char *filename)
-{
- ldns_pkt *pkt;
- FILE *fp = NULL;
- char c;
- ldns_status status;
-
- /* stat hack
- * 0 = normal
- * 1 = comment (skip to end of line)
- * 2 = unprintable character found, read binary data directly
- */
- int state = 0;
- size_t buflen = MAX_PACKET;
- uint8_t *hexbuf = XMALLOC(uint8_t, buflen);
- int hexbufpos = 0;
- size_t wirelen;
- uint8_t *wire = XMALLOC(uint8_t, buflen);
-
- if (strncmp(filename, "-", 2) == 0) {
- fp = stdin;
- } else {
- fp = fopen(filename, "r");
- }
- if (fp == NULL) {
- printf("Unable to open file for reading: %s\n", filename);
- return NULL;
- }
-
- printf("Opened %s\n", filename);
-
- c = fgetc(fp);
- while (c != EOF) {
- if (state < 2 && !isascii(c)) {
- printf("non ascii character found in file: (%d) switching to raw mode\n", c);
- state = 2;
- }
- switch (state) {
- case 0:
- if ( (c >= '0' && c <= '9') ||
- (c >= 'a' && c <= 'f') ||
- (c >= 'A' && c <= 'F') )
- {
- hexbuf[hexbufpos] = (uint8_t) c;
- hexbufpos++;
- } else if (c == ';') {
- state = 1;
- } else if (c == ' ' || c == '\t' || c == '\n') {
- /* skip whitespace */
- }
- break;
- case 1:
- if (c == '\n' || c == EOF) {
- state = 0;
- }
- break;
- case 2:
- hexbuf[hexbufpos] = (uint8_t) c;
- hexbufpos++;
- break;
- default:
- printf("unknown state while reading file\n");
- return NULL;
- break;
- }
- c = fgetc(fp);
-
- if ((size_t) hexbufpos >= buflen) {
- buflen = buflen * 2;
- hexbuf = XREALLOC(hexbuf, uint8_t, buflen);
- wire = XREALLOC(wire, uint8_t, buflen);
- }
-
- }
- if (c == EOF) {
- if (state < 2) {
- printf("read:\n");
- printf("%s\n", (char *)hexbuf);
- } else {
- printf("Not printing wire because it contains non ascii data\n");
- }
- }
- /* lenient mode: length must be multiple of 2 */
- if (hexbufpos % 2 != 0) {
- hexbuf[hexbufpos] = (uint8_t) '0';
- hexbufpos++;
- }
-
- if (state < 2) {
- wirelen = hexstr2bin((char *) hexbuf, hexbufpos, wire, 0);
- } else {
- memcpy(wire, hexbuf, (size_t) hexbufpos);
- wirelen = (size_t) hexbufpos;
- }
-
- FREE(hexbuf);
-
- status = ldns_wire2pkt(&pkt, wire, wirelen);
-
- FREE(wire);
-
- if (status == LDNS_STATUS_OK) {
- return pkt;
- } else {
- printf("error in wire2pkt: %d\n", status);
- return NULL;
- }
-}
-
-
-int
-main(int argc, char **argv)
-{
- const char *file;
- ldns_pkt *pkt;
- uint8_t *target_buf;
- size_t len;
- uint16_t i;
- char *str;
-
- if (argc == 2) {
- file = argv[1];
- } else {
- file = "packetdump.txt";
- }
-
- pkt = file2pkt(file);
- if (pkt) {
- printf("packet:\n");
- str = ldns_pkt2str(pkt);
- printf("%s", str);
- FREE(str);
- } else {
- printf("\n");
- }
-
- printf("And back to wire:\n");
- /*buffer = ldns_buffer_new(65535);*/
- target_buf = ldns_pkt2wire(pkt, &len);
-
- printf("Buffer length: %u\n", (unsigned int) len);
-
- for (i=0; i<len; i++) {
- printf("%02x", (unsigned int) target_buf[i]);
- }
- printf("\n\n");
-
- ldns_pkt_free(pkt);
- FREE(target_buf);
-
- return 0;
-}
-
+++ /dev/null
-/*
- * test3, test functions in str2host
- *
- */
-
-#include <config.h>
-#include <ldns/ldns.h>
-#include <ldns/str2host.h>
-
-#include "util.h"
-
-#define MAX_PACKET 10000
-
-int
-main(void)
-{
- ldns_rdf *rd;
-
- fprintf(stdout, "www.\n");
- (void) ldns_str2rdf_dname(&rd, "www.");
- ldns_rdf_free(rd);
-
- fprintf(stdout, "www.miek.nl\n");
- (void) ldns_str2rdf_dname(&rd, "www.miek.nl");
- ldns_rdf_free(rd);
-
- fprintf(stdout, "www\n");
- (void) ldns_str2rdf_dname(&rd, "www");
- ldns_rdf_free(rd);
-
- fprintf(stdout, "www.miek.nl..\n");
- (void) ldns_str2rdf_dname(&rd, "www.miek.nl..");
-
- ldns_rdf_free(rd);
-
- return 0;
-}
+++ /dev/null
-/**
- * An example ldns program
- *
- * Setup a resolver
- * Query a nameserver
- * Print the result
- */
-
-#include <config.h>
-#include <ldns/resolver.h>
-#include <ldns/ldns.h>
-
-int
-main(void)
-{
- ldns_resolver *res;
- ldns_rdf *default_dom;
- ldns_rdf *qname;
- ldns_rdf *nameserver;
- ldns_pkt *pkt;
-
- /* init */
- res = ldns_resolver_new();
- if (!res)
- return 1;
-
- /* create a default domain and add it */
- default_dom = ldns_dname_new_frm_str("miek.nl.");
- if (!default_dom) {
- printf("error default dom\n");
- return 1;
- }
- nameserver = ldns_rdf_new_frm_str(LDNS_RDF_TYPE_A, "127.0.0.1");
- if (!nameserver) {
- printf("error default dom\n");
- return 1;
- }
-
-
- ldns_resolver_set_domain(res, default_dom);
-
- if (ldns_resolver_push_nameserver(res, nameserver) != LDNS_STATUS_OK) {
- printf("error push nameserver\n");
- return 1;
- }
- if (ldns_resolver_push_nameserver(res, nameserver) != LDNS_STATUS_OK) {
- printf("error push nameserver\n");
- return 1;
- }
-
- /* setup the question */
- qname = ldns_dname_new_frm_str("miekwww");
- if (!qname) {
- printf("error making qname\n");
- return 1;
- }
-
- /* fire it off. "miek.nl." will be added */
- pkt = ldns_resolver_send(res, qname, LDNS_RR_TYPE_MX, 0, 0);
-
- if (!pkt) {
- printf("error pkt sending\n");
- } else {
-
- /* print the resulting pkt to stdout */
-/*
- ldns_pkt_print(stdout, pkt);
-*/
- ldns_pkt_free(pkt);
- }
-
- ldns_rdf_free(qname);
- ldns_rdf_free(default_dom);
- ldns_rdf_free(nameserver);
- ldns_resolver_free(res);
-
- return 0;
-}
+++ /dev/null
-#include <config.h>
-#include <ldns/ldns.h>
-
-int
-main()
-{
- ldns_pkt *packet;
-
- printf("test 5\n");
- packet = ldns_pkt_query_new_frm_str("www.kanariepiet.com",
- LDNS_RR_TYPE_A,
- LDNS_RR_CLASS_IN, 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_TYPE_A,
- 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;
-}
-
-
+++ /dev/null
-/**
- * An example ldns program
- *
- * Setup a resolver
- * Query a nameserver
- * Print the result
- */
-
-#include <config.h>
-#include <ldns/ldns.h>
-
-int
-main(void)
-{
- ldns_resolver *res;
- ldns_rdf *default_dom;
- ldns_rdf *qname;
- ldns_rdf *nameserver;
- ldns_pkt *pkt;
-
- /* init */
- res = ldns_resolver_new();
- if (!res)
- return 1;
-
- /* create a default domain and add it */
- default_dom = ldns_dname_new_frm_str("miek.nl.");
- if (!default_dom) {
- printf("error default dom\n");
- return 1;
- }
- nameserver = ldns_rdf_new_frm_str(LDNS_RDF_TYPE_AAAA,
- "2001:7b8:206:1:211:2fff:fed7:7378");
- if (!nameserver) {
- printf("error in making NS\n");
- return 1;
- }
-
- ldns_resolver_set_domain(res, default_dom);
-
- if (ldns_resolver_push_nameserver(res, nameserver) != LDNS_STATUS_OK) {
- printf("error push nameserver\n");
- return 1;
- }
-
- /* setup the question */
- qname = ldns_dname_new_frm_str("www.miek.nl");
- if (!qname) {
- printf("error making qname\n");
- return 1;
- }
-
- /* fire it off. "miek.nl." will be added */
- pkt = ldns_resolver_send(res, qname, LDNS_RR_TYPE_MX, 0, LDNS_RD);
-
- if (!pkt) {
- printf("error pkt sending\n");
- return 1;
- }
-
- /* 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;
-}
+++ /dev/null
-/**
- * An example ldns program
- *
- * Setup a resolver
- * Query a nameserver
- * Print the result
- */
-
-#include <config.h>
-#include <ldns/resolver.h>
-#include <ldns/dname.h>
-
-void
-print_usage(char *file)
-{
- printf("Usage: %s <type> <name> <server ip>\n", file);
- printf("ipv4 only atm\n");
- exit(0);
-}
-
-int
-main(int argc, char **argv)
-{
- ldns_resolver *res;
- ldns_rdf *qname;
- ldns_rdf *nameserver;
- ldns_rdf *defdomain;
- ldns_pkt *pkt;
- char *server_ip = NULL;
- char *name = NULL;
- char *type = NULL;
-
- if (argc < 4) {
- print_usage(argv[0]);
- } else {
- type = argv[1];
- name = argv[2];
- server_ip = argv[3];
- }
-
- /* init */
- res = ldns_resolver_new();
- if (!res)
- return -1;
-
- nameserver = ldns_rdf_new_frm_str(LDNS_RDF_TYPE_A, server_ip);
- if (!nameserver) {
- printf("Bad server ip\n");
- return -1;
- }
- defdomain = ldns_dname_new_frm_str("miek.nl");
- ldns_resolver_set_domain(res, defdomain);
- ldns_resolver_set_defnames(res, true);
-
- if (ldns_resolver_push_nameserver(res, nameserver) != LDNS_STATUS_OK) {
- printf("error push nameserver\n");
- return -1;
- }
- /* UDP query */
- ldns_resolver_set_usevc(res, false);
- qname = ldns_dname_new_frm_str(name);
- if (!qname) {
- printf("error making qname\n");
- return -1;
- }
-
- pkt = ldns_resolver_query(res, qname, ldns_get_rr_type_by_name(type), 0, LDNS_RD);
- if (!pkt) {
- printf("error pkt sending\n");
- } else {
- }
-
- ldns_rdf_free(nameserver);
- ldns_rdf_free(defdomain);
- ldns_rdf_free(qname);
- ldns_pkt_free(pkt);
- ldns_resolver_free(res);
-
- return 0;
-}
+++ /dev/null
-/**
- * An example ldns program
- *
- * Setup a resolver
- * Query a nameserver
- * Print the result
- */
-
-#include <config.h>
-#include <ldns/resolver.h>
-#include <ldns/dname.h>
-#include <ldns/host2str.h>
-
-int
-main(int argc, char **argv)
-{
- ldns_resolver *res;
- ldns_rdf *qname;
- ldns_rdf *nameserver;
- ldns_pkt *pkt;
- ldns_rr_list *bla;
- ldns_rr *RR;
- const char *nameserver_address = "127.0.0.1";
-
- if (argc >= 2) {
- nameserver_address = argv[1];
- }
-
- /* init */
- res = ldns_resolver_new();
- if (!res)
- return -1;
-
- RR = ldns_rr_new_frm_str("miek.nl. 3600 IN MX 10 elektron.atoom.net.");
- ldns_rr_print(stdout, RR);
- printf("\n");
- RR = ldns_rr_new_frm_str("miek.nl. 3600 IN MX (\n\t10\n\telektron.atoom.net.\n\t)");
- ldns_rr_print(stdout, RR);
- printf("\n");
-
- nameserver = ldns_rdf_new_frm_str(LDNS_RDF_TYPE_A, nameserver_address);
- if (ldns_resolver_push_nameserver(res, nameserver) != LDNS_STATUS_OK) {
- printf("error push nameserver\n");
- return -1;
- }
- qname = ldns_dname_new_frm_str("open.nlnetlabs.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);
- bla = ldns_pkt_authority(pkt);
-
- ldns_rr_list_print(stdout, bla);
-
- ldns_rr_list_sort(bla);
-
- printf("sorted\n");
- ldns_rr_list_print(stdout, bla);
- }
-
- return 0;
-}