In c-ares before 1.12.0, When a string is passed in to 'arescreatequery' or 'ares_mkquery' and uses an escaped trailing dot, like "hello.", c-ares calculates the string length wrong and subsequently writes outside of the the allocated buffer with one byte. The wrongly written byte is the least significant byte of the 'dnsclass' argument; most commonly 1 (CVE-2016-5180).