- (djm) Bug #698: Specify FILE: for KRB5CCNAME; patch from
   stadal@suse.cz and simon@sxw.org.uk
diff --git a/gss-serv-krb5.c b/gss-serv-krb5.c
index e358bcb..7373beb 100644
--- a/gss-serv-krb5.c
+++ b/gss-serv-krb5.c
@@ -108,6 +108,7 @@
 	krb5_error_code problem;
 	krb5_principal princ;
 	OM_uint32 maj_status, min_status;
+	int len;
 
 	if (client->creds == NULL) {
 		debug("No credentials stored");
@@ -178,11 +179,13 @@
 
 	client->store.filename = xstrdup(krb5_cc_get_name(krb_context, ccache));
 	client->store.envvar = "KRB5CCNAME";
-	client->store.envval = xstrdup(client->store.filename);
+	len = strlen(client->store.filename) + 6;
+	client->store.envval = xmalloc(len);
+	snprintf(client->store.envval, len, "FILE:%s", client->store.filename);
 
 #ifdef USE_PAM
 	if (options.use_pam)
-		do_pam_putenv(client->store.envvar,client->store.envval);
+		do_pam_putenv(client->store.envvar, client->store.envval);
 #endif
 
 	krb5_cc_close(krb_context, ccache);