diff --git a/src/resolvers.c b/src/resolvers.c index 92698209c..1bcbdb857 100644 --- a/src/resolvers.c +++ b/src/resolvers.c @@ -1854,6 +1854,9 @@ int resolv_dn_label_to_str(const char *dn, int dn_len, char *str, int str_len) for (i = 0; i < dn_len; ++i) { sz = (unsigned char)dn[i]; + if (!sz) + break; + /* Check str_len adding 1 for the dot if (i!=0) and 1 for null terminator */ if (str_len < sz+i+(!!i)+1) return -1;