class com.jcraft.jsch.UserAuthPublicKey extends com.jcraft.jsch.UserAuth
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.jcraft.jsch.UserAuthPublicKey
super_class: com.jcraft.jsch.UserAuth
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.jcraft.jsch.UserAuth.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/UserAuthPublicKey;
public boolean start(com.jcraft.jsch.Session);
descriptor: (Lcom/jcraft/jsch/Session;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=17, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial com.jcraft.jsch.UserAuth.start:(Lcom/jcraft/jsch/Session;)Z
pop
1: aload 1
invokevirtual com.jcraft.jsch.Session.getIdentityRepository:()Lcom/jcraft/jsch/IdentityRepository;
invokeinterface com.jcraft.jsch.IdentityRepository.getIdentities:()Ljava/util/Vector;
astore 2
start local 2 2: aconst_null
astore 3
start local 3 3: aconst_null
astore 4
start local 4 4: aload 2
dup
astore 6
monitorenter
5: aload 2
invokevirtual java.util.Vector.size:()I
ifgt 8
6: aload 6
monitorexit
7: iconst_0
ireturn
8: StackMap locals: com.jcraft.jsch.UserAuthPublicKey com.jcraft.jsch.Session java.util.Vector byte[] byte[] top java.util.Vector
StackMap stack:
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.username:Ljava/lang/String;
invokestatic com.jcraft.jsch.Util.str2byte:(Ljava/lang/String;)[B
astore 4
9: iconst_0
istore 7
start local 7 10: goto 109
11: StackMap locals: int
StackMap stack:
aload 1
getfield com.jcraft.jsch.Session.auth_failures:I
aload 1
getfield com.jcraft.jsch.Session.max_auth_tries:I
if_icmplt 14
12: aload 6
monitorexit
13: iconst_0
ireturn
14: StackMap locals:
StackMap stack:
aload 2
iload 7
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast com.jcraft.jsch.Identity
astore 8
start local 8 15: aload 8
invokeinterface com.jcraft.jsch.Identity.getPublicKeyBlob:()[B
astore 9
start local 9 16: aload 9
ifnull 42
17: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.packet:Lcom/jcraft/jsch/Packet;
invokevirtual com.jcraft.jsch.Packet.reset:()V
18: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
bipush 50
invokevirtual com.jcraft.jsch.Buffer.putByte:(B)V
19: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
aload 4
invokevirtual com.jcraft.jsch.Buffer.putString:([B)V
20: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
ldc "ssh-connection"
invokestatic com.jcraft.jsch.Util.str2byte:(Ljava/lang/String;)[B
invokevirtual com.jcraft.jsch.Buffer.putString:([B)V
21: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
ldc "publickey"
invokestatic com.jcraft.jsch.Util.str2byte:(Ljava/lang/String;)[B
invokevirtual com.jcraft.jsch.Buffer.putString:([B)V
22: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
iconst_0
invokevirtual com.jcraft.jsch.Buffer.putByte:(B)V
23: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
aload 8
invokeinterface com.jcraft.jsch.Identity.getAlgName:()Ljava/lang/String;
invokestatic com.jcraft.jsch.Util.str2byte:(Ljava/lang/String;)[B
invokevirtual com.jcraft.jsch.Buffer.putString:([B)V
24: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
aload 9
invokevirtual com.jcraft.jsch.Buffer.putString:([B)V
25: aload 1
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.packet:Lcom/jcraft/jsch/Packet;
invokevirtual com.jcraft.jsch.Session.write:(Lcom/jcraft/jsch/Packet;)V
26: StackMap locals: com.jcraft.jsch.Identity byte[]
StackMap stack:
aload 0
aload 1
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Session.read:(Lcom/jcraft/jsch/Buffer;)Lcom/jcraft/jsch/Buffer;
putfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
27: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getCommand:()B
sipush 255
iand
istore 5
start local 5 28: iload 5
bipush 60
if_icmpne 30
29: goto 40
30: StackMap locals: com.jcraft.jsch.UserAuthPublicKey com.jcraft.jsch.Session java.util.Vector byte[] byte[] int java.util.Vector int com.jcraft.jsch.Identity byte[]
StackMap stack:
iload 5
bipush 51
if_icmpne 32
31: goto 40
32: StackMap locals:
StackMap stack:
iload 5
bipush 53
if_icmpne 40
33: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getInt:()I
pop
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getByte:()I
pop
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getByte:()I
pop
34: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getString:()[B
astore 10
start local 10 35: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getString:()[B
pop
36: aload 10
invokestatic com.jcraft.jsch.Util.byte2str:([B)Ljava/lang/String;
astore 11
start local 11 37: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.userinfo:Lcom/jcraft/jsch/UserInfo;
ifnull 26
38: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.userinfo:Lcom/jcraft/jsch/UserInfo;
aload 11
invokeinterface com.jcraft.jsch.UserInfo.showMessage:(Ljava/lang/String;)V
end local 11 end local 10 end local 5 39: goto 26
start local 5 40: StackMap locals:
StackMap stack:
iload 5
bipush 60
if_icmpeq 42
41: goto 108
end local 5 42: StackMap locals: com.jcraft.jsch.UserAuthPublicKey com.jcraft.jsch.Session java.util.Vector byte[] byte[] top java.util.Vector int com.jcraft.jsch.Identity byte[]
StackMap stack:
iconst_5
istore 10
start local 10 43: StackMap locals: int
StackMap stack:
aload 8
invokeinterface com.jcraft.jsch.Identity.isEncrypted:()Z
ifeq 51
aload 3
ifnonnull 51
44: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.userinfo:Lcom/jcraft/jsch/UserInfo;
ifnonnull 45
new com.jcraft.jsch.JSchException
dup
ldc "USERAUTH fail"
invokespecial com.jcraft.jsch.JSchException.<init>:(Ljava/lang/String;)V
athrow
45: StackMap locals:
StackMap stack:
aload 8
invokeinterface com.jcraft.jsch.Identity.isEncrypted:()Z
ifeq 48
46: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.userinfo:Lcom/jcraft/jsch/UserInfo;
new java.lang.StringBuilder
dup
ldc "Passphrase for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokeinterface com.jcraft.jsch.Identity.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface com.jcraft.jsch.UserInfo.promptPassphrase:(Ljava/lang/String;)Z
ifne 48
47: new com.jcraft.jsch.JSchAuthCancelException
dup
ldc "publickey"
invokespecial com.jcraft.jsch.JSchAuthCancelException.<init>:(Ljava/lang/String;)V
athrow
48: StackMap locals:
StackMap stack:
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.userinfo:Lcom/jcraft/jsch/UserInfo;
invokeinterface com.jcraft.jsch.UserInfo.getPassphrase:()Ljava/lang/String;
astore 11
start local 11 49: aload 11
ifnull 51
50: aload 11
invokestatic com.jcraft.jsch.Util.str2byte:(Ljava/lang/String;)[B
astore 3
end local 11 51: StackMap locals:
StackMap stack:
aload 8
invokeinterface com.jcraft.jsch.Identity.isEncrypted:()Z
ifeq 52
aload 3
ifnull 57
52: StackMap locals:
StackMap stack:
aload 8
aload 3
invokeinterface com.jcraft.jsch.Identity.setPassphrase:([B)Z
ifeq 57
53: aload 3
ifnull 61
54: aload 1
invokevirtual com.jcraft.jsch.Session.getIdentityRepository:()Lcom/jcraft/jsch/IdentityRepository;
instanceof com.jcraft.jsch.IdentityRepository$Wrapper
ifeq 61
55: aload 1
invokevirtual com.jcraft.jsch.Session.getIdentityRepository:()Lcom/jcraft/jsch/IdentityRepository;
checkcast com.jcraft.jsch.IdentityRepository$Wrapper
invokevirtual com.jcraft.jsch.IdentityRepository$Wrapper.check:()V
56: goto 61
57: StackMap locals:
StackMap stack:
aload 3
invokestatic com.jcraft.jsch.Util.bzero:([B)V
58: aconst_null
astore 3
59: iinc 10 -1
60: iload 10
ifne 43
61: StackMap locals:
StackMap stack:
aload 3
invokestatic com.jcraft.jsch.Util.bzero:([B)V
62: aconst_null
astore 3
63: aload 8
invokeinterface com.jcraft.jsch.Identity.isEncrypted:()Z
ifeq 64
goto 108
64: StackMap locals:
StackMap stack:
aload 9
ifnonnull 65
aload 8
invokeinterface com.jcraft.jsch.Identity.getPublicKeyBlob:()[B
astore 9
65: StackMap locals:
StackMap stack:
aload 9
ifnonnull 66
goto 108
66: StackMap locals:
StackMap stack:
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.packet:Lcom/jcraft/jsch/Packet;
invokevirtual com.jcraft.jsch.Packet.reset:()V
67: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
bipush 50
invokevirtual com.jcraft.jsch.Buffer.putByte:(B)V
68: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
aload 4
invokevirtual com.jcraft.jsch.Buffer.putString:([B)V
69: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
ldc "ssh-connection"
invokestatic com.jcraft.jsch.Util.str2byte:(Ljava/lang/String;)[B
invokevirtual com.jcraft.jsch.Buffer.putString:([B)V
70: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
ldc "publickey"
invokestatic com.jcraft.jsch.Util.str2byte:(Ljava/lang/String;)[B
invokevirtual com.jcraft.jsch.Buffer.putString:([B)V
71: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
iconst_1
invokevirtual com.jcraft.jsch.Buffer.putByte:(B)V
72: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
aload 8
invokeinterface com.jcraft.jsch.Identity.getAlgName:()Ljava/lang/String;
invokestatic com.jcraft.jsch.Util.str2byte:(Ljava/lang/String;)[B
invokevirtual com.jcraft.jsch.Buffer.putString:([B)V
73: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
aload 9
invokevirtual com.jcraft.jsch.Buffer.putString:([B)V
74: aload 1
invokevirtual com.jcraft.jsch.Session.getSessionId:()[B
astore 11
start local 11 75: aload 11
arraylength
istore 12
start local 12 76: iconst_4
iload 12
iadd
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
getfield com.jcraft.jsch.Buffer.index:I
iadd
iconst_5
isub
newarray 8
astore 13
start local 13 77: aload 13
iconst_0
iload 12
bipush 24
iushr
i2b
bastore
78: aload 13
iconst_1
iload 12
bipush 16
iushr
i2b
bastore
79: aload 13
iconst_2
iload 12
bipush 8
iushr
i2b
bastore
80: aload 13
iconst_3
iload 12
i2b
bastore
81: aload 11
iconst_0
aload 13
iconst_4
iload 12
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
82: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
getfield com.jcraft.jsch.Buffer.buffer:[B
iconst_5
aload 13
iconst_4
iload 12
iadd
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
getfield com.jcraft.jsch.Buffer.index:I
iconst_5
isub
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
83: aload 8
aload 13
invokeinterface com.jcraft.jsch.Identity.getSignature:([B)[B
astore 14
start local 14 84: aload 14
ifnonnull 86
85: goto 110
86: StackMap locals: com.jcraft.jsch.UserAuthPublicKey com.jcraft.jsch.Session java.util.Vector byte[] byte[] top java.util.Vector int com.jcraft.jsch.Identity byte[] int byte[] int byte[] byte[]
StackMap stack:
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
aload 14
invokevirtual com.jcraft.jsch.Buffer.putString:([B)V
87: aload 1
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.packet:Lcom/jcraft/jsch/Packet;
invokevirtual com.jcraft.jsch.Session.write:(Lcom/jcraft/jsch/Packet;)V
88: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Session.read:(Lcom/jcraft/jsch/Buffer;)Lcom/jcraft/jsch/Buffer;
putfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
89: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getCommand:()B
sipush 255
iand
istore 5
start local 5 90: iload 5
bipush 52
if_icmpne 93
91: aload 6
monitorexit
92: iconst_1
ireturn
93: StackMap locals: com.jcraft.jsch.UserAuthPublicKey com.jcraft.jsch.Session java.util.Vector byte[] byte[] int java.util.Vector int com.jcraft.jsch.Identity byte[] int byte[] int byte[] byte[]
StackMap stack:
iload 5
bipush 53
if_icmpne 101
94: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getInt:()I
pop
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getByte:()I
pop
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getByte:()I
pop
95: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getString:()[B
astore 15
start local 15 96: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getString:()[B
pop
97: aload 15
invokestatic com.jcraft.jsch.Util.byte2str:([B)Ljava/lang/String;
astore 16
start local 16 98: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.userinfo:Lcom/jcraft/jsch/UserInfo;
ifnull 88
99: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.userinfo:Lcom/jcraft/jsch/UserInfo;
aload 16
invokeinterface com.jcraft.jsch.UserInfo.showMessage:(Ljava/lang/String;)V
100: goto 88
end local 16 end local 15 101: StackMap locals:
StackMap stack:
iload 5
bipush 51
if_icmpne 108
102: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getInt:()I
pop
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getByte:()I
pop
aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getByte:()I
pop
103: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getString:()[B
astore 15
start local 15 104: aload 0
getfield com.jcraft.jsch.UserAuthPublicKey.buf:Lcom/jcraft/jsch/Buffer;
invokevirtual com.jcraft.jsch.Buffer.getByte:()I
istore 16
start local 16 105: iload 16
ifeq 107
106: new com.jcraft.jsch.JSchPartialAuthException
dup
aload 15
invokestatic com.jcraft.jsch.Util.byte2str:([B)Ljava/lang/String;
invokespecial com.jcraft.jsch.JSchPartialAuthException.<init>:(Ljava/lang/String;)V
athrow
107: StackMap locals: byte[] int
StackMap stack:
aload 1
dup
getfield com.jcraft.jsch.Session.auth_failures:I
iconst_1
iadd
putfield com.jcraft.jsch.Session.auth_failures:I
end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 5 108: StackMap locals: com.jcraft.jsch.UserAuthPublicKey com.jcraft.jsch.Session java.util.Vector byte[] byte[] top java.util.Vector int
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
109: iload 7
aload 2
invokevirtual java.util.Vector.size:()I
if_icmplt 11
end local 7 110: StackMap locals:
StackMap stack:
aload 6
monitorexit
111: goto 114
StackMap locals:
StackMap stack: java.lang.Throwable
112: aload 6
monitorexit
113: athrow
114: StackMap locals: com.jcraft.jsch.UserAuthPublicKey com.jcraft.jsch.Session java.util.Vector byte[] byte[]
StackMap stack:
iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 115 0 this Lcom/jcraft/jsch/UserAuthPublicKey;
0 115 1 session Lcom/jcraft/jsch/Session;
2 115 2 identities Ljava/util/Vector;
3 115 3 passphrase [B
4 115 4 _username [B
28 39 5 command I
40 42 5 command I
90 108 5 command I
10 110 7 i I
15 108 8 identity Lcom/jcraft/jsch/Identity;
16 108 9 pubkeyblob [B
35 39 10 _message [B
37 39 11 message Ljava/lang/String;
43 108 10 count I
49 51 11 _passphrase Ljava/lang/String;
75 108 11 sid [B
76 108 12 sidlen I
77 108 13 tmp [B
84 108 14 signature [B
96 101 15 _message [B
98 101 16 message Ljava/lang/String;
104 108 15 foo [B
105 108 16 partial_success I
Exception table:
from to target type
5 7 112 any
8 13 112 any
14 92 112 any
93 111 112 any
112 113 112 any
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
session
}
SourceFile: "UserAuthPublicKey.java"
InnerClasses:
public Wrapper = com.jcraft.jsch.IdentityRepository$Wrapper of com.jcraft.jsch.IdentityRepository