]> git.ipfire.org Git - thirdparty/ldns.git/commitdiff
reading pkts goes ok. Writing pkt does not seem to reach drill/dig
authorMiek Gieben <miekg@NLnetLabs.nl>
Thu, 11 Aug 2005 17:11:12 +0000 (17:11 +0000)
committerMiek Gieben <miekg@NLnetLabs.nl>
Thu, 11 Aug 2005 17:11:12 +0000 (17:11 +0000)
lua/lua-rns.c
lua/rns.lua

index ab6540f610aee88446549365f16207f4fbbafc0d..050b47d59dc6fccbeecb82cc7c43cf05798f10ca 100644 (file)
@@ -322,7 +322,6 @@ l_read_wire_udp(lua_State *L)
        
        pktbuf_raw = ldns_udp_read_wire(sockfd, &size);
        if (!pktbuf_raw) {
-               printf("[debug] nothing allright\n");
                return 0;
        }
        ldns_buffer_new_frm_data(pktbuf, pktbuf_raw, size);
@@ -408,11 +407,11 @@ l_pkt2buf(lua_State *L)
 
        /* resize! XXX */
        b = ldns_buffer_new(LDNS_MAX_PACKETLEN);
+
        if (ldns_pkt2buffer_wire(b, p) != LDNS_STATUS_OK) {
                return 0;
        }
        /* resize to current usage */
-       printf("[debug] usage buffer %d\n", ldns_buffer_position(b));
        ldns_buffer_reserve(b, (size_t)
                        ldns_buffer_position(b));
        lua_pushlightuserdata(L, b);
index 3138c41920c387a11856ee0e13f899f1e91ade03..a5583e17e96a96bec14f69535912f59eddce6c11 100644 (file)
@@ -24,37 +24,27 @@ l_pkt_print(pkt)
 lua_insert_rr(pkt, rr5, 3)
 l_pkt_print(pkt)
 
--- l_pkt_print(pkt)
-
--- now do it at random
--- lua_transpose_rr_random(pkt)
-
--- print again
--- l_pkt_print(pkt)
-
--- spkt = l_pkt2string(pkt)
-
--- len = string.len(spkt)
-
--- print(len)
-
--- print(spkt)
--- print (string.byte(spkt,160))
-
+---- Setup a server to listen to UDP
 -- make rdf with an ip
 rdf_ip = l_rdf_new_frm_str(LDNS_RDF_TYPE_A, "127.0.0.1")
 -- connect and bind to a server udp socket
 socket = l_server_socket_udp(rdf_ip, 5353)
---
--- read from the socket
+
+-- read from the socket, this blocks...
 wirebuf = l_read_wire_udp(socket)
---lua_debug("what I read")
+
+if wirebuf == nil then
+       lua_debug("nothing received")
+else
+       -- somebody is listening
+       wirepkt = l_buf2pkt(wirebuf)
+       lua_debug("receveid from the interface")
+       l_pkt_print(wirepkt)
+
+       wirebuf2 = l_pkt2buf(pkt)
+       l_write_wire_udp(socket, wirebuf2, rdf_ip, 5353);
+       
+end
+
 -- close the socket
 l_server_socket_close_udp(socket)
--- convert the packet
-
---     lua_debug("I shouldn't be here")
-wirepkt = l_buf2pkt(wirebuf)
---     -- print the packet
-l_pkt_print(wirepkt)
---lua_debug("The end")