more flexable x509_name api