Please sign in to comment.
rec: Don't choke on escaped content in getZoneCuts()
`getZoneCuts()` was constructing a `DNSName` by passing a raw label returned from `DNSName::getRawLabels()` as a string. The constructor then tried to handle escaped characters from the string, resulting in a different `DNSName` than the expected one. This caused the `qname != begin` condition to be false even after every label in `labelsToAdd` had been added, causing an UB by calling `std::vector::back()` on an empty vector. Using `DNSName::prependRawLabel()` instead prevents this issue since the string is not escaped. (cherry picked from commit 754914f)
- Loading branch information...