]> source.dussan.org Git - rspamd.git/commitdiff
[Test] Check the decoded length when doing base32 fuzz test
authorVsevolod Stakhov <vsevolod@rspamd.com>
Sat, 16 Jul 2022 22:50:13 +0000 (23:50 +0100)
committerVsevolod Stakhov <vsevolod@rspamd.com>
Sat, 16 Jul 2022 22:58:43 +0000 (23:58 +0100)
test/lua/unit/base32.lua

index a460b65754cbc0c6d3f0ffe1593bc9b86b686497..d6e67c06a90deddc8fcb7cea90afa4a47cef4707 100644 (file)
@@ -33,7 +33,7 @@ context("Base32 encodning", function()
     end
   end)
 
-  test("Base32 fuzz test", function()
+  test("Base32 fuzz test: zbase32", function()
     for i = 1,1000 do
       local b, l = random_buf(4096)
       local how = math.floor(math.random(3) - 1)
@@ -42,6 +42,8 @@ context("Base32 encodning", function()
       local nl = ffi.new("size_t [1]")
       local nb = ffi.C.rspamd_decode_base32(bs, #bs, nl, how)
 
+      assert_equal(tonumber(nl[0]), l,
+          string.format("invalid size reported: %d reported vs %d expected", tonumber(nl[0]), l))
       local cmp = ffi.C.memcmp(b, nb, l)
       ffi.C.g_free(ben)
       ffi.C.g_free(nb)