xref: /freebsd/crypto/krb5/doc/html/_sources/appdev/refs/api/krb5_sname_to_principal.rst.txt (revision 7f2fe78b9dd5f51c821d771b63d2e096f6fd49e9)
1krb5_sname_to_principal -  Generate a full principal name from a service name.
2===============================================================================
3
4..
5
6.. c:function:: krb5_error_code krb5_sname_to_principal(krb5_context context, const char * hostname, const char * sname, krb5_int32 type, krb5_principal * ret_princ)
7
8..
9
10
11:param:
12
13	          **[in]** **context** - Library context
14
15	          **[in]** **hostname** - Host name, or NULL to use local host
16
17	          **[in]** **sname** - Service name, or NULL to use **"host"**
18
19	          **[in]** **type** - Principal type
20
21	          **[out]** **ret_princ** - Generated principal
22
23
24..
25
26
27:retval:
28         -   0   Success
29
30
31:return:
32         -  Kerberos error codes
33
34..
35
36
37
38
39
40
41
42This 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.
43
44
45
46The *type* can be one of the following:
47
48
49
50
51
52	 - #KRB5_NT_SRV_HST canonicalizes the host name before looking up the realm and generating the principal.
53
54
55
56	 - #KRB5_NT_UNKNOWN accepts the hostname as given, and does not canonicalize it.
57
58 Use krb5_free_principal to free *ret_princ* when it is no longer needed.
59
60
61
62
63
64
65
66
67
68
69..
70
71
72
73
74
75