SelfSignedCertificate: only add email SAN to client certs if the passed-in email is non-empty.
SelfSignedCertificate: only add email SAN to client certs if the passed-in email is non-empty.

This commit ensures that we only add the email subject alt name (SAN) if the passed-in
email is non-empty.

It turns out that the call to X509V3_EXT_conf_nid() in add_ext() will fail
if the SAN value is formatted incorrectly. In our case, we passed "email:"
as the value, and X509V3_EXT_conf_nid() would return NULL.

To fix this, we now check whether the email we've been given is empty or not.
If it's empty, we don't add the SAN. If it's there, we do.

Lartza/mumble,Lartza/mumble,Lartza/mumble,Lartza/mumble,Lartza/mumble,Lartza/mumble,Lartza/mumble,Lartza/mumble