test debug
[heimdal.git] / lib / krb5 / krb5_compare_creds.3
blobe833f8376664bec2c1122fd2e2b21d4a490a17ed
1 .\" Copyright (c) 2004-2005 Kungliga Tekniska Högskolan
2 .\" (Royal Institute of Technology, Stockholm, Sweden).
3 .\" All rights reserved.
4 .\"
5 .\" Redistribution and use in source and binary forms, with or without
6 .\" modification, are permitted provided that the following conditions
7 .\" are met:
8 .\"
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\"    notice, this list of conditions and the following disclaimer.
11 .\"
12 .\" 2. Redistributions in binary form must reproduce the above copyright
13 .\"    notice, this list of conditions and the following disclaimer in the
14 .\"    documentation and/or other materials provided with the distribution.
15 .\"
16 .\" 3. Neither the name of the Institute nor the names of its contributors
17 .\"    may be used to endorse or promote products derived from this software
18 .\"    without specific prior written permission.
19 .\"
20 .\" THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
21 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
24 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 .\" SUCH DAMAGE.
31 .\"
32 .\" $Id$
33 .\"
34 .Dd May 10, 2005
35 .Dt KRB5_COMPARE_CREDS 3
36 .Os HEIMDAL
37 .Sh NAME
38 .Nm krb5_compare_creds
39 .Nd compare Kerberos 5 credentials
40 .Sh LIBRARY
41 Kerberos 5 Library (libkrb5, -lkrb5)
42 .Sh SYNOPSIS
43 .In krb5.h
44 .Ft krb5_boolean
45 .Fo krb5_compare_creds
46 .Fa "krb5_context context"
47 .Fa "krb5_flags whichfields"
48 .Fa "const krb5_creds *mcreds"
49 .Fa "const krb5_creds *creds"
50 .Fc
51 .Sh DESCRIPTION
52 .Fn krb5_compare_creds
53 compares
54 .Fa mcreds
55 (usually filled in by the application)
57 .Fa creds
58 (most often from a credentials cache)
59 and return
60 .Dv TRUE
61 if they are equal.
62 Unless
63 .Va mcreds-\*[Gt]server
65 .Dv NULL ,
66 the service of the credentials are always compared.  If the client
67 name in
68 .Fa mcreds
69 is present, the client names are also compared. This function is
70 normally only called indirectly via
71 .Xr krb5_cc_retrieve_cred 3 .
72 .Pp
73 The following flags, set in
74 .Fa whichfields ,
75 affects the comparison:
76 .Bl -tag -width KRB5_TC_MATCH_SRV_NAMEONLY -compact -offset indent
77 .It KRB5_TC_MATCH_SRV_NAMEONLY
78 Consider all realms equal when comparing the service principal.
79 .It KRB5_TC_MATCH_KEYTYPE
80 Compare enctypes.
81 .It KRB5_TC_MATCH_FLAGS_EXACT
82 Make sure that the ticket flags are identical.
83 .It KRB5_TC_MATCH_FLAGS
84 Make sure that all ticket flags set in
85 .Fa mcreds
86 are also present  in
87 .Fa creds .
88 .It KRB5_TC_MATCH_TIMES_EXACT
89 Compares the ticket times exactly.
90 .It KRB5_TC_MATCH_TIMES
91 Compares only the expiration times of the creds.
92 .It KRB5_TC_MATCH_AUTHDATA
93 Compares the authdata fields.
94 .It KRB5_TC_MATCH_2ND_TKT
95 Compares the second tickets (used by user-to-user authentication).
96 .It KRB5_TC_MATCH_IS_SKEY
97 Compares the existance of the second ticket.
98 .El
99 .Sh SEE ALSO
100 .Xr krb5 3 ,
101 .Xr krb5_cc_retrieve_cred 3 ,
102 .Xr krb5_creds 3 ,
103 .Xr krb5_get_init_creds 3 ,
104 .Xr kerberos 8