]> git.ipfire.org Git - thirdparty/ldns.git/commitdiff
implement insert_rr. Also found subtle bug in rr_list pop (of by 1)
authorMiek Gieben <miekg@NLnetLabs.nl>
Tue, 9 Aug 2005 12:00:49 +0000 (12:00 +0000)
committerMiek Gieben <miekg@NLnetLabs.nl>
Tue, 9 Aug 2005 12:00:49 +0000 (12:00 +0000)
lua/lua-rns.c
lua/rns.lua

index 0deaadc4d15e3441c21fa760b936e215c0198b61..745362801629274719de2e71e00305ff113038e4 100644 (file)
@@ -116,6 +116,21 @@ l_pkt_push_rr(lua_State *L)
        return 1;
 }
 
+static int
+l_pkt_insert_rr(lua_State *L)
+{
+       ldns_pkt *p = (ldns_pkt*)lua_touserdata(L, 1);
+       ldns_rr *rr = (ldns_rr*)lua_touserdata(L, 2);
+       unsigned int n = lua_tonumber(L, 3);
+
+       if(ldns_pkt_insert_rr(p, rr, n)) {
+               lua_pushlightuserdata(L, p);
+               return 1;
+       } else {
+               return 0;
+       }
+}
+
 static int
 l_pkt_get_rr(lua_State *L)
 {
@@ -187,8 +202,6 @@ l_pkt2string(lua_State *L)
                ldns_buffer_free(b);
                return 0;
        }
-       printf("how is this comming along %d\n", ldns_buffer_capacity(b));
-
        /* this is a memcpy??? */
        luaL_addlstring(&lua_b,
                        ldns_buffer_begin(b),
@@ -246,6 +259,7 @@ register_ldns_functions(void)
        lua_register(L, "l_pkt_get_rr", l_pkt_get_rr);
        lua_register(L, "l_pkt_set_rr", l_pkt_set_rr);
        lua_register(L, "l_pkt_rr_count", l_pkt_rr_count);
+       lua_register(L, "l_pkt_insert_rr", l_pkt_insert_rr);
        /* CONVERSIONs */
        lua_register(L, "l_pkt2string", l_pkt2string);
 }
index ae57570fb8a8e5ca16e642724ad5238d944c28b0..e78ab760d2d1cf563fb644e3176f11aea5a00ab6 100644 (file)
@@ -5,6 +5,7 @@ rr1 = l_rr_new_frm_str("www.miek.nl  IN A 192.168.1.2")
 rr2 = l_rr_new_frm_str("miek.nl  IN ns gaap")
 rr3 = l_rr_new_frm_str("miek.nl  IN ns gaap2")
 rr4 = l_rr_new_frm_str("www.atoom.net. IN A 192.168.1.2")
+rr5 = l_rr_new_frm_str("www.nlnetlabs.nl IN A 192.168.1.2")
 
 pkt = l_pkt_new()
 pkt = l_pkt_push_rr(pkt, LDNS_SECTION_ANSWER, rr1)
@@ -18,19 +19,23 @@ lua_reverse_pkt(pkt)
 
 l_pkt_print(pkt)
 
+print("INSERT")
+l_pkt_insert_rr(pkt, rr5, 2);
+l_pkt_print(pkt)
+--
+
+
 -- now do it at random
 lua_transpose_rr_random(pkt)
 
 -- print again
 l_pkt_print(pkt)
 
+-- spkt = l_pkt2string(pkt)
 
-print("Hallo en nu dan")
-
-spkt = l_pkt2string(pkt)
-
-len = string.len(spkt)
+-- len = string.len(spkt)
 
-print(len)
+-- print(len)
 
-print(spkt)
+-- print(spkt)
+-- print (string.byte(spkt,160))