return ret;
}
+int
+have_rcache_type(const char *type)
+{
+ krb5_error_code ret;
+ krb5_rcache id;
+ int found;
+
+ memset(&id, 0, sizeof(id));
+
+ ret = krb5_init_context(&context);
+ if (ret)
+ return 0;
+
+ ret = krb5_rc_resolve_type(context, id, type);
+ found = (ret == 0);
+
+ krb5_free_context(context);
+
+ return found;
+}
/***************************************************************************
Module Setup/Configuration
#ifndef HEIMDAL
/* Suppress the MIT replay cache. Requires MIT Kerberos 1.4.0 or later.
1.3.x are covered by the hack overiding the replay calls */
- if (getenv("KRB5RCACHETYPE") == NULL)
+ if (getenv("KRB5RCACHETYPE") == NULL && have_rcache_type("none"))
putenv(strdup("KRB5RCACHETYPE=none"));
#endif
}
#ifndef HEIMDAL
/* Suppress the MIT replay cache. Requires MIT Kerberos 1.4.0 or later.
1.3.x are covered by the hack overiding the replay calls */
- if (getenv("KRB5RCACHETYPE") == NULL)
+ if (getenv("KRB5RCACHETYPE") == NULL && have_rcache_type("none"))
putenv(strdup("KRB5RCACHETYPE=none"));
#endif