diff --git a/examples/dns.c b/examples/dns.c index 81afa7cb1266cda0c5c0a142574ff14d1a179561..ec8f7128c6247bedcc3308a952bdc303cd24fa01 100644 --- a/examples/dns.c +++ b/examples/dns.c @@ -72,9 +72,12 @@ parser_t* init_parser() { int_range(uint16(), 255, 255), NULL); - const parser_t *dns_question = sequence(length_value(uint8(), uint8()), // QNAME - qtype, // QTYPE - qclass, // QCLASS + const parser_t *dns_question = sequence(sequence(many1(length_value(uint8(), + uint8())), + ch('\x00'), + NULL), // QNAME + qtype, // QTYPE + qclass, // QCLASS NULL); const parser_t *letter = choice(ch_range('a', 'z'),