# MIT Kerberos Documentation

Contents | previous | next | index | Search | feedback

# krb5_sname_to_principal - Generate a full principal name from a service name.

krb5_error_code krb5_sname_to_principal(krb5_context context, const char *hostname, const char *sname, krb5_int32 type, krb5_principal *ret_princ)

param:

  [in] context - Library context

  [in] hostname - Host name, or NULL to use local host

  [in] sname - Service name, or NULL to use “host”

  [in] type - Principal type

  [out] ret_princ - Generated principal

retval:

  - 0 Success

return:

  - Kerberos error codes

This function converts a hostname and sname into krb5_principal structure ret_princ . The returned principal will be of the form sname/hostname@REALM where REALM is determined by krb5_get_host_realm(). In some cases this may be the referral (empty) realm.

The type can be one of the following:

> > - KRB5_NT_SRV_HST canonicalizes the host name before looking up the realm and generating the principal.

> > - KRB5_NT_UNKNOWN accepts the hostname as given, and does not canonicalize it.

> Use krb5_free_principal to free ret_princ when it is no longer needed.