diff --git a/feeds/ucentral/uspot/files/usr/share/uspot/cpd.uc b/feeds/ucentral/uspot/files/usr/share/uspot/cpd.uc index 160ef5d73..67f5b333d 100644 --- a/feeds/ucentral/uspot/files/usr/share/uspot/cpd.uc +++ b/feeds/ucentral/uspot/files/usr/share/uspot/cpd.uc @@ -1,4 +1,4 @@ Status: 302 Found -Location: http://{{env.SERVER_ADDR}}/hotspot/?redir={{env.headers.host}} +Location: http://{{env.SERVER_ADDR}}/hotspot/?redir={{env.headers.host}}{{env.REQUEST_URI}} Content-Type: text/html diff --git a/feeds/ucentral/uspot/files/usr/share/uspot/handler-uam.uc b/feeds/ucentral/uspot/files/usr/share/uspot/handler-uam.uc index 2c552fd13..617469bd9 100644 --- a/feeds/ucentral/uspot/files/usr/share/uspot/handler-uam.uc +++ b/feeds/ucentral/uspot/files/usr/share/uspot/handler-uam.uc @@ -13,7 +13,10 @@ function auth_client(ctx) { let payload = portal.radius_init(ctx); payload.logoff_url = sprintf('http://%s:3990/', ctx.env.SERVER_ADDR); - if (ctx.query_string.username && ctx.query_string.response) { + if (ctx.query_string.username && ctx.query_string.password && !portal.config.uam.uam_secret) { + payload.username = ctx.query_string.username; + payload.password = ctx.query_string.password; + } else if (ctx.query_string.username && ctx.query_string.response) { let challenge = uam.md5(portal.config.uam.challenge, ctx.format_mac); payload.username = ctx.query_string.username;