Actions
Bug #23433
closed
ISC DHCP new parser my break when parsing lease uids
Difficulty:
Triaged:
Actions
Added by Anonymous almost 8 years ago. Updated over 7 years ago.
The literal regex is still broken.
def server_duid
Rsec::Fail.reset
keyword = word('server-duid').fail 'keyword_server_duid'
anything = /[^;,{}\s]+/.r
literal = /"([^"]|\")*"/.r
fails on
server-duid "\000\001\000\001\"vt\346\000PV\225S\347";
Changing the regex to
literal = /"([^"]|\\\")*"/.r
Though you could just literally do /".*"/ and rely on greedy regex match to fix the issue and simplify the code.
Applied in changeset 14a7505ffb8a57fd787edfc47b9fbd379399029c.
I guess this should be pulled into 1.18 release
1.17 branch would be even better. Unfortunately, I can't update the release field.
Requesting backport into 1.17, this is an important one: #23784