public class org.apache.hive.service.auth.PlainSaslServer extends java.lang.Object implements javax.security.sasl.SaslServer
{
public static final java.lang.String PLAIN_METHOD;
private java.lang.String user;
private final javax.security.auth.callback.CallbackHandler handler;
void <init>(javax.security.auth.callback.CallbackHandler, java.lang.String) throws javax.security.sasl.SaslException
{
java.lang.String v;
javax.security.auth.callback.CallbackHandler v;
org.apache.hive.service.auth.PlainSaslServer v;
v := @this: org.apache.hive.service.auth.PlainSaslServer;
v := @parameter: javax.security.auth.callback.CallbackHandler;
v := @parameter: java.lang.String;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.hive.service.auth.PlainSaslServer: javax.security.auth.callback.CallbackHandler handler> = v;
staticinvoke <org.apache.hive.service.auth.AuthenticationProviderFactory$AuthMethods: org.apache.hive.service.auth.AuthenticationProviderFactory$AuthMethods getValidAuthMethod(java.lang.String)>(v);
return;
}
public java.lang.String getMechanismName()
{
org.apache.hive.service.auth.PlainSaslServer v;
v := @this: org.apache.hive.service.auth.PlainSaslServer;
return "PLAIN";
}
public byte[] evaluateResponse(byte[]) throws javax.security.sasl.SaslException
{
byte[] v;
java.lang.IllegalStateException v;
javax.security.auth.callback.UnsupportedCallbackException v;
javax.security.sasl.SaslException v, v, v, v, v, v, v;
javax.security.auth.callback.CallbackHandler v;
byte v;
boolean v, v, v, v;
javax.security.auth.callback.PasswordCallback v;
javax.security.sasl.AuthorizeCallback v;
java.lang.StringBuilder v, v, v;
javax.security.auth.callback.Callback[] v;
int v, v, v, v;
java.lang.String v, v, v, v, v, v;
org.apache.hive.service.auth.PlainSaslServer v;
java.io.IOException v;
javax.security.auth.callback.NameCallback v;
char[] v;
java.lang.Object v, v, v;
java.util.ArrayDeque v;
v := @this: org.apache.hive.service.auth.PlainSaslServer;
v := @parameter: byte[];
label:
v = new java.util.ArrayDeque;
specialinvoke v.<java.util.ArrayDeque: void <init>()>();
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = v;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
if v != 0 goto label;
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
interfaceinvoke v.<java.util.Deque: void addLast(java.lang.Object)>(v);
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = v;
goto label;
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(v);
label:
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
interfaceinvoke v.<java.util.Deque: void addLast(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.Deque: int size()>();
if v < 2 goto label;
v = interfaceinvoke v.<java.util.Deque: int size()>();
if v <= 3 goto label;
label:
v = new javax.security.sasl.SaslException;
specialinvoke v.<javax.security.sasl.SaslException: void <init>(java.lang.String)>("Invalid message format");
throw v;
label:
v = interfaceinvoke v.<java.util.Deque: java.lang.Object removeLast()>();
v = interfaceinvoke v.<java.util.Deque: java.lang.Object removeLast()>();
v.<org.apache.hive.service.auth.PlainSaslServer: java.lang.String user> = v;
v = interfaceinvoke v.<java.util.Deque: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<java.util.Deque: java.lang.Object removeLast()>();
label:
v = v.<org.apache.hive.service.auth.PlainSaslServer: java.lang.String user>;
if v == null goto label;
v = v.<org.apache.hive.service.auth.PlainSaslServer: java.lang.String user>;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
label:
v = new javax.security.sasl.SaslException;
specialinvoke v.<javax.security.sasl.SaslException: void <init>(java.lang.String)>("No user name provided");
throw v;
label:
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
label:
v = new javax.security.sasl.SaslException;
specialinvoke v.<javax.security.sasl.SaslException: void <init>(java.lang.String)>("No password name provided");
throw v;
label:
v = new javax.security.auth.callback.NameCallback;
specialinvoke v.<javax.security.auth.callback.NameCallback: void <init>(java.lang.String)>("User");
v = v.<org.apache.hive.service.auth.PlainSaslServer: java.lang.String user>;
virtualinvoke v.<javax.security.auth.callback.NameCallback: void setName(java.lang.String)>(v);
v = new javax.security.auth.callback.PasswordCallback;
specialinvoke v.<javax.security.auth.callback.PasswordCallback: void <init>(java.lang.String,boolean)>("Password", 0);
v = virtualinvoke v.<java.lang.String: char[] toCharArray()>();
virtualinvoke v.<javax.security.auth.callback.PasswordCallback: void setPassword(char[])>(v);
v = new javax.security.sasl.AuthorizeCallback;
v = v.<org.apache.hive.service.auth.PlainSaslServer: java.lang.String user>;
specialinvoke v.<javax.security.sasl.AuthorizeCallback: void <init>(java.lang.String,java.lang.String)>(v, v);
v = newarray (javax.security.auth.callback.Callback)[3];
v[0] = v;
v[1] = v;
v[2] = v;
v = v.<org.apache.hive.service.auth.PlainSaslServer: javax.security.auth.callback.CallbackHandler handler>;
interfaceinvoke v.<javax.security.auth.callback.CallbackHandler: void handle(javax.security.auth.callback.Callback[])>(v);
v = virtualinvoke v.<javax.security.sasl.AuthorizeCallback: boolean isAuthorized()>();
if v != 0 goto label;
v = new javax.security.sasl.SaslException;
specialinvoke v.<javax.security.sasl.SaslException: void <init>(java.lang.String)>("Authentication failed");
throw v;
label:
v := @caughtexception;
v = new javax.security.sasl.SaslException;
specialinvoke v.<javax.security.sasl.SaslException: void <init>(java.lang.String,java.lang.Throwable)>("Invalid message format", v);
throw v;
label:
v := @caughtexception;
v = new javax.security.sasl.SaslException;
specialinvoke v.<javax.security.sasl.SaslException: void <init>(java.lang.String,java.lang.Throwable)>("Error validating the login", v);
throw v;
label:
v := @caughtexception;
v = new javax.security.sasl.SaslException;
specialinvoke v.<javax.security.sasl.SaslException: void <init>(java.lang.String,java.lang.Throwable)>("Error validating the login", v);
throw v;
label:
return null;
catch java.lang.IllegalStateException from label to label with label;
catch java.io.IOException from label to label with label;
catch javax.security.auth.callback.UnsupportedCallbackException from label to label with label;
}
public boolean isComplete()
{
java.lang.String v;
org.apache.hive.service.auth.PlainSaslServer v;
boolean v;
v := @this: org.apache.hive.service.auth.PlainSaslServer;
v = v.<org.apache.hive.service.auth.PlainSaslServer: java.lang.String user>;
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public java.lang.String getAuthorizationID()
{
java.lang.String v;
org.apache.hive.service.auth.PlainSaslServer v;
v := @this: org.apache.hive.service.auth.PlainSaslServer;
v = v.<org.apache.hive.service.auth.PlainSaslServer: java.lang.String user>;
return v;
}
public byte[] unwrap(byte[], int, int)
{
byte[] v;
java.lang.UnsupportedOperationException v;
int v, v;
org.apache.hive.service.auth.PlainSaslServer v;
v := @this: org.apache.hive.service.auth.PlainSaslServer;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
public byte[] wrap(byte[], int, int)
{
byte[] v;
java.lang.UnsupportedOperationException v;
int v, v;
org.apache.hive.service.auth.PlainSaslServer v;
v := @this: org.apache.hive.service.auth.PlainSaslServer;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
public java.lang.Object getNegotiatedProperty(java.lang.String)
{
java.lang.String v;
org.apache.hive.service.auth.PlainSaslServer v;
v := @this: org.apache.hive.service.auth.PlainSaslServer;
v := @parameter: java.lang.String;
return null;
}
public void dispose()
{
org.apache.hive.service.auth.PlainSaslServer v;
v := @this: org.apache.hive.service.auth.PlainSaslServer;
return;
}
}