diff --git a/src/ngx_http_voms_module.cpp b/src/ngx_http_voms_module.cpp index c73cbb9e174d74f7a15121a01d0fe788db8bbe54..2cd9b1db2e852cf5c9a5e86e3eadfb19d1811461 100644 --- a/src/ngx_http_voms_module.cpp +++ b/src/ngx_http_voms_module.cpp @@ -427,14 +427,14 @@ static ngx_int_t generic_getter(ngx_http_request_t* r, auto& ac = get_voms_ac(r); - if (ac.has_value()) { + if (!ac) { ngx_log_error(NGX_LOG_DEBUG, r->connection->log, 0, "get_voms_ac() failed"); return NGX_OK; } using getter_p = std::string (*)(VomsAc const& voms); auto getter = reinterpret_cast<getter_p>(data); - std::string const value = getter(ac.value()); + std::string const value = getter(*ac); auto buffer = static_cast<u_char*>(ngx_pnalloc(r->pool, value.size())); if (!buffer) {