krb5_error_code KRB5_CALLCONV sss_krb5_get_init_creds_opt_set_fast_ccache_name( krb5_context context, krb5_get_init_creds_opt *opt, const char *fast_ccache_name) { #ifdef HAVE_KRB5_GET_INIT_CREDS_OPT_SET_FAST_CCACHE_NAME return krb5_get_init_creds_opt_set_fast_ccache_name(context, opt, fast_ccache_name); #else DEBUG(5, ("krb5_get_init_creds_opt_set_fast_ccache_name not available.\n")); return 0; #endif }
krb5_error_code KRB5_CALLCONV krb5_get_init_creds_opt_set_fast_ccache(krb5_context context, krb5_get_init_creds_opt *opt, krb5_ccache ccache) { krb5_error_code ret; char *name; ret = krb5_cc_get_full_name(context, ccache, &name); if (ret) return ret; ret = krb5_get_init_creds_opt_set_fast_ccache_name(context, opt, name); free(name); return ret; }
krb5_error_code KRB5_CALLCONV krb5_get_init_creds_opt_set_fast_ccache(krb5_context context, krb5_get_init_creds_opt *opt, krb5_ccache ccache) { krb5_error_code retval = 0; struct k5buf buf; char *cc_name; krb5int_buf_init_dynamic(&buf); krb5int_buf_add(&buf, krb5_cc_get_type(context, ccache)); krb5int_buf_add(&buf, ":"); krb5int_buf_add(&buf, krb5_cc_get_name(context, ccache)); cc_name = krb5int_buf_data(&buf); if (cc_name) retval = krb5_get_init_creds_opt_set_fast_ccache_name(context, opt, cc_name); else retval = ENOMEM; krb5int_free_buf(&buf); return retval; }