Null-pointer check in add_admin_princ

If allocating memory for principal@realm fails, NULL pointer is
passed as name to libkrb5:krb5_parse_name, eventually leading to
null-pointer dereference in allocate_princ.

Also checking return value of asprintf in case particular asprintf
implementation isn't setting pointer to NULL on ENOMEM.