1 
2 GSSAPI::Status
3 acquire_cred(name, in_time, in_mechs, cred_usage, cred, out_mechs, out_time)
4 	GSSAPI::Name_opt	name
5 	OM_uint32		in_time
6 	GSSAPI::OID::Set_opt	in_mechs
7 	int			cred_usage
8     PREINIT:
9 	GSSAPI__Cred		cred_real;
10 	GSSAPI__OID__Set	out_mechs_real;
11 	OM_uint32		out_time_real;
12     INPUT:
13 	GSSAPI::Cred_optout	cred
14 	GSSAPI::OID::Set_optout	out_mechs
15 	OM_uint32_optout	out_time
16     CODE:
17 	RETVAL.major =
18 	    gss_acquire_cred(&RETVAL.minor, name, in_time, in_mechs,
19 			     cred_usage, cred, out_mechs, out_time);
20     OUTPUT:
21 	RETVAL
22 	cred
23 	out_mechs
24 	out_time
25 
26 
27 GSSAPI::Status
28 add_cred(in_cred, name, in_mech, cred_usage, in_init_time, in_acc_time, out_cred, out_mechs, out_init_time, out_acc_time)
29 	GSSAPI::Cred_opt	in_cred
30 	GSSAPI::Name		name
31 	GSSAPI::OID		in_mech
32 	int			cred_usage
33 	OM_uint32		in_init_time
34 	OM_uint32		in_acc_time
35     PREINIT:
36 	GSSAPI__Cred		out_cred_real;
37 	GSSAPI__OID__Set	out_mechs_real;
38 	OM_uint32		out_init_time_real;
39 	OM_uint32		out_acc_time_real;
40     INPUT:
41 	GSSAPI::Cred_optout	out_cred
42 	GSSAPI::OID::Set_optout	out_mechs
43 	OM_uint32_optout	out_init_time
44 	OM_uint32_optout	out_acc_time
45     CODE:
46 	RETVAL.major =
47 	    gss_add_cred(&RETVAL.minor, in_cred, name, in_mech, cred_usage,
48 			 in_init_time, in_acc_time, out_cred,
49 			 out_mechs, out_init_time, out_acc_time);
50     OUTPUT:
51 	RETVAL
52 	out_cred
53 	out_mechs
54 	out_init_time
55 	out_acc_time
56 
57 GSSAPI::Status
58 inquire_cred(cred, name, lifetime, cred_usage, mechs)
59 	GSSAPI::Cred_opt	cred
60     PREINIT:
61 	GSSAPI__Name		name_real;
62 	OM_uint32		lifetime_real;
63 	gss_cred_usage_t	cred_usage_real;
64 	GSSAPI__OID__Set	mechs_real;
65     INPUT:
66 	GSSAPI::Name_optout	name
67 	OM_uint32_optout	lifetime
68 	gss_cred_usage_t_optout	cred_usage
69 	GSSAPI::OID::Set_optout	mechs
70     CODE:
71 	RETVAL.major = gss_inquire_cred(&RETVAL.minor, cred, name,
72 					lifetime, cred_usage, mechs);
73     OUTPUT:
74 	RETVAL
75 	name
76 	lifetime
77 	cred_usage
78 	mechs
79 
80 GSSAPI::Status
81 inquire_cred_by_mech(cred, mech, name, init_lifetime, acc_lifetime, cred_usage)
82 	GSSAPI::Cred_opt	cred
83 	GSSAPI::OID		mech
84     PREINIT:
85 	GSSAPI__Name		name_real;
86 	OM_uint32		init_lifetime_real;
87 	OM_uint32		acc_lifetime_real;
88 	gss_cred_usage_t	cred_usage_real;
89     INPUT:
90 	GSSAPI::Name_optout	name
91 	OM_uint32_optout	init_lifetime
92 	OM_uint32_optout	acc_lifetime
93 	gss_cred_usage_t_optout	cred_usage
94     CODE:
95 	RETVAL.major = gss_inquire_cred_by_mech(&RETVAL.minor, cred, mech,
96 						name, init_lifetime,
97 						acc_lifetime, cred_usage);
98     OUTPUT:
99 	RETVAL
100 	name
101 	init_lifetime
102 	acc_lifetime
103 	cred_usage
104 
105 # 2006-02-06
106 # addeed destructor, thanks to Merijn Broeren!
107 #
108 void
109 DESTROY(cred)
110         GSSAPI::Cred_opt     cred
111     PREINIT:
112         OM_uint32               minor;
113 	OM_uint32		major;
114     CODE:
115         if (cred != NULL) {
116             major = gss_release_cred(&minor, &cred);
117 	    if ( major != GSS_S_COMPLETE) {
118 	       warn("failed gss_release_cred() module Cred.xs");
119 	    }
120         }
121 
122