}
major_status = gss_display_name(&minor_status, client_name, &output_token, NULL);
- ctx->user = apr_pstrdup(r->pool, output_token.value);
+ ctx->user = apr_pstrndup(r->pool, output_token.value, output_token.length);
+
+ if (conf->name_attributes) {
+ mag_get_name_attributes(r, conf, client_name, ctx);
+ mag_set_req_data(r, conf, ctx);
+ }
- /* TODO: Make it a single call! */
- mag_get_name_attributes(r, conf, client_name, ctx);
- mag_set_req_data(r, conf, ctx);
gss_release_name(&minor_status, &client_name);
if (GSS_ERROR(major_status)) {
return ret;
}
+static int mag_post_config(apr_pool_t *cfgpool, apr_pool_t *log,
+ apr_pool_t *temp, server_rec *s)
+{
+ ap_add_version_component(cfgpool, "Moonshot mod_auth_gssapi");
+ return OK;
+}
+
static int
gss_authenticate_user(request_rec *r)
{
gss_register_hooks(apr_pool_t *p)
{
ap_hook_check_user_id(gss_authenticate_user, NULL, NULL, APR_HOOK_MIDDLE);
+ ap_hook_post_config(mag_post_config, NULL, NULL, APR_HOOK_MIDDLE);
}
module AP_MODULE_DECLARE_DATA auth_gssapi_module = {