]> git.ipfire.org Git - thirdparty/ldns.git/commitdiff
run-test6 test ip6 - seems to work :-)
authorMiek Gieben <miekg@NLnetLabs.nl>
Wed, 2 Feb 2005 09:34:53 +0000 (09:34 +0000)
committerMiek Gieben <miekg@NLnetLabs.nl>
Wed, 2 Feb 2005 09:34:53 +0000 (09:34 +0000)
Makefile.in
TODO
run-test6.c [new file with mode: 0644]

index 4eb5e0bdc6a495361c464ed481762266b9bfec08..d44dfcc446d249b7ddccc6a56187aed0a70ae349 100644 (file)
@@ -38,7 +38,8 @@ LIBDNS_HEADERS        =       ldns/error.h            \
                        util.h
 LIBDNS_OBJECTS =       $(LIBDNS_SOURCES:.c=.o)
 
-ALL_SOURCES    =       run-test0.c run-test1.c run-test2.c run-test3.c run-test4.c run-test5.c \
+ALL_SOURCES    =       run-test0.c run-test1.c run-test2.c run-test3.c \
+                       run-test4.c run-test5.c run-test6.c \
                        $(LIBDNS_SOURCES)
 
 COMPILE                = $(CC) $(CPPFLAGS) $(CFLAGS)
@@ -49,7 +50,7 @@ LINK          = $(CC) $(CFLAGS) $(LDFLAGS)
 
 .PHONY:        clean realclean docclean doc lint test all
 
-all:   run-test0 run-test1 run-test2 run-test3 run-test4 run-test5
+all:   run-test0 run-test1 run-test2 run-test3 run-test4 run-test5 run-test6
 
 run-test0:     run-test0.o $(LIBDNS_OBJECTS) $(LIBOBJS)
                $(LINK) ${LIBS} -o $@ $+
@@ -69,6 +70,9 @@ run-test4:    run-test4.o $(LIBDNS_OBJECTS) $(LIBOBJS)
 run-test5:     run-test5.o $(LIBDNS_OBJECTS) $(LIBOBJS)
                $(LINK) ${LIBS} -o $@ $+
 
+run-test6:     run-test6.o $(LIBDNS_OBJECTS) $(LIBOBJS)
+               $(LINK) ${LIBS} -o $@ $+
+
 doc:   
        doxygen libdns.doxygen
 
diff --git a/TODO b/TODO
index 52a384169dd412cbb347c3da462fd6e403365c1d..cb4baf16db20f04881321cbda77985617c8e30aa 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1 +1,2 @@
 Current TODO list
+o drop ldns_resolver_set_configured() ?
diff --git a/run-test6.c b/run-test6.c
new file mode 100644 (file)
index 0000000..0915814
--- /dev/null
@@ -0,0 +1,74 @@
+/**
+ * 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_rdf_new_frm_str("miek.nl.", LDNS_RDF_TYPE_DNAME);
+       if (!default_dom) {
+               printf("error default dom\n");
+               return 1;
+       }
+        nameserver  = ldns_rdf_new_frm_str("2001:7b8:206:1:211:2fff:fed7:7378", 
+                       LDNS_RDF_TYPE_AAAA);
+       if (!nameserver) {
+               printf("error in making NS\n");
+               return 1;
+       }
+
+                
+        if (ldns_resolver_set_domain(res, default_dom) != LDNS_STATUS_OK) {
+               printf("error set domain\n");
+                return 1;
+       }
+        if (ldns_resolver_push_nameserver(res, nameserver) != LDNS_STATUS_OK) {
+               printf("error push nameserver\n");
+                return 1;
+       }
+
+       /* hack to make the resolver appear to
+        * be configued - don't know if we need this
+        */
+       ldns_resolver_set_configured(res, 1);
+        
+        /* setup the question */
+        qname = ldns_rdf_new_frm_str("miekwww", LDNS_RDF_TYPE_DNAME);
+       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);
+
+       if (!pkt)  {
+               printf("error pkt sending\n");
+               return 1;
+       }
+        
+        /* print the resulting pkt to stdout */
+        ldns_pkt_print(stdout, pkt);
+
+        return 0;
+}