291 lines
6.6 KiB
Smali
291 lines
6.6 KiB
Smali
.class public final Lokhttp3/JavaNetAuthenticator;
|
|
.super Ljava/lang/Object;
|
|
.source "JavaNetAuthenticator.java"
|
|
|
|
# interfaces
|
|
.implements Lokhttp3/Authenticator;
|
|
|
|
|
|
# direct methods
|
|
.method public constructor <init>()V
|
|
.locals 0
|
|
|
|
.line 31
|
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private a(Ljava/net/Proxy;Lokhttp3/HttpUrl;)Ljava/net/InetAddress;
|
|
.locals 2
|
|
.annotation system Ldalvik/annotation/Throws;
|
|
value = {
|
|
Ljava/io/IOException;
|
|
}
|
|
.end annotation
|
|
|
|
if-eqz p1, :cond_0
|
|
|
|
.line 68
|
|
invoke-virtual {p1}, Ljava/net/Proxy;->type()Ljava/net/Proxy$Type;
|
|
|
|
move-result-object v0
|
|
|
|
sget-object v1, Ljava/net/Proxy$Type;->DIRECT:Ljava/net/Proxy$Type;
|
|
|
|
if-eq v0, v1, :cond_0
|
|
|
|
.line 69
|
|
invoke-virtual {p1}, Ljava/net/Proxy;->address()Ljava/net/SocketAddress;
|
|
|
|
move-result-object p1
|
|
|
|
check-cast p1, Ljava/net/InetSocketAddress;
|
|
|
|
invoke-virtual {p1}, Ljava/net/InetSocketAddress;->getAddress()Ljava/net/InetAddress;
|
|
|
|
move-result-object p1
|
|
|
|
goto :goto_0
|
|
|
|
.line 70
|
|
:cond_0
|
|
invoke-virtual {p2}, Lokhttp3/HttpUrl;->g()Ljava/lang/String;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-static {p1}, Ljava/net/InetAddress;->getByName(Ljava/lang/String;)Ljava/net/InetAddress;
|
|
|
|
move-result-object p1
|
|
|
|
:goto_0
|
|
return-object p1
|
|
.end method
|
|
|
|
|
|
# virtual methods
|
|
.method public a(Lokhttp3/Route;Lokhttp3/Response;)Lokhttp3/Request;
|
|
.locals 18
|
|
.annotation system Ldalvik/annotation/Throws;
|
|
value = {
|
|
Ljava/io/IOException;
|
|
}
|
|
.end annotation
|
|
|
|
move-object/from16 v0, p0
|
|
|
|
.line 33
|
|
invoke-virtual/range {p2 .. p2}, Lokhttp3/Response;->l()Ljava/util/List;
|
|
|
|
move-result-object v1
|
|
|
|
.line 34
|
|
invoke-virtual/range {p2 .. p2}, Lokhttp3/Response;->a()Lokhttp3/Request;
|
|
|
|
move-result-object v2
|
|
|
|
.line 35
|
|
invoke-virtual {v2}, Lokhttp3/Request;->a()Lokhttp3/HttpUrl;
|
|
|
|
move-result-object v3
|
|
|
|
.line 36
|
|
invoke-virtual/range {p2 .. p2}, Lokhttp3/Response;->c()I
|
|
|
|
move-result v4
|
|
|
|
const/4 v5, 0x0
|
|
|
|
const/16 v6, 0x197
|
|
|
|
if-ne v4, v6, :cond_0
|
|
|
|
const/4 v4, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 v4, 0x0
|
|
|
|
.line 37
|
|
:goto_0
|
|
invoke-virtual/range {p1 .. p1}, Lokhttp3/Route;->b()Ljava/net/Proxy;
|
|
|
|
move-result-object v6
|
|
|
|
.line 39
|
|
invoke-interface {v1}, Ljava/util/List;->size()I
|
|
|
|
move-result v7
|
|
|
|
:goto_1
|
|
if-ge v5, v7, :cond_5
|
|
|
|
.line 40
|
|
invoke-interface {v1, v5}, Ljava/util/List;->get(I)Ljava/lang/Object;
|
|
|
|
move-result-object v8
|
|
|
|
check-cast v8, Lokhttp3/Challenge;
|
|
|
|
const-string v9, "Basic"
|
|
|
|
.line 41
|
|
invoke-virtual {v8}, Lokhttp3/Challenge;->a()Ljava/lang/String;
|
|
|
|
move-result-object v10
|
|
|
|
invoke-virtual {v9, v10}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
|
|
|
|
move-result v9
|
|
|
|
if-nez v9, :cond_1
|
|
|
|
goto :goto_4
|
|
|
|
:cond_1
|
|
if-eqz v4, :cond_2
|
|
|
|
.line 45
|
|
invoke-virtual {v6}, Ljava/net/Proxy;->address()Ljava/net/SocketAddress;
|
|
|
|
move-result-object v9
|
|
|
|
check-cast v9, Ljava/net/InetSocketAddress;
|
|
|
|
.line 47
|
|
invoke-virtual {v9}, Ljava/net/InetSocketAddress;->getHostName()Ljava/lang/String;
|
|
|
|
move-result-object v10
|
|
|
|
invoke-direct {v0, v6, v3}, Lokhttp3/JavaNetAuthenticator;->a(Ljava/net/Proxy;Lokhttp3/HttpUrl;)Ljava/net/InetAddress;
|
|
|
|
move-result-object v11
|
|
|
|
invoke-virtual {v9}, Ljava/net/InetSocketAddress;->getPort()I
|
|
|
|
move-result v12
|
|
|
|
.line 48
|
|
invoke-virtual {v3}, Lokhttp3/HttpUrl;->c()Ljava/lang/String;
|
|
|
|
move-result-object v13
|
|
|
|
invoke-virtual {v8}, Lokhttp3/Challenge;->b()Ljava/lang/String;
|
|
|
|
move-result-object v14
|
|
|
|
invoke-virtual {v8}, Lokhttp3/Challenge;->a()Ljava/lang/String;
|
|
|
|
move-result-object v15
|
|
|
|
invoke-virtual {v3}, Lokhttp3/HttpUrl;->a()Ljava/net/URL;
|
|
|
|
move-result-object v16
|
|
|
|
sget-object v17, Ljava/net/Authenticator$RequestorType;->PROXY:Ljava/net/Authenticator$RequestorType;
|
|
|
|
.line 46
|
|
invoke-static/range {v10 .. v17}, Ljava/net/Authenticator;->requestPasswordAuthentication(Ljava/lang/String;Ljava/net/InetAddress;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/net/URL;Ljava/net/Authenticator$RequestorType;)Ljava/net/PasswordAuthentication;
|
|
|
|
move-result-object v8
|
|
|
|
goto :goto_2
|
|
|
|
.line 52
|
|
:cond_2
|
|
invoke-virtual {v3}, Lokhttp3/HttpUrl;->g()Ljava/lang/String;
|
|
|
|
move-result-object v9
|
|
|
|
invoke-direct {v0, v6, v3}, Lokhttp3/JavaNetAuthenticator;->a(Ljava/net/Proxy;Lokhttp3/HttpUrl;)Ljava/net/InetAddress;
|
|
|
|
move-result-object v10
|
|
|
|
invoke-virtual {v3}, Lokhttp3/HttpUrl;->h()I
|
|
|
|
move-result v11
|
|
|
|
invoke-virtual {v3}, Lokhttp3/HttpUrl;->c()Ljava/lang/String;
|
|
|
|
move-result-object v12
|
|
|
|
.line 53
|
|
invoke-virtual {v8}, Lokhttp3/Challenge;->b()Ljava/lang/String;
|
|
|
|
move-result-object v13
|
|
|
|
invoke-virtual {v8}, Lokhttp3/Challenge;->a()Ljava/lang/String;
|
|
|
|
move-result-object v14
|
|
|
|
invoke-virtual {v3}, Lokhttp3/HttpUrl;->a()Ljava/net/URL;
|
|
|
|
move-result-object v15
|
|
|
|
sget-object v16, Ljava/net/Authenticator$RequestorType;->SERVER:Ljava/net/Authenticator$RequestorType;
|
|
|
|
.line 51
|
|
invoke-static/range {v9 .. v16}, Ljava/net/Authenticator;->requestPasswordAuthentication(Ljava/lang/String;Ljava/net/InetAddress;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/net/URL;Ljava/net/Authenticator$RequestorType;)Ljava/net/PasswordAuthentication;
|
|
|
|
move-result-object v8
|
|
|
|
:goto_2
|
|
if-eqz v8, :cond_4
|
|
|
|
.line 57
|
|
invoke-virtual {v8}, Ljava/net/PasswordAuthentication;->getUserName()Ljava/lang/String;
|
|
|
|
move-result-object v1
|
|
|
|
new-instance v3, Ljava/lang/String;
|
|
|
|
invoke-virtual {v8}, Ljava/net/PasswordAuthentication;->getPassword()[C
|
|
|
|
move-result-object v5
|
|
|
|
invoke-direct {v3, v5}, Ljava/lang/String;-><init>([C)V
|
|
|
|
invoke-static {v1, v3}, Lokhttp3/Credentials;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
|
|
|
|
move-result-object v1
|
|
|
|
.line 58
|
|
invoke-virtual {v2}, Lokhttp3/Request;->e()Lokhttp3/Request$Builder;
|
|
|
|
move-result-object v2
|
|
|
|
if-eqz v4, :cond_3
|
|
|
|
const-string v3, "Proxy-Authorization"
|
|
|
|
goto :goto_3
|
|
|
|
:cond_3
|
|
const-string v3, "Authorization"
|
|
|
|
.line 59
|
|
:goto_3
|
|
invoke-virtual {v2, v3, v1}, Lokhttp3/Request$Builder;->a(Ljava/lang/String;Ljava/lang/String;)Lokhttp3/Request$Builder;
|
|
|
|
move-result-object v1
|
|
|
|
.line 60
|
|
invoke-virtual {v1}, Lokhttp3/Request$Builder;->b()Lokhttp3/Request;
|
|
|
|
move-result-object v1
|
|
|
|
return-object v1
|
|
|
|
:cond_4
|
|
:goto_4
|
|
add-int/lit8 v5, v5, 0x1
|
|
|
|
goto/16 :goto_1
|
|
|
|
:cond_5
|
|
const/4 v1, 0x0
|
|
|
|
return-object v1
|
|
.end method
|