.class public abstract Lorg/apache/http/impl/auth/GGSSchemeBase; .super Lorg/apache/http/impl/auth/AuthSchemeBase; .source "GGSSchemeBase.java" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lorg/apache/http/impl/auth/GGSSchemeBase$State; } .end annotation # instance fields .field private final base64codec:Lorg/apache/commons/codec/binary/Base64; .field private final log:Lorg/apache/commons/logging/Log; .field private state:Lorg/apache/http/impl/auth/GGSSchemeBase$State; .field private final stripPort:Z .field private token:[B .field private final useCanonicalHostname:Z # direct methods .method constructor ()V .registers 2 const/4 v0, 0x1 .line 94 invoke-direct {p0, v0, v0}, Lorg/apache/http/impl/auth/GGSSchemeBase;->(ZZ)V return-void .end method .method constructor (Z)V .registers 3 const/4 v0, 0x1 .line 90 invoke-direct {p0, p1, v0}, Lorg/apache/http/impl/auth/GGSSchemeBase;->(ZZ)V return-void .end method .method constructor (ZZ)V .registers 5 .line 82 invoke-direct {p0}, Lorg/apache/http/impl/auth/AuthSchemeBase;->()V .line 69 invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v0 invoke-static {v0}, Lorg/apache/commons/logging/LogFactory;->getLog(Ljava/lang/Class;)Lorg/apache/commons/logging/Log; move-result-object v0 iput-object v0, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->log:Lorg/apache/commons/logging/Log; .line 83 new-instance v0, Lorg/apache/commons/codec/binary/Base64; const/4 v1, 0x0 invoke-direct {v0, v1}, Lorg/apache/commons/codec/binary/Base64;->(I)V iput-object v0, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->base64codec:Lorg/apache/commons/codec/binary/Base64; .line 84 iput-boolean p1, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->stripPort:Z .line 85 iput-boolean p2, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->useCanonicalHostname:Z .line 86 sget-object p1, Lorg/apache/http/impl/auth/GGSSchemeBase$State;->UNINITIATED:Lorg/apache/http/impl/auth/GGSSchemeBase$State; iput-object p1, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->state:Lorg/apache/http/impl/auth/GGSSchemeBase$State; return-void .end method .method private resolveCanonicalHostname(Ljava/lang/String;)Ljava/lang/String; .registers 4 .annotation system Ldalvik/annotation/Throws; value = { Ljava/net/UnknownHostException; } .end annotation .line 279 invoke-static {p1}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress; move-result-object v0 .line 280 invoke-virtual {v0}, Ljava/net/InetAddress;->getCanonicalHostName()Ljava/lang/String; move-result-object v1 .line 281 invoke-virtual {v0}, Ljava/net/InetAddress;->getHostAddress()Ljava/lang/String; move-result-object v0 invoke-virtual {v0, v1}, Ljava/lang/String;->contentEquals(Ljava/lang/CharSequence;)Z move-result v0 if-eqz v0, :cond_13 return-object p1 :cond_13 return-object v1 .end method # virtual methods .method public authenticate(Lorg/apache/http/auth/Credentials;Lorg/apache/http/HttpRequest;)Lorg/apache/http/Header; .registers 4 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/auth/AuthenticationException; } .end annotation .annotation runtime Ljava/lang/Deprecated; .end annotation const/4 v0, 0x0 .line 172 invoke-virtual {p0, p1, p2, v0}, Lorg/apache/http/impl/auth/GGSSchemeBase;->authenticate(Lorg/apache/http/auth/Credentials;Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/Header; move-result-object p1 return-object p1 .end method .method public authenticate(Lorg/apache/http/auth/Credentials;Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/Header; .registers 6 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/auth/AuthenticationException; } .end annotation const-string v0, "init " .line 180 const-string v1, "HTTP request" invoke-static {p2, v1}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 181 sget-object p2, Lorg/apache/http/impl/auth/GGSSchemeBase$1;->$SwitchMap$org$apache$http$impl$auth$GGSSchemeBase$State:[I iget-object v1, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->state:Lorg/apache/http/impl/auth/GGSSchemeBase$State; invoke-virtual {v1}, Lorg/apache/http/impl/auth/GGSSchemeBase$State;->ordinal()I move-result v1 aget p2, p2, v1 const/4 v1, 0x1 if-eq p2, v1, :cond_17f const/4 v1, 0x2 if-eq p2, v1, :cond_162 const/4 v1, 0x3 if-eq p2, v1, :cond_36 const/4 p1, 0x4 if-ne p2, p1, :cond_1f goto/16 :goto_a7 .line 257 :cond_1f new-instance p1, Ljava/lang/IllegalStateException; new-instance p2, Ljava/lang/StringBuilder; const-string p3, "Illegal state: " invoke-direct {p2, p3}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V iget-object p3, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->state:Lorg/apache/http/impl/auth/GGSSchemeBase$State; invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw p1 .line 188 :cond_36 :try_start_36 const-string p2, "http.route" invoke-interface {p3, p2}, Lorg/apache/http/protocol/HttpContext;->getAttribute(Ljava/lang/String;)Ljava/lang/Object; move-result-object p2 check-cast p2, Lorg/apache/http/conn/routing/HttpRoute; if-eqz p2, :cond_fc .line 193 invoke-virtual {p0}, Lorg/apache/http/impl/auth/GGSSchemeBase;->isProxy()Z move-result p3 if-eqz p3, :cond_51 .line 194 invoke-virtual {p2}, Lorg/apache/http/conn/routing/HttpRoute;->getProxyHost()Lorg/apache/http/HttpHost; move-result-object p3 if-nez p3, :cond_55 .line 196 invoke-virtual {p2}, Lorg/apache/http/conn/routing/HttpRoute;->getTargetHost()Lorg/apache/http/HttpHost; move-result-object p3 goto :goto_55 .line 199 :cond_51 invoke-virtual {p2}, Lorg/apache/http/conn/routing/HttpRoute;->getTargetHost()Lorg/apache/http/HttpHost; move-result-object p3 .line 202 :cond_55 :goto_55 invoke-virtual {p3}, Lorg/apache/http/HttpHost;->getHostName()Ljava/lang/String; move-result-object p2 .line 204 iget-boolean v1, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->useCanonicalHostname:Z :try_end_5b .catch Lorg/ietf/jgss/GSSException; {:try_start_36 .. :try_end_5b} :catch_104 if-eqz v1, :cond_61 .line 210 :try_start_5d invoke-direct {p0, p2}, Lorg/apache/http/impl/auth/GGSSchemeBase;->resolveCanonicalHostname(Ljava/lang/String;)Ljava/lang/String; move-result-object p2 :try_end_61 .catch Ljava/net/UnknownHostException; {:try_start_5d .. :try_end_61} :catch_61 .catch Lorg/ietf/jgss/GSSException; {:try_start_5d .. :try_end_61} :catch_104 .line 214 :catch_61 :cond_61 :try_start_61 iget-boolean v1, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->stripPort:Z if-eqz v1, :cond_66 goto :goto_81 .line 217 :cond_66 new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 const-string v1, ":" invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p3}, Lorg/apache/http/HttpHost;->getPort()I move-result p3 invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 .line 220 :goto_81 iget-object p3, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->log:Lorg/apache/commons/logging/Log; invoke-interface {p3}, Lorg/apache/commons/logging/Log;->isDebugEnabled()Z move-result p3 if-eqz p3, :cond_9b .line 221 iget-object p3, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->log:Lorg/apache/commons/logging/Log; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-interface {p3, v0}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 223 :cond_9b iget-object p3, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->token:[B invoke-virtual {p0, p3, p2, p1}, Lorg/apache/http/impl/auth/GGSSchemeBase;->generateToken([BLjava/lang/String;Lorg/apache/http/auth/Credentials;)[B move-result-object p1 iput-object p1, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->token:[B .line 224 sget-object p1, Lorg/apache/http/impl/auth/GGSSchemeBase$State;->TOKEN_GENERATED:Lorg/apache/http/impl/auth/GGSSchemeBase$State; iput-object p1, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->state:Lorg/apache/http/impl/auth/GGSSchemeBase$State; :try_end_a7 .catch Lorg/ietf/jgss/GSSException; {:try_start_61 .. :try_end_a7} :catch_104 .line 243 :goto_a7 new-instance p1, Ljava/lang/String; iget-object p2, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->base64codec:Lorg/apache/commons/codec/binary/Base64; iget-object p3, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->token:[B invoke-virtual {p2, p3}, Lorg/apache/commons/codec/binary/Base64;->encode([B)[B move-result-object p2 invoke-direct {p1, p2}, Ljava/lang/String;->([B)V .line 244 iget-object p2, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->log:Lorg/apache/commons/logging/Log; invoke-interface {p2}, Lorg/apache/commons/logging/Log;->isDebugEnabled()Z move-result p2 if-eqz p2, :cond_d6 .line 245 iget-object p2, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->log:Lorg/apache/commons/logging/Log; new-instance p3, Ljava/lang/StringBuilder; const-string v0, "Sending response \'" invoke-direct {p3, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 const-string v0, "\' back to the auth server" invoke-virtual {p3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 invoke-virtual {p3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p3 invoke-interface {p2, p3}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 247 :cond_d6 new-instance p2, Lorg/apache/http/util/CharArrayBuffer; const/16 p3, 0x20 invoke-direct {p2, p3}, Lorg/apache/http/util/CharArrayBuffer;->(I)V .line 248 invoke-virtual {p0}, Lorg/apache/http/impl/auth/GGSSchemeBase;->isProxy()Z move-result p3 if-eqz p3, :cond_e9 .line 249 const-string p3, "Proxy-Authorization" invoke-virtual {p2, p3}, Lorg/apache/http/util/CharArrayBuffer;->append(Ljava/lang/String;)V goto :goto_ee .line 251 :cond_e9 const-string p3, "Authorization" invoke-virtual {p2, p3}, Lorg/apache/http/util/CharArrayBuffer;->append(Ljava/lang/String;)V .line 253 :goto_ee const-string p3, ": Negotiate " invoke-virtual {p2, p3}, Lorg/apache/http/util/CharArrayBuffer;->append(Ljava/lang/String;)V .line 254 invoke-virtual {p2, p1}, Lorg/apache/http/util/CharArrayBuffer;->append(Ljava/lang/String;)V .line 255 new-instance p1, Lorg/apache/http/message/BufferedHeader; invoke-direct {p1, p2}, Lorg/apache/http/message/BufferedHeader;->(Lorg/apache/http/util/CharArrayBuffer;)V return-object p1 .line 190 :cond_fc :try_start_fc new-instance p1, Lorg/apache/http/auth/AuthenticationException; const-string p2, "Connection route is not available" invoke-direct {p1, p2}, Lorg/apache/http/auth/AuthenticationException;->(Ljava/lang/String;)V throw p1 :try_end_104 .catch Lorg/ietf/jgss/GSSException; {:try_start_fc .. :try_end_104} :catch_104 :catch_104 move-exception p1 .line 226 sget-object p2, Lorg/apache/http/impl/auth/GGSSchemeBase$State;->FAILED:Lorg/apache/http/impl/auth/GGSSchemeBase$State; iput-object p2, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->state:Lorg/apache/http/impl/auth/GGSSchemeBase$State; .line 227 invoke-virtual {p1}, Lorg/ietf/jgss/GSSException;->getMajor()I move-result p2 const/16 p3, 0x9 if-eq p2, p3, :cond_158 invoke-virtual {p1}, Lorg/ietf/jgss/GSSException;->getMajor()I move-result p2 const/16 p3, 0x8 if-eq p2, p3, :cond_158 .line 231 invoke-virtual {p1}, Lorg/ietf/jgss/GSSException;->getMajor()I move-result p2 const/16 p3, 0xd if-eq p2, p3, :cond_14e .line 234 invoke-virtual {p1}, Lorg/ietf/jgss/GSSException;->getMajor()I move-result p2 const/16 p3, 0xa if-eq p2, p3, :cond_144 invoke-virtual {p1}, Lorg/ietf/jgss/GSSException;->getMajor()I move-result p2 const/16 p3, 0x13 if-eq p2, p3, :cond_144 invoke-virtual {p1}, Lorg/ietf/jgss/GSSException;->getMajor()I move-result p2 const/16 p3, 0x14 if-ne p2, p3, :cond_13a goto :goto_144 .line 240 :cond_13a new-instance p2, Lorg/apache/http/auth/AuthenticationException; invoke-virtual {p1}, Lorg/ietf/jgss/GSSException;->getMessage()Ljava/lang/String; move-result-object p1 invoke-direct {p2, p1}, Lorg/apache/http/auth/AuthenticationException;->(Ljava/lang/String;)V throw p2 .line 237 :cond_144 :goto_144 new-instance p2, Lorg/apache/http/auth/AuthenticationException; invoke-virtual {p1}, Lorg/ietf/jgss/GSSException;->getMessage()Ljava/lang/String; move-result-object p3 invoke-direct {p2, p3, p1}, Lorg/apache/http/auth/AuthenticationException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw p2 .line 232 :cond_14e new-instance p2, Lorg/apache/http/auth/InvalidCredentialsException; invoke-virtual {p1}, Lorg/ietf/jgss/GSSException;->getMessage()Ljava/lang/String; move-result-object p3 invoke-direct {p2, p3, p1}, Lorg/apache/http/auth/InvalidCredentialsException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw p2 .line 229 :cond_158 new-instance p2, Lorg/apache/http/auth/InvalidCredentialsException; invoke-virtual {p1}, Lorg/ietf/jgss/GSSException;->getMessage()Ljava/lang/String; move-result-object p3 invoke-direct {p2, p3, p1}, Lorg/apache/http/auth/InvalidCredentialsException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw p2 .line 185 :cond_162 new-instance p1, Lorg/apache/http/auth/AuthenticationException; new-instance p2, Ljava/lang/StringBuilder; invoke-direct {p2}, Ljava/lang/StringBuilder;->()V invoke-virtual {p0}, Lorg/apache/http/impl/auth/GGSSchemeBase;->getSchemeName()Ljava/lang/String; move-result-object p3 invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 const-string p3, " authentication has failed" invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p1, p2}, Lorg/apache/http/auth/AuthenticationException;->(Ljava/lang/String;)V throw p1 .line 183 :cond_17f new-instance p1, Lorg/apache/http/auth/AuthenticationException; new-instance p2, Ljava/lang/StringBuilder; invoke-direct {p2}, Ljava/lang/StringBuilder;->()V invoke-virtual {p0}, Lorg/apache/http/impl/auth/GGSSchemeBase;->getSchemeName()Ljava/lang/String; move-result-object p3 invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 const-string p3, " authentication has not been initiated" invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p1, p2}, Lorg/apache/http/auth/AuthenticationException;->(Ljava/lang/String;)V throw p1 .end method .method createGSSContext(Lorg/ietf/jgss/GSSManager;Lorg/ietf/jgss/Oid;Lorg/ietf/jgss/GSSName;Lorg/ietf/jgss/GSSCredential;)Lorg/ietf/jgss/GSSContext; .registers 6 .annotation system Ldalvik/annotation/Throws; value = { Lorg/ietf/jgss/GSSException; } .end annotation .line 135 invoke-interface {p3, p2}, Lorg/ietf/jgss/GSSName;->canonicalize(Lorg/ietf/jgss/Oid;)Lorg/ietf/jgss/GSSName; move-result-object p3 const/4 v0, 0x0 invoke-virtual {p1, p3, p2, p4, v0}, Lorg/ietf/jgss/GSSManager;->createContext(Lorg/ietf/jgss/GSSName;Lorg/ietf/jgss/Oid;Lorg/ietf/jgss/GSSCredential;I)Lorg/ietf/jgss/GSSContext; move-result-object p1 const/4 p2, 0x1 .line 137 invoke-interface {p1, p2}, Lorg/ietf/jgss/GSSContext;->requestMutualAuth(Z)V return-object p1 .end method .method protected generateGSSToken([BLorg/ietf/jgss/Oid;Ljava/lang/String;)[B .registers 5 .annotation system Ldalvik/annotation/Throws; value = { Lorg/ietf/jgss/GSSException; } .end annotation const/4 v0, 0x0 .line 103 invoke-virtual {p0, p1, p2, p3, v0}, Lorg/apache/http/impl/auth/GGSSchemeBase;->generateGSSToken([BLorg/ietf/jgss/Oid;Ljava/lang/String;Lorg/apache/http/auth/Credentials;)[B move-result-object p1 return-object p1 .end method .method protected generateGSSToken([BLorg/ietf/jgss/Oid;Ljava/lang/String;Lorg/apache/http/auth/Credentials;)[B .registers 8 .annotation system Ldalvik/annotation/Throws; value = { Lorg/ietf/jgss/GSSException; } .end annotation .line 112 invoke-virtual {p0}, Lorg/apache/http/impl/auth/GGSSchemeBase;->getManager()Lorg/ietf/jgss/GSSManager; move-result-object v0 .line 113 new-instance v1, Ljava/lang/StringBuilder; const-string v2, "HTTP@" invoke-direct {v1, v2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 invoke-virtual {p3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p3 sget-object v1, Lorg/ietf/jgss/GSSName;->NT_HOSTBASED_SERVICE:Lorg/ietf/jgss/Oid; invoke-virtual {v0, p3, v1}, Lorg/ietf/jgss/GSSManager;->createName(Ljava/lang/String;Lorg/ietf/jgss/Oid;)Lorg/ietf/jgss/GSSName; move-result-object p3 .line 116 instance-of v1, p4, Lorg/apache/http/auth/KerberosCredentials; if-eqz v1, :cond_24 .line 117 check-cast p4, Lorg/apache/http/auth/KerberosCredentials; invoke-virtual {p4}, Lorg/apache/http/auth/KerberosCredentials;->getGSSCredential()Lorg/ietf/jgss/GSSCredential; move-result-object p4 goto :goto_25 :cond_24 const/4 p4, 0x0 .line 122 :goto_25 invoke-virtual {p0, v0, p2, p3, p4}, Lorg/apache/http/impl/auth/GGSSchemeBase;->createGSSContext(Lorg/ietf/jgss/GSSManager;Lorg/ietf/jgss/Oid;Lorg/ietf/jgss/GSSName;Lorg/ietf/jgss/GSSCredential;)Lorg/ietf/jgss/GSSContext; move-result-object p2 const/4 p3, 0x0 if-eqz p1, :cond_32 .line 124 array-length p4, p1 invoke-interface {p2, p1, p3, p4}, Lorg/ietf/jgss/GSSContext;->initSecContext([BII)[B move-result-object p1 return-object p1 .line 126 :cond_32 new-array p1, p3, [B invoke-interface {p2, p1, p3, p3}, Lorg/ietf/jgss/GSSContext;->initSecContext([BII)[B move-result-object p1 return-object p1 .end method .method protected generateToken([BLjava/lang/String;)[B .registers 3 .annotation system Ldalvik/annotation/Throws; value = { Lorg/ietf/jgss/GSSException; } .end annotation .annotation runtime Ljava/lang/Deprecated; .end annotation const/4 p1, 0x0 return-object p1 .end method .method protected generateToken([BLjava/lang/String;Lorg/apache/http/auth/Credentials;)[B .registers 4 .annotation system Ldalvik/annotation/Throws; value = { Lorg/ietf/jgss/GSSException; } .end annotation .line 155 invoke-virtual {p0, p1, p2}, Lorg/apache/http/impl/auth/GGSSchemeBase;->generateToken([BLjava/lang/String;)[B move-result-object p1 return-object p1 .end method .method protected getManager()Lorg/ietf/jgss/GSSManager; .registers 2 .line 98 invoke-static {}, Lorg/ietf/jgss/GSSManager;->getInstance()Lorg/ietf/jgss/GSSManager; move-result-object v0 return-object v0 .end method .method public isComplete()Z .registers 3 .line 160 iget-object v0, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->state:Lorg/apache/http/impl/auth/GGSSchemeBase$State; sget-object v1, Lorg/apache/http/impl/auth/GGSSchemeBase$State;->TOKEN_GENERATED:Lorg/apache/http/impl/auth/GGSSchemeBase$State; if-eq v0, v1, :cond_f iget-object v0, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->state:Lorg/apache/http/impl/auth/GGSSchemeBase$State; sget-object v1, Lorg/apache/http/impl/auth/GGSSchemeBase$State;->FAILED:Lorg/apache/http/impl/auth/GGSSchemeBase$State; if-ne v0, v1, :cond_d goto :goto_f :cond_d const/4 v0, 0x0 goto :goto_10 :cond_f :goto_f const/4 v0, 0x1 :goto_10 return v0 .end method .method protected parseChallenge(Lorg/apache/http/util/CharArrayBuffer;II)V .registers 5 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/auth/MalformedChallengeException; } .end annotation .line 265 invoke-virtual {p1, p2, p3}, Lorg/apache/http/util/CharArrayBuffer;->substringTrimmed(II)Ljava/lang/String; move-result-object p1 .line 266 iget-object p2, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->log:Lorg/apache/commons/logging/Log; invoke-interface {p2}, Lorg/apache/commons/logging/Log;->isDebugEnabled()Z move-result p2 if-eqz p2, :cond_26 .line 267 iget-object p2, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->log:Lorg/apache/commons/logging/Log; new-instance p3, Ljava/lang/StringBuilder; const-string v0, "Received challenge \'" invoke-direct {p3, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 const-string v0, "\' from the auth server" invoke-virtual {p3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 invoke-virtual {p3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p3 invoke-interface {p2, p3}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 269 :cond_26 iget-object p2, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->state:Lorg/apache/http/impl/auth/GGSSchemeBase$State; sget-object p3, Lorg/apache/http/impl/auth/GGSSchemeBase$State;->UNINITIATED:Lorg/apache/http/impl/auth/GGSSchemeBase$State; if-ne p2, p3, :cond_3b .line 270 invoke-virtual {p1}, Ljava/lang/String;->getBytes()[B move-result-object p1 invoke-static {p1}, Lorg/apache/commons/codec/binary/Base64;->decodeBase64([B)[B move-result-object p1 iput-object p1, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->token:[B .line 271 sget-object p1, Lorg/apache/http/impl/auth/GGSSchemeBase$State;->CHALLENGE_RECEIVED:Lorg/apache/http/impl/auth/GGSSchemeBase$State; iput-object p1, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->state:Lorg/apache/http/impl/auth/GGSSchemeBase$State; goto :goto_46 .line 273 :cond_3b iget-object p1, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->log:Lorg/apache/commons/logging/Log; const-string p2, "Authentication already attempted" invoke-interface {p1, p2}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 274 sget-object p1, Lorg/apache/http/impl/auth/GGSSchemeBase$State;->FAILED:Lorg/apache/http/impl/auth/GGSSchemeBase$State; iput-object p1, p0, Lorg/apache/http/impl/auth/GGSSchemeBase;->state:Lorg/apache/http/impl/auth/GGSSchemeBase$State; :goto_46 return-void .end method