Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 231396 | Differences between
and this patch

Collapse All | Expand All

(-)utils/gssd/krb5_util.c (-1 / +33 lines)
Lines 927-935 Link Here
927
{
927
{
928
	krb5_error_code ret;
928
	krb5_error_code ret;
929
	krb5_creds creds;
929
	krb5_creds creds;
930
	krb5_cc_cursor cur;
931
	int found = 0;
930
	int found = 0;
932
931
932
#ifdef HAVE_HEIMDAL
933
	krb5_creds pattern;
934
	krb5_realm *client_realm;
935
936
	krb5_cc_clear_mcred(&pattern);
937
938
	client_realm = krb5_princ_realm (context, principal);
939
940
	ret = krb5_make_principal (context, &pattern.server,
941
				   *client_realm, KRB5_TGS_NAME, *client_realm,
942
				   NULL);
943
	if (ret)
944
	  krb5_err (context, 1, ret, "krb5_make_principal");
945
	pattern.client = principal;
946
947
	ret = krb5_cc_retrieve_cred (context, ccache, 0, &pattern, &creds);
948
	krb5_free_principal (context, pattern.server);
949
	if (ret) {
950
	  if (ret == KRB5_CC_END)
951
            return 1;
952
	  krb5_err (context, 1, ret, "krb5_cc_retrieve_cred");
953
	}
954
955
	found = creds.times.endtime > time(NULL);
956
957
	krb5_free_cred_contents (context, &creds);
958
#else
959
	krb5_cc_cursor cur;
960
933
	ret = krb5_cc_start_seq_get(context, ccache, &cur);
961
	ret = krb5_cc_start_seq_get(context, ccache, &cur);
934
	if (ret) 
962
	if (ret) 
935
		return 0;
963
		return 0;
Lines 949-954 Link Here
949
		krb5_free_cred_contents(context, &creds);
977
		krb5_free_cred_contents(context, &creds);
950
	}
978
	}
951
	krb5_cc_end_seq_get(context, ccache, &cur);
979
	krb5_cc_end_seq_get(context, ccache, &cur);
980
#endif
952
981
953
	return found;
982
	return found;
954
}
983
}
Lines 995-1000 Link Here
995
	}
1024
	}
996
	krb5_free_principal(context, principal);
1025
	krb5_free_principal(context, principal);
997
err_princ:
1026
err_princ:
1027
#ifdef HAVE_HEIMDAL
1028
#define KRB5_TC_OPENCLOSE              0x00000001
1029
#endif
998
	krb5_cc_set_flags(context, ccache,  KRB5_TC_OPENCLOSE);
1030
	krb5_cc_set_flags(context, ccache,  KRB5_TC_OPENCLOSE);
999
	krb5_cc_close(context, ccache);
1031
	krb5_cc_close(context, ccache);
1000
err_cache:
1032
err_cache:

Return to bug 231396