]> git.ipfire.org Git - thirdparty/bind9.git/commit
Fuzzing and benchmarking for dns_name_fromwire()
authorTony Finch <fanf@isc.org>
Mon, 7 Nov 2022 16:22:48 +0000 (16:22 +0000)
committerTony Finch <dot@dotat.at>
Thu, 17 Nov 2022 08:45:17 +0000 (08:45 +0000)
commit04f3000dfc4c1081c9e1e4752cf47c792e853d6f
tree49f54d9e907f60e0d7c1a36580b11a0746429e6c
parent1c0f6078116607075a375e9c75304551ebd2fd44
Fuzzing and benchmarking for dns_name_fromwire()

Since this is very sensitive code which has often had security
problems in many DNS implementations, it needs a decent amount of
validation. This fuzzer ensures that the new code has the same output
as the old code, and that it doesn't take longer than a second.

The benchmark uses the fuzzer's copy of the old dns_name_fromwire()
code to compare a number of scenarios: many compression pointers, many
labels, long labels, random data, with/without downcasing.
55 files changed:
fuzz/.gitignore
fuzz/Makefile.am
fuzz/dns_name_fromwire.c [new file with mode: 0644]
fuzz/dns_name_fromwire.in/00b28ff06b788b9b67c6b259800f404f9f3761fd [new file with mode: 0644]
fuzz/dns_name_fromwire.in/02440c9e09b9ccb3c36d1ae3b1dc395d39dd2e61 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/02a01a03cc76d29a0d3f819e9f6e95266f4ee4eb [new file with mode: 0644]
fuzz/dns_name_fromwire.in/03de4865464d9fee5cf614c2e8196cb0246b60f3 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/0c932286228aafdb4bbcf9d39f4554d814e7c1cb [new file with mode: 0644]
fuzz/dns_name_fromwire.in/12248b2bb3063f4f6aca8ec227aa26f24299e53b [new file with mode: 0644]
fuzz/dns_name_fromwire.in/2c17e4e73e0ee81d3ed7279f3fbc51d35e8837a1 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/302f0fe41e58a99c91f22062cda18d4683dc702f [new file with mode: 0644]
fuzz/dns_name_fromwire.in/43f90bb183e988637abbcbc50be4a89ebff60d9a [new file with mode: 0644]
fuzz/dns_name_fromwire.in/448daf1db0846c67ecb7a533361647cb41e5dce2 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/477cdb78a23d07e2fc8103c4c79c9a545bcec06b [new file with mode: 0644]
fuzz/dns_name_fromwire.in/4b345f6450981c1ed938081331eeabd03598cb20 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/5821576d8de31746675cc0ea7f9e652438070dfe [new file with mode: 0644]
fuzz/dns_name_fromwire.in/608fa82ab128dfb43c9a064bfab677d9b5f3f72b [new file with mode: 0644]
fuzz/dns_name_fromwire.in/61c70af9c1b0588393243703eb472271290f88eb [new file with mode: 0644]
fuzz/dns_name_fromwire.in/680357a1752af34a7f882cced6b1e5fd8ecc4bcc [new file with mode: 0644]
fuzz/dns_name_fromwire.in/69abe6811b3437087b53d4c4e9157d4ba7a0890b [new file with mode: 0644]
fuzz/dns_name_fromwire.in/69d86c5a071a2d76679d54da225e955c35c40db1 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/6cd63cd014fa252d9f5e62129e05dc6cbd75a7e3 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/7c20e8ac688f92b55099a7f63ff2a4f4bcd7704a [new file with mode: 0644]
fuzz/dns_name_fromwire.in/7d8a23740ae15d7d3dfde25ad1538ae9b9d52265 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/88188ee25030661f21a4dacca02caeb7eff34235 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/93dccf807dc4df3bfc1711ef3ad3bbd65a7d8c67 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/955cad73af85bdac5a701aea20a086c75585ca74 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/9a279b27d765ca2eccc67e1fc8bafb0fa8702208 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/9d30975bf630a3203ed71154257ebcfc19d04067 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/9feb4af1c2bb4444e9417099b21c6b25f7221dee [new file with mode: 0644]
fuzz/dns_name_fromwire.in/a3f75fec735667f1c1218f53e073f25586dc0813 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/b473a861dafebb3cd6ca6b92609da9e40eeea68e [new file with mode: 0644]
fuzz/dns_name_fromwire.in/b8811cd9f785b9fb458236875fda90d048383689 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/bf546f247bb7a3672a04bb4c9e3b5049f981d435 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/bf7b68e9cc0467f7bbbfe1dc0dfd7c3124b3695c [new file with mode: 0644]
fuzz/dns_name_fromwire.in/bfb829dd666f7fb4c6d9ae55f58503967cf1b53b [new file with mode: 0644]
fuzz/dns_name_fromwire.in/c351ad42ccc7485a0ad6e1ae8cc07d66ee9b045a [new file with mode: 0644]
fuzz/dns_name_fromwire.in/cc6cba815d062e0e250463aad2113fdcafd48571 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/db6cca49e957261d7a262fbf6dafcac01353f1e4 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/de4e7188e5540bd15eb83ddb5a784c6dc35d8d94 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/df58248c414f342c81e056b40bee12d17a08bf61 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/df7467bb9625092ba9d23c0d8e4f29c7f4e23dd1 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/e05d045edfa8ebe33c73b6459e7d704e0c958c74 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/e23b6fdeadc0379b095bc1ffb8a1d2101ebe76b1 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/e333716351a0ded128bbb67ba46b5017a16ae6bf [new file with mode: 0644]
fuzz/dns_name_fromwire.in/e52912805d2e9212d53a46426e160813124be117 [new file with mode: 0644]
fuzz/dns_name_fromwire.in/f4a59b7257dbd0777e57e6e25689d374f4d771bc [new file with mode: 0644]
fuzz/dns_name_fromwire.in/fc712b19cbed4a8b4db3226dfbfdf3fb7be7690a [new file with mode: 0644]
fuzz/dns_name_fromwire.in/fda8ce1c09f3e385a5c0798f9ee158a4ca7d449f [new file with mode: 0644]
fuzz/dns_name_fromwire.in/fe38c27050137b9ce57189c681beb2b59a539a98 [new file with mode: 0644]
fuzz/old.c [new file with mode: 0644]
fuzz/old.h [new file with mode: 0644]
tests/bench/.gitignore
tests/bench/Makefile.am
tests/bench/dns_name_fromwire.c [new file with mode: 0644]