xref: /freebsd/crypto/krb5/src/ccapi/common/cci_cred_union.h (revision 7f2fe78b9dd5f51c821d771b63d2e096f6fd49e9)
1*7f2fe78bSCy Schubert /* ccapi/common/cci_cred_union.h */
2*7f2fe78bSCy Schubert /*
3*7f2fe78bSCy Schubert  * Copyright 2006 Massachusetts Institute of Technology.
4*7f2fe78bSCy Schubert  * All Rights Reserved.
5*7f2fe78bSCy Schubert  *
6*7f2fe78bSCy Schubert  * Export of this software from the United States of America may
7*7f2fe78bSCy Schubert  * require a specific license from the United States Government.
8*7f2fe78bSCy Schubert  * It is the responsibility of any person or organization contemplating
9*7f2fe78bSCy Schubert  * export to obtain such a license before exporting.
10*7f2fe78bSCy Schubert  *
11*7f2fe78bSCy Schubert  * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and
12*7f2fe78bSCy Schubert  * distribute this software and its documentation for any purpose and
13*7f2fe78bSCy Schubert  * without fee is hereby granted, provided that the above copyright
14*7f2fe78bSCy Schubert  * notice appear in all copies and that both that copyright notice and
15*7f2fe78bSCy Schubert  * this permission notice appear in supporting documentation, and that
16*7f2fe78bSCy Schubert  * the name of M.I.T. not be used in advertising or publicity pertaining
17*7f2fe78bSCy Schubert  * to distribution of the software without specific, written prior
18*7f2fe78bSCy Schubert  * permission.  Furthermore if you modify this software you must label
19*7f2fe78bSCy Schubert  * your software as modified software and not distribute it in such a
20*7f2fe78bSCy Schubert  * fashion that it might be confused with the original M.I.T. software.
21*7f2fe78bSCy Schubert  * M.I.T. makes no representations about the suitability of
22*7f2fe78bSCy Schubert  * this software for any purpose.  It is provided "as is" without express
23*7f2fe78bSCy Schubert  * or implied warranty.
24*7f2fe78bSCy Schubert  */
25*7f2fe78bSCy Schubert 
26*7f2fe78bSCy Schubert #ifndef CCI_CRED_UNION_H
27*7f2fe78bSCy Schubert #define CCI_CRED_UNION_H
28*7f2fe78bSCy Schubert 
29*7f2fe78bSCy Schubert #include "cci_types.h"
30*7f2fe78bSCy Schubert #include <CredentialsCache2.h>
31*7f2fe78bSCy Schubert 
32*7f2fe78bSCy Schubert cc_uint32 cci_credentials_union_release (cc_credentials_union *io_credentials);
33*7f2fe78bSCy Schubert 
34*7f2fe78bSCy Schubert cc_uint32 cci_credentials_union_read (cc_credentials_union **out_credentials_union,
35*7f2fe78bSCy Schubert                                       k5_ipc_stream           io_stream);
36*7f2fe78bSCy Schubert 
37*7f2fe78bSCy Schubert cc_uint32 cci_credentials_union_write (const cc_credentials_union *in_credentials_union,
38*7f2fe78bSCy Schubert                                        k5_ipc_stream                io_stream);
39*7f2fe78bSCy Schubert 
40*7f2fe78bSCy Schubert cc_uint32 cci_cred_union_release (cred_union *io_cred_union);
41*7f2fe78bSCy Schubert 
42*7f2fe78bSCy Schubert cc_uint32 cci_credentials_union_to_cred_union (const cc_credentials_union  *in_credentials_union,
43*7f2fe78bSCy Schubert                                                cred_union                 **out_cred_union);
44*7f2fe78bSCy Schubert 
45*7f2fe78bSCy Schubert cc_uint32 cci_cred_union_to_credentials_union (const cred_union      *in_cred_union,
46*7f2fe78bSCy Schubert                                                cc_credentials_union **out_credentials_union);
47*7f2fe78bSCy Schubert 
48*7f2fe78bSCy Schubert cc_uint32 cci_cred_union_compare_to_credentials_union (const cred_union           *in_cred_union_compat,
49*7f2fe78bSCy Schubert                                                        const cc_credentials_union *in_credentials_union,
50*7f2fe78bSCy Schubert                                                        cc_uint32                  *out_equal);
51*7f2fe78bSCy Schubert 
52*7f2fe78bSCy Schubert #endif /* CCI_CRED_UNION_H */
53