xref: /freebsd/crypto/krb5/doc/html/_sources/appdev/refs/api/krb5_build_principal_ext.rst.txt (revision 7f2fe78b9dd5f51c821d771b63d2e096f6fd49e9)
1krb5_build_principal_ext -  Build a principal name using length-counted strings.
2=================================================================================
3
4..
5
6.. c:function:: krb5_error_code krb5_build_principal_ext(krb5_context context, krb5_principal * princ, unsigned int rlen, const char * realm, ... )
7
8..
9
10
11:param:
12
13	          **[in]** **context** - Library context
14
15	          **[out]** **princ** - Principal name
16
17	          **[in]** **rlen** - Realm name length
18
19	          **[in]** **realm** - Realm name
20
21
22..
23
24
25:retval:
26         -   0   Success
27
28
29:return:
30         -  Kerberos error codes
31
32..
33
34
35
36
37
38
39
40This function creates a principal from a length-counted string and a variable-length list of length-counted components. The list of components ends with the first 0 length argument (so it is not possible to specify an empty component with this function). Call krb5_free_principal() to free allocated memory for principal when it is no longer needed.
41
42
43
44Beginning with release 1.20, the name type of the principal will be inferred as **KRB5_NT_SRV_INST** or **KRB5_NT_WELLKNOWN** based on the principal name. The type will be **KRB5_NT_PRINCIPAL** if a type cannot be inferred.
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59..
60
61
62
63
64
65