fuzz: check that resource records are serialized successfully

It shouldn't fail at that point.

It's prompted by the "Structure needs cleaning" thing that keeps popping
up in various places like
https://github.com/systemd/systemd/pull/30952#discussion_r1553181309 and
https://github.com/systemd/systemd/issues/31708.
This commit is contained in:
Evgeny Vereshchagin
2024-04-13 05:18:12 +09:00
committed by Yu Watanabe
parent 87bbcb26c8
commit af6e984109
+4 -6
View File
@@ -26,12 +26,10 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
assert_se(f = memstream_init(&m));
(void) fprintf(f, "%s", strna(dns_resource_record_to_string(rr)));
if (dns_resource_record_to_json(rr, &v) < 0)
return 0;
(void) json_variant_dump(v, JSON_FORMAT_PRETTY|JSON_FORMAT_COLOR|JSON_FORMAT_SOURCE, f, NULL);
(void) dns_resource_record_to_wire_format(rr, false);
(void) dns_resource_record_to_wire_format(rr, true);
assert_se(dns_resource_record_to_json(rr, &v) >= 0);
assert_se(json_variant_dump(v, JSON_FORMAT_PRETTY|JSON_FORMAT_COLOR|JSON_FORMAT_SOURCE, f, NULL) >= 0);
assert_se(dns_resource_record_to_wire_format(rr, false) >= 0);
assert_se(dns_resource_record_to_wire_format(rr, true) >= 0);
return 0;
}