class com.jcraft.jsch.LocalIdentityRepository implements com.jcraft.jsch.IdentityRepository
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.jcraft.jsch.LocalIdentityRepository
super_class: java.lang.Object
{
private static final java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "Local Identity Repository"
private java.util.Vector identities;
descriptor: Ljava/util/Vector;
flags: (0x0002) ACC_PRIVATE
private com.jcraft.jsch.JSch jsch;
descriptor: Lcom/jcraft/jsch/JSch;
flags: (0x0002) ACC_PRIVATE
void <init>(com.jcraft.jsch.JSch);
descriptor: (Lcom/jcraft/jsch/JSch;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
putfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
2: aload 0
aload 1
putfield com.jcraft.jsch.LocalIdentityRepository.jsch:Lcom/jcraft/jsch/JSch;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/jcraft/jsch/LocalIdentityRepository;
0 4 1 jsch Lcom/jcraft/jsch/JSch;
MethodParameters:
Name Flags
jsch
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "Local Identity Repository"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/LocalIdentityRepository;
public int getStatus();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_2
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jcraft/jsch/LocalIdentityRepository;
public synchronized java.util.Vector getIdentities();
descriptor: ()Ljava/util/Vector;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual com.jcraft.jsch.LocalIdentityRepository.removeDupulicates:()V
1: new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
astore 1
start local 1 2: iconst_0
istore 2
start local 2 3: goto 6
4: StackMap locals: java.util.Vector int
StackMap stack:
aload 1
aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
iload 2
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
5: iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
if_icmplt 4
end local 2 7: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/jcraft/jsch/LocalIdentityRepository;
2 8 1 v Ljava/util/Vector;
3 7 2 i I
public synchronized void add(com.jcraft.jsch.Identity);
descriptor: (Lcom/jcraft/jsch/Identity;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
aload 1
invokevirtual java.util.Vector.contains:(Ljava/lang/Object;)Z
ifne 17
1: aload 1
invokeinterface com.jcraft.jsch.Identity.getPublicKeyBlob:()[B
astore 2
start local 2 2: aload 2
ifnonnull 5
3: aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
aload 1
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
4: return
5: StackMap locals: byte[]
StackMap stack:
iconst_0
istore 3
start local 3 6: goto 15
7: StackMap locals: int
StackMap stack:
aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
iload 3
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast com.jcraft.jsch.Identity
invokeinterface com.jcraft.jsch.Identity.getPublicKeyBlob:()[B
astore 4
start local 4 8: aload 4
ifnull 14
aload 2
aload 4
invokestatic com.jcraft.jsch.Util.array_equals:([B[B)Z
ifeq 14
9: aload 1
invokeinterface com.jcraft.jsch.Identity.isEncrypted:()Z
ifne 13
10: aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
iload 3
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast com.jcraft.jsch.Identity
invokeinterface com.jcraft.jsch.Identity.isEncrypted:()Z
ifeq 13
11: aload 0
aload 4
invokevirtual com.jcraft.jsch.LocalIdentityRepository.remove:([B)Z
pop
12: goto 14
13: StackMap locals: byte[]
StackMap stack:
return
end local 4 14: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
15: iload 3
aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
if_icmplt 7
end local 3 16: aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
aload 1
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
end local 2 17: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/jcraft/jsch/LocalIdentityRepository;
0 18 1 identity Lcom/jcraft/jsch/Identity;
2 17 2 blob1 [B
6 16 3 i I
8 14 4 blob2 [B
MethodParameters:
Name Flags
identity
public synchronized boolean add(byte[]);
descriptor: ([B)Z
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: ldc "from remote:"
aload 1
aconst_null
aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.jsch:Lcom/jcraft/jsch/JSch;
invokestatic com.jcraft.jsch.IdentityFile.newInstance:(Ljava/lang/String;[B[BLcom/jcraft/jsch/JSch;)Lcom/jcraft/jsch/IdentityFile;
1: astore 2
start local 2 2: aload 0
aload 2
invokevirtual com.jcraft.jsch.LocalIdentityRepository.add:(Lcom/jcraft/jsch/Identity;)V
3: iconst_1
ireturn
end local 2 4: StackMap locals:
StackMap stack: com.jcraft.jsch.JSchException
pop
5: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/jcraft/jsch/LocalIdentityRepository;
0 6 1 identity [B
2 4 2 _identity Lcom/jcraft/jsch/Identity;
Exception table:
from to target type
0 3 4 Class com.jcraft.jsch.JSchException
MethodParameters:
Name Flags
identity
synchronized void remove(com.jcraft.jsch.Identity);
descriptor: (Lcom/jcraft/jsch/Identity;)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
aload 1
invokevirtual java.util.Vector.contains:(Ljava/lang/Object;)Z
ifeq 4
1: aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
aload 1
invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
pop
2: aload 1
invokeinterface com.jcraft.jsch.Identity.clear:()V
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
aload 1
invokeinterface com.jcraft.jsch.Identity.getPublicKeyBlob:()[B
invokevirtual com.jcraft.jsch.LocalIdentityRepository.remove:([B)Z
pop
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/jcraft/jsch/LocalIdentityRepository;
0 6 1 identity Lcom/jcraft/jsch/Identity;
MethodParameters:
Name Flags
identity
public synchronized boolean remove(byte[]);
descriptor: ([B)Z
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 2: goto 11
3: StackMap locals: int
StackMap stack:
aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
iload 2
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast com.jcraft.jsch.Identity
astore 3
start local 3 4: aload 3
invokeinterface com.jcraft.jsch.Identity.getPublicKeyBlob:()[B
astore 4
start local 4 5: aload 4
ifnull 10
aload 1
aload 4
invokestatic com.jcraft.jsch.Util.array_equals:([B[B)Z
ifne 7
6: goto 10
7: StackMap locals: com.jcraft.jsch.Identity byte[]
StackMap stack:
aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
aload 3
invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
pop
8: aload 3
invokeinterface com.jcraft.jsch.Identity.clear:()V
9: iconst_1
ireturn
end local 4 end local 3 10: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
11: iload 2
aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
if_icmplt 3
end local 2 12: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/jcraft/jsch/LocalIdentityRepository;
0 13 1 blob [B
2 12 2 i I
4 10 3 _identity Lcom/jcraft/jsch/Identity;
5 10 4 _blob [B
MethodParameters:
Name Flags
blob
public synchronized void removeAll();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=3, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
iload 1
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast com.jcraft.jsch.Identity
astore 2
start local 2 3: aload 2
invokeinterface com.jcraft.jsch.Identity.clear:()V
end local 2 4: iinc 1 1
StackMap locals:
StackMap stack:
5: iload 1
aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
if_icmplt 2
end local 1 6: aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
invokevirtual java.util.Vector.removeAllElements:()V
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/jcraft/jsch/LocalIdentityRepository;
1 6 1 i I
3 4 2 identity Lcom/jcraft/jsch/Identity;
private void removeDupulicates();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=9, args_size=1
start local 0 0: new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
astore 1
start local 1 1: aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
istore 2
start local 2 2: iload 2
ifne 3
return
3: StackMap locals: java.util.Vector int
StackMap stack:
iconst_0
istore 3
start local 3 4: goto 20
5: StackMap locals: int
StackMap stack:
aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
iload 3
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast com.jcraft.jsch.Identity
astore 4
start local 4 6: aload 4
invokeinterface com.jcraft.jsch.Identity.getPublicKeyBlob:()[B
astore 5
start local 5 7: aload 5
ifnonnull 8
goto 19
8: StackMap locals: com.jcraft.jsch.Identity byte[]
StackMap stack:
iload 3
iconst_1
iadd
istore 6
start local 6 9: goto 18
10: StackMap locals: int
StackMap stack:
aload 0
getfield com.jcraft.jsch.LocalIdentityRepository.identities:Ljava/util/Vector;
iload 6
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast com.jcraft.jsch.Identity
astore 7
start local 7 11: aload 7
invokeinterface com.jcraft.jsch.Identity.getPublicKeyBlob:()[B
astore 8
start local 8 12: aload 8
ifnonnull 13
goto 17
13: StackMap locals: com.jcraft.jsch.Identity byte[]
StackMap stack:
aload 5
aload 8
invokestatic com.jcraft.jsch.Util.array_equals:([B[B)Z
ifeq 17
14: aload 4
invokeinterface com.jcraft.jsch.Identity.isEncrypted:()Z
aload 7
invokeinterface com.jcraft.jsch.Identity.isEncrypted:()Z
if_icmpne 17
15: aload 1
aload 5
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
16: goto 19
end local 8 end local 7 17: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
18: iload 6
iload 2
if_icmplt 10
end local 6 end local 5 end local 4 19: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
20: iload 3
iload 2
if_icmplt 5
end local 3 21: iconst_0
istore 3
start local 3 22: goto 25
23: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 3
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast byte[]
invokevirtual com.jcraft.jsch.LocalIdentityRepository.remove:([B)Z
pop
24: iinc 3 1
StackMap locals:
StackMap stack:
25: iload 3
aload 1
invokevirtual java.util.Vector.size:()I
if_icmplt 23
end local 3 26: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/jcraft/jsch/LocalIdentityRepository;
1 27 1 v Ljava/util/Vector;
2 27 2 len I
4 21 3 i I
6 19 4 foo Lcom/jcraft/jsch/Identity;
7 19 5 foo_blob [B
9 19 6 j I
11 17 7 bar Lcom/jcraft/jsch/Identity;
12 17 8 bar_blob [B
22 26 3 i I
}
SourceFile: "LocalIdentityRepository.java"