public class org.apache.wiki.auth.login.CookieAssertionLoginModule extends org.apache.wiki.auth.login.AbstractLoginModule
{
public static final java.lang.String PREFS_COOKIE_NAME;
private static final org.apache.logging.log4j.Logger LOG;
public void <init>()
{
org.apache.wiki.auth.login.CookieAssertionLoginModule v;
v := @this: org.apache.wiki.auth.login.CookieAssertionLoginModule;
specialinvoke v.<org.apache.wiki.auth.login.AbstractLoginModule: void <init>()>();
return;
}
public boolean login() throws javax.security.auth.login.LoginException
{
javax.security.auth.login.LoginException v;
javax.security.auth.callback.UnsupportedCallbackException v;
javax.security.auth.callback.Callback[] v;
javax.servlet.http.HttpServletRequest v;
javax.security.auth.callback.CallbackHandler v;
javax.security.auth.login.FailedLoginException v;
java.lang.String v, v, v, v, v;
javax.servlet.http.HttpSession v;
org.apache.wiki.auth.WikiPrincipal v;
org.apache.wiki.auth.login.CookieAssertionLoginModule v;
java.util.Collection v;
java.io.IOException v;
org.apache.wiki.auth.login.HttpRequestCallback v;
org.apache.logging.log4j.Logger v, v, v, v;
v := @this: org.apache.wiki.auth.login.CookieAssertionLoginModule;
v = new org.apache.wiki.auth.login.HttpRequestCallback;
specialinvoke v.<org.apache.wiki.auth.login.HttpRequestCallback: void <init>()>();
v = newarray (javax.security.auth.callback.Callback)[1];
v[0] = v;
label:
v = v.<org.apache.wiki.auth.login.CookieAssertionLoginModule: javax.security.auth.callback.CallbackHandler m_handler>;
interfaceinvoke v.<javax.security.auth.callback.CallbackHandler: void handle(javax.security.auth.callback.Callback[])>(v);
v = virtualinvoke v.<org.apache.wiki.auth.login.HttpRequestCallback: javax.servlet.http.HttpServletRequest getRequest()>();
if v != null goto label;
v = null;
goto label;
label:
v = interfaceinvoke v.<javax.servlet.http.HttpServletRequest: javax.servlet.http.HttpSession getSession(boolean)>(0);
label:
if v != null goto label;
v = "(null)";
goto label;
label:
v = interfaceinvoke v.<javax.servlet.http.HttpSession: java.lang.String getId()>();
label:
v = v;
if v == null goto label;
v = staticinvoke <org.apache.wiki.auth.login.CookieAssertionLoginModule: java.lang.String getUserCookie(javax.servlet.http.HttpServletRequest)>(v);
goto label;
label:
v = null;
label:
if v != null goto label;
v = <org.apache.wiki.auth.login.CookieAssertionLoginModule: org.apache.logging.log4j.Logger LOG>;
interfaceinvoke v.<org.apache.logging.log4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("No cookie {} present in session ID=:  {}", "JSPWikiAssertedName", v);
v = new javax.security.auth.login.FailedLoginException;
specialinvoke v.<javax.security.auth.login.FailedLoginException: void <init>(java.lang.String)>("The user cookie was not found.");
throw v;
label:
v = <org.apache.wiki.auth.login.CookieAssertionLoginModule: org.apache.logging.log4j.Logger LOG>;
interfaceinvoke v.<org.apache.logging.log4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("Logged in session ID={}; asserted={}", v, v);
v = v.<org.apache.wiki.auth.login.CookieAssertionLoginModule: java.util.Collection m_principals>;
v = new org.apache.wiki.auth.WikiPrincipal;
specialinvoke v.<org.apache.wiki.auth.WikiPrincipal: void <init>(java.lang.String,java.lang.String)>(v, "fullName");
interfaceinvoke v.<java.util.Collection: boolean add(java.lang.Object)>(v);
label:
return 1;
label:
v := @caughtexception;
v = <org.apache.wiki.auth.login.CookieAssertionLoginModule: org.apache.logging.log4j.Logger LOG>;
v = virtualinvoke v.<java.io.IOException: java.lang.String getMessage()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("IOException: \u0001");
interfaceinvoke v.<org.apache.logging.log4j.Logger: void error(java.lang.String)>(v);
return 0;
label:
v := @caughtexception;
v = <org.apache.wiki.auth.login.CookieAssertionLoginModule: org.apache.logging.log4j.Logger LOG>;
interfaceinvoke v.<org.apache.logging.log4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Unable to handle callback, disallowing login.", v);
v = new javax.security.auth.login.LoginException;
specialinvoke v.<javax.security.auth.login.LoginException: void <init>(java.lang.String)>("Unable to handle callback, disallowing login.");
throw v;
catch java.io.IOException from label to label with label;
catch javax.security.auth.callback.UnsupportedCallbackException from label to label with label;
}
public static java.lang.String getUserCookie(javax.servlet.http.HttpServletRequest)
{
javax.servlet.http.HttpServletRequest v;
int v;
java.lang.String v, v, v;
boolean v;
v := @parameter: javax.servlet.http.HttpServletRequest;
v = staticinvoke <org.apache.wiki.util.HttpUtil: java.lang.String retrieveCookieValue(javax.servlet.http.HttpServletRequest,java.lang.String)>(v, "JSPWikiAssertedName");
v = staticinvoke <org.apache.wiki.util.TextUtil: java.lang.String urlDecodeUTF8(java.lang.String)>(v);
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean contains(java.lang.CharSequence)>("-->");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: int indexOf(java.lang.String)>("-->");
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
goto label;
label:
v = v;
label:
return v;
}
public static void setUserCookie(javax.servlet.http.HttpServletResponse, java.lang.String)
{
javax.servlet.http.HttpServletResponse v;
java.lang.String v, v;
javax.servlet.http.Cookie v;
v := @parameter: javax.servlet.http.HttpServletResponse;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.wiki.util.TextUtil: java.lang.String urlEncodeUTF8(java.lang.String)>(v);
v = new javax.servlet.http.Cookie;
specialinvoke v.<javax.servlet.http.Cookie: void <init>(java.lang.String,java.lang.String)>("JSPWikiAssertedName", v);
virtualinvoke v.<javax.servlet.http.Cookie: void setMaxAge(int)>(86486400);
interfaceinvoke v.<javax.servlet.http.HttpServletResponse: void addCookie(javax.servlet.http.Cookie)>(v);
return;
}
public static void clearUserCookie(javax.servlet.http.HttpServletResponse)
{
javax.servlet.http.HttpServletResponse v;
v := @parameter: javax.servlet.http.HttpServletResponse;
staticinvoke <org.apache.wiki.util.HttpUtil: void clearCookie(javax.servlet.http.HttpServletResponse,java.lang.String)>(v, "JSPWikiAssertedName");
return;
}
static void <clinit>()
{
org.apache.logging.log4j.Logger v;
v = staticinvoke <org.apache.logging.log4j.LogManager: org.apache.logging.log4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/wiki/auth/login/CookieAssertionLoginModule;");
<org.apache.wiki.auth.login.CookieAssertionLoginModule: org.apache.logging.log4j.Logger LOG> = v;
return;
}
}