A name has to be at least 1 byte, so return `NULL` if this is not the case.
Before that change, we had a paradoxical situation where
`ldns_dname_new(0, NULL)` returned a valid RDF pointer, but trying to use
that pointer with functions such as `ldns_rdf_print()` had an undefined
behavior.