xref: /freebsd/crypto/krb5/doc/doxy_examples/cc_set_config.c (revision 7f2fe78b9dd5f51c821d771b63d2e096f6fd49e9)
1 /** @example  cc_set_config.c
2  *
3  *  Usage examples for krb5_cc_set_config and krb5_cc_get_config functions
4  */
5 #include <k5-int.h>
6 
7 krb5_error_code
func_set(krb5_context context,krb5_ccache id,krb5_const_principal principal,const char * key)8 func_set(krb5_context context, krb5_ccache id,
9          krb5_const_principal principal, const char *key)
10 {
11    krb5_data config_data;
12 
13    config_data.data = "yes";
14    config_data.length = strlen(config_data.data);
15    return  krb5_cc_set_config(context, id, principal, key, &config_data);
16 }
17 
18 krb5_error_code
func_get(krb5_context context,krb5_ccache id,krb5_const_principal principal,const char * key)19 func_get(krb5_context context, krb5_ccache id,
20          krb5_const_principal principal, const char *key)
21 {
22    krb5_data config_data;
23    krb5_error_code ret;
24 
25    config_data.data = NULL;
26    ret = krb5_cc_get_config(context, id, principal, key, &config_data);
27    if (ret){
28         return ret;
29    }
30    /* do something */
31    krb5_free_data_contents(context, &config_data);
32    return ret;
33 }
34