xref: /freebsd/crypto/krb5/doc/html/_sources/appdev/refs/api/krb5_parse_name_flags.rst.txt (revision 7f2fe78b9dd5f51c821d771b63d2e096f6fd49e9)
1krb5_parse_name_flags -  Convert a string principal name to a krb5_principal with flags.
2=========================================================================================
3
4..
5
6.. c:function:: krb5_error_code krb5_parse_name_flags(krb5_context context, const char * name, int flags, krb5_principal * principal_out)
7
8..
9
10
11:param:
12
13	          **[in]** **context** - Library context
14
15	          **[in]** **name** - String representation of a principal name
16
17	          **[in]** **flags** - Flag
18
19	          **[out]** **principal_out** - New principal
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
40Similar to krb5_parse_name(), this function converts a single-string representation of a principal name to a krb5_principal structure.
41
42
43
44The following flags are valid:
45
46	 - #KRB5_PRINCIPAL_PARSE_NO_REALM - no realm must be present in *name*
47
48
49	 - #KRB5_PRINCIPAL_PARSE_REQUIRE_REALM - realm must be present in *name*
50
51
52	 - #KRB5_PRINCIPAL_PARSE_ENTERPRISE - create single-component enterprise principal
53
54
55	 - #KRB5_PRINCIPAL_PARSE_IGNORE_REALM - ignore realm if present in *name*
56
57 If **KRB5_PRINCIPAL_PARSE_NO_REALM** or **KRB5_PRINCIPAL_PARSE_IGNORE_REALM** is specified in *flags* , the realm of the new principal will be empty. Otherwise, the default realm for *context* will be used if *name* does not specify a realm.
58
59
60
61Use krb5_free_principal() to free *principal_out* when it is no longer needed.
62
63
64
65
66
67
68
69
70
71
72..
73
74
75
76
77
78