public class org.apache.commons.vfs2.provider.sftp.SftpStreamProxy implements com.jcraft.jsch.Proxy
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.vfs2.provider.sftp.SftpStreamProxy
super_class: java.lang.Object
{
public static final java.lang.String BASH_TCP_COMMAND;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "/bin/bash -c 'exec 3<>/dev/tcp/%s/%d; cat <&3 & cat >&3; kill $!"
public static final java.lang.String NETCAT_COMMAND;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "nc -q 0 %s %d"
private com.jcraft.jsch.ChannelExec channel;
descriptor: Lcom/jcraft/jsch/ChannelExec;
flags: (0x0002) ACC_PRIVATE
private final java.lang.String commandFormat;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String proxyHost;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.apache.commons.vfs2.FileSystemOptions proxyOptions;
descriptor: Lorg/apache/commons/vfs2/FileSystemOptions;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String proxyPassword;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int proxyPort;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String proxyUser;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private com.jcraft.jsch.Session session;
descriptor: Lcom/jcraft/jsch/Session;
flags: (0x0002) ACC_PRIVATE
public void <init>(java.lang.String, java.lang.String, java.lang.String, int, java.lang.String, org.apache.commons.vfs2.FileSystemOptions);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Lorg/apache/commons/vfs2/FileSystemOptions;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 3
putfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.proxyHost:Ljava/lang/String;
2: aload 0
iload 4
putfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.proxyPort:I
3: aload 0
aload 2
putfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.proxyUser:Ljava/lang/String;
4: aload 0
aload 5
putfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.proxyPassword:Ljava/lang/String;
5: aload 0
aload 1
putfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.commandFormat:Ljava/lang/String;
6: aload 0
aload 6
putfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.proxyOptions:Lorg/apache/commons/vfs2/FileSystemOptions;
7: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/commons/vfs2/provider/sftp/SftpStreamProxy;
0 8 1 commandFormat Ljava/lang/String;
0 8 2 proxyUser Ljava/lang/String;
0 8 3 proxyHost Ljava/lang/String;
0 8 4 proxyPort I
0 8 5 proxyPassword Ljava/lang/String;
0 8 6 proxyOptions Lorg/apache/commons/vfs2/FileSystemOptions;
MethodParameters:
Name Flags
commandFormat final
proxyUser final
proxyHost final
proxyPort final
proxyPassword final
proxyOptions final
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.channel:Lcom/jcraft/jsch/ChannelExec;
ifnull 2
1: aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.channel:Lcom/jcraft/jsch/ChannelExec;
invokevirtual com.jcraft.jsch.ChannelExec.disconnect:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.session:Lcom/jcraft/jsch/Session;
ifnull 4
3: aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.session:Lcom/jcraft/jsch/Session;
invokevirtual com.jcraft.jsch.Session.disconnect:()V
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/commons/vfs2/provider/sftp/SftpStreamProxy;
public void connect(com.jcraft.jsch.SocketFactory, java.lang.String, int, int);
descriptor: (Lcom/jcraft/jsch/SocketFactory;Ljava/lang/String;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.proxyHost:Ljava/lang/String;
aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.proxyPort:I
aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.proxyUser:Ljava/lang/String;
invokevirtual java.lang.String.toCharArray:()[C
1: aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.proxyPassword:Ljava/lang/String;
invokevirtual java.lang.String.toCharArray:()[C
aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.proxyOptions:Lorg/apache/commons/vfs2/FileSystemOptions;
2: invokestatic org.apache.commons.vfs2.provider.sftp.SftpClientFactory.createConnection:(Ljava/lang/String;I[C[CLorg/apache/commons/vfs2/FileSystemOptions;)Lcom/jcraft/jsch/Session;
putfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.session:Lcom/jcraft/jsch/Session;
3: aload 0
aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.session:Lcom/jcraft/jsch/Session;
ldc "exec"
invokevirtual com.jcraft.jsch.Session.openChannel:(Ljava/lang/String;)Lcom/jcraft/jsch/Channel;
checkcast com.jcraft.jsch.ChannelExec
putfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.channel:Lcom/jcraft/jsch/ChannelExec;
4: aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.channel:Lcom/jcraft/jsch/ChannelExec;
aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.commandFormat:Ljava/lang/String;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
dup
iconst_1
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual com.jcraft.jsch.ChannelExec.setCommand:(Ljava/lang/String;)V
5: aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.channel:Lcom/jcraft/jsch/ChannelExec;
iload 4
invokevirtual com.jcraft.jsch.ChannelExec.connect:(I)V
6: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/commons/vfs2/provider/sftp/SftpStreamProxy;
0 7 1 socketFactory Lcom/jcraft/jsch/SocketFactory;
0 7 2 targetHost Ljava/lang/String;
0 7 3 targetPort I
0 7 4 timeout I
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
socketFactory final
targetHost final
targetPort final
timeout final
public java.io.InputStream getInputStream();
descriptor: ()Ljava/io/InputStream;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.channel:Lcom/jcraft/jsch/ChannelExec;
invokevirtual com.jcraft.jsch.ChannelExec.getInputStream:()Ljava/io/InputStream;
1: areturn
2: StackMap locals:
StackMap stack: java.io.IOException
astore 1
start local 1 3: new java.lang.IllegalStateException
dup
ldc "IOException getting the SSH proxy input stream"
aload 1
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/commons/vfs2/provider/sftp/SftpStreamProxy;
3 4 1 e Ljava/io/IOException;
Exception table:
from to target type
0 1 2 Class java.io.IOException
public java.io.OutputStream getOutputStream();
descriptor: ()Ljava/io/OutputStream;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.vfs2.provider.sftp.SftpStreamProxy.channel:Lcom/jcraft/jsch/ChannelExec;
invokevirtual com.jcraft.jsch.ChannelExec.getOutputStream:()Ljava/io/OutputStream;
1: areturn
2: StackMap locals:
StackMap stack: java.io.IOException
astore 1
start local 1 3: new java.lang.IllegalStateException
dup
ldc "IOException getting the SSH proxy output stream"
aload 1
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/commons/vfs2/provider/sftp/SftpStreamProxy;
3 4 1 e Ljava/io/IOException;
Exception table:
from to target type
0 1 2 Class java.io.IOException
public java.net.Socket getSocket();
descriptor: ()Ljava/net/Socket;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/vfs2/provider/sftp/SftpStreamProxy;
}
SourceFile: "SftpStreamProxy.java"