final class com.microsoft.sqlserver.jdbc.TDSChannel implements java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.microsoft.sqlserver.jdbc.TDSChannel
super_class: java.lang.Object
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -866497813437384090
private static final java.util.logging.Logger logger;
descriptor: Ljava/util/logging/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.lang.String traceID;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.microsoft.sqlserver.jdbc.SQLServerConnection con;
descriptor: Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.microsoft.sqlserver.jdbc.TDSWriter tdsWriter;
descriptor: Lcom/microsoft/sqlserver/jdbc/TDSWriter;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.net.Socket tcpSocket;
descriptor: Ljava/net/Socket;
flags: (0x0002) ACC_PRIVATE
private javax.net.ssl.SSLSocket sslSocket;
descriptor: Ljavax/net/ssl/SSLSocket;
flags: (0x0002) ACC_PRIVATE
private java.net.Socket channelSocket;
descriptor: Ljava/net/Socket;
flags: (0x0002) ACC_PRIVATE
com.microsoft.sqlserver.jdbc.TDSChannel$ProxySocket proxySocket;
descriptor: Lcom/microsoft/sqlserver/jdbc/TDSChannel$ProxySocket;
flags: (0x0000)
private java.io.InputStream tcpInputStream;
descriptor: Ljava/io/InputStream;
flags: (0x0002) ACC_PRIVATE
private java.io.OutputStream tcpOutputStream;
descriptor: Ljava/io/OutputStream;
flags: (0x0002) ACC_PRIVATE
private java.io.InputStream inputStream;
descriptor: Ljava/io/InputStream;
flags: (0x0002) ACC_PRIVATE
private java.io.OutputStream outputStream;
descriptor: Ljava/io/OutputStream;
flags: (0x0002) ACC_PRIVATE
private static java.util.logging.Logger packetLogger;
descriptor: Ljava/util/logging/Logger;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private final boolean isLoggingPackets;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
int numMsgsSent;
descriptor: I
flags: (0x0000)
int numMsgsRcvd;
descriptor: I
flags: (0x0000)
private int spid;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private static final java.lang.String SEPARATOR;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String JAVA_HOME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String JAVA_SECURITY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String JSSECACERTS;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String CACERTS;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: ldc Lcom/microsoft/sqlserver/jdbc/TDSChannel;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.microsoft.sqlserver.jdbc.TDSChannel.$assertionsDisabled:Z
3: ldc "com.microsoft.sqlserver.jdbc.internals.TDS.Channel"
invokestatic java.util.logging.Logger.getLogger:(Ljava/lang/String;)Ljava/util/logging/Logger;
putstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
4: ldc "com.microsoft.sqlserver.jdbc.internals.TDS.DATA"
invokestatic java.util.logging.Logger.getLogger:(Ljava/lang/String;)Ljava/util/logging/Logger;
putstatic com.microsoft.sqlserver.jdbc.TDSChannel.packetLogger:Ljava/util/logging/Logger;
5: ldc "file.separator"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
putstatic com.microsoft.sqlserver.jdbc.TDSChannel.SEPARATOR:Ljava/lang/String;
6: ldc "java.home"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
putstatic com.microsoft.sqlserver.jdbc.TDSChannel.JAVA_HOME:Ljava/lang/String;
7: new java.lang.StringBuilder
dup
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.JAVA_HOME:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.SEPARATOR:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "lib"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.SEPARATOR:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "security"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putstatic com.microsoft.sqlserver.jdbc.TDSChannel.JAVA_SECURITY:Ljava/lang/String;
8: new java.lang.StringBuilder
dup
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.JAVA_SECURITY:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.SEPARATOR:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "jssecacerts"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putstatic com.microsoft.sqlserver.jdbc.TDSChannel.JSSECACERTS:Ljava/lang/String;
9: new java.lang.StringBuilder
dup
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.JAVA_SECURITY:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.SEPARATOR:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "cacerts"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putstatic com.microsoft.sqlserver.jdbc.TDSChannel.CACERTS:Ljava/lang/String;
return
LocalVariableTable:
Start End Slot Name Signature
final java.util.logging.Logger getLogger();
descriptor: ()Ljava/util/logging/Logger;
flags: (0x0010) ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
public final java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.traceID:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
final com.microsoft.sqlserver.jdbc.TDSWriter getWriter();
descriptor: ()Lcom/microsoft/sqlserver/jdbc/TDSWriter;
flags: (0x0010) ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tdsWriter:Lcom/microsoft/sqlserver/jdbc/TDSWriter;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
final com.microsoft.sqlserver.jdbc.TDSReader getReader(com.microsoft.sqlserver.jdbc.TDSCommand);
descriptor: (Lcom/microsoft/sqlserver/jdbc/TDSCommand;)Lcom/microsoft/sqlserver/jdbc/TDSReader;
flags: (0x0010) ACC_FINAL
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: new com.microsoft.sqlserver.jdbc.TDSReader
dup
aload 0
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
aload 1
invokespecial com.microsoft.sqlserver.jdbc.TDSReader.<init>:(Lcom/microsoft/sqlserver/jdbc/TDSChannel;Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;Lcom/microsoft/sqlserver/jdbc/TDSCommand;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
0 1 1 command Lcom/microsoft/sqlserver/jdbc/TDSCommand;
MethodParameters:
Name Flags
command
final boolean isLoggingPackets();
descriptor: ()Z
flags: (0x0010) ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.isLoggingPackets:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
void setSPID(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.microsoft.sqlserver.jdbc.TDSChannel.spid:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
0 2 1 spid I
MethodParameters:
Name Flags
spid
int getSPID();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.spid:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
void resetPooledConnection();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tdsWriter:Lcom/microsoft/sqlserver/jdbc/TDSWriter;
invokevirtual com.microsoft.sqlserver.jdbc.TDSWriter.resetPooledConnection:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
void <init>(com.microsoft.sqlserver.jdbc.SQLServerConnection);
descriptor: (Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;)V
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aconst_null
putfield com.microsoft.sqlserver.jdbc.TDSChannel.proxySocket:Lcom/microsoft/sqlserver/jdbc/TDSChannel$ProxySocket;
2: aload 0
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.packetLogger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
putfield com.microsoft.sqlserver.jdbc.TDSChannel.isLoggingPackets:Z
3: aload 0
iconst_0
putfield com.microsoft.sqlserver.jdbc.TDSChannel.numMsgsSent:I
4: aload 0
iconst_0
putfield com.microsoft.sqlserver.jdbc.TDSChannel.numMsgsRcvd:I
5: aload 0
iconst_0
putfield com.microsoft.sqlserver.jdbc.TDSChannel.spid:I
6: aload 0
aload 1
putfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
7: aload 0
new java.lang.StringBuilder
dup
ldc "TDSChannel ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.microsoft.sqlserver.jdbc.TDSChannel.traceID:Ljava/lang/String;
8: aload 0
aconst_null
putfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
9: aload 0
aconst_null
putfield com.microsoft.sqlserver.jdbc.TDSChannel.sslSocket:Ljavax/net/ssl/SSLSocket;
10: aload 0
aconst_null
putfield com.microsoft.sqlserver.jdbc.TDSChannel.channelSocket:Ljava/net/Socket;
11: aload 0
aconst_null
putfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpInputStream:Ljava/io/InputStream;
12: aload 0
aconst_null
putfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpOutputStream:Ljava/io/OutputStream;
13: aload 0
aconst_null
putfield com.microsoft.sqlserver.jdbc.TDSChannel.inputStream:Ljava/io/InputStream;
14: aload 0
aconst_null
putfield com.microsoft.sqlserver.jdbc.TDSChannel.outputStream:Ljava/io/OutputStream;
15: aload 0
new com.microsoft.sqlserver.jdbc.TDSWriter
dup
aload 0
aload 1
invokespecial com.microsoft.sqlserver.jdbc.TDSWriter.<init>:(Lcom/microsoft/sqlserver/jdbc/TDSChannel;Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;)V
putfield com.microsoft.sqlserver.jdbc.TDSChannel.tdsWriter:Lcom/microsoft/sqlserver/jdbc/TDSWriter;
16: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
0 17 1 con Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
MethodParameters:
Name Flags
con
final java.net.InetSocketAddress open(java.lang.String, int, int, boolean, boolean, boolean, int);
descriptor: (Ljava/lang/String;IIZZZI)Ljava/net/InetSocketAddress;
flags: (0x0010) ACC_FINAL
Code:
stack=10, locals=10, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 2
1: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": Opening TCP socket..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
new com.microsoft.sqlserver.jdbc.SocketFinder
dup
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.traceID:Ljava/lang/String;
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokespecial com.microsoft.sqlserver.jdbc.SocketFinder.<init>:(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;)V
astore 8
start local 8 3: aload 0
aload 0
aload 8
aload 1
iload 2
iload 3
iload 4
iload 5
4: iload 6
iload 7
5: invokevirtual com.microsoft.sqlserver.jdbc.SocketFinder.findSocket:(Ljava/lang/String;IIZZZI)Ljava/net/Socket;
dup_x1
putfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
putfield com.microsoft.sqlserver.jdbc.TDSChannel.channelSocket:Ljava/net/Socket;
6: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
iconst_1
invokevirtual java.net.Socket.setTcpNoDelay:(Z)V
7: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
iconst_1
invokevirtual java.net.Socket.setKeepAlive:(Z)V
8: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getSocketTimeoutMilliseconds:()I
istore 9
start local 9 9: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
iload 9
invokevirtual java.net.Socket.setSoTimeout:(I)V
10: aload 0
aload 0
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
invokevirtual java.net.Socket.getInputStream:()Ljava/io/InputStream;
dup_x1
putfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpInputStream:Ljava/io/InputStream;
putfield com.microsoft.sqlserver.jdbc.TDSChannel.inputStream:Ljava/io/InputStream;
11: aload 0
aload 0
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
invokevirtual java.net.Socket.getOutputStream:()Ljava/io/OutputStream;
dup_x1
putfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpOutputStream:Ljava/io/OutputStream;
putfield com.microsoft.sqlserver.jdbc.TDSChannel.outputStream:Ljava/io/OutputStream;
end local 9 12: goto 15
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int int int int int int com.microsoft.sqlserver.jdbc.SocketFinder
StackMap stack: java.io.IOException
13: astore 9
start local 9 14: aload 1
iload 2
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
aload 9
invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.ConvertConnectExceptionToSQLServerException:(Ljava/lang/String;ILcom/microsoft/sqlserver/jdbc/SQLServerConnection;Ljava/lang/Exception;)V
end local 9 15: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.channelSocket:Ljava/net/Socket;
invokevirtual java.net.Socket.getRemoteSocketAddress:()Ljava/net/SocketAddress;
checkcast java.net.InetSocketAddress
areturn
end local 8 end local 7 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 16 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
0 16 1 host Ljava/lang/String;
0 16 2 port I
0 16 3 timeoutMillis I
0 16 4 useParallel Z
0 16 5 useTnir Z
0 16 6 isTnirFirstAttempt Z
0 16 7 timeoutMillisForFullTimeout I
3 16 8 socketFinder Lcom/microsoft/sqlserver/jdbc/SocketFinder;
9 12 9 socketTimeout I
14 15 9 ex Ljava/io/IOException;
Exception table:
from to target type
6 12 13 Class java.io.IOException
Exceptions:
throws com.microsoft.sqlserver.jdbc.SQLServerException
MethodParameters:
Name Flags
host
port
timeoutMillis
useParallel
useTnir
isTnirFirstAttempt
timeoutMillisForFullTimeout
void disableSSL();
descriptor: ()V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=1
start local 0 0: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 2
1: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Disabling SSL..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
new java.io.ByteArrayInputStream
dup
iconst_0
newarray 8
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
astore 1
start local 1 3: aload 1
invokevirtual java.io.InputStream.close:()V
4: goto 7
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.io.InputStream
StackMap stack: java.io.IOException
5: astore 2
start local 2 6: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
ldc "Ignored error closing InputStream: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
end local 2 7: StackMap locals:
StackMap stack:
new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 2
start local 2 8: aload 2
invokevirtual java.io.OutputStream.close:()V
9: goto 12
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.io.InputStream java.io.OutputStream
StackMap stack: java.io.IOException
10: astore 3
start local 3 11: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
ldc "Ignored error closing OutputStream: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
end local 3 12: StackMap locals:
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 14
13: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Rewiring proxy streams for SSL socket close"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
14: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.proxySocket:Lcom/microsoft/sqlserver/jdbc/TDSChannel$ProxySocket;
aload 1
aload 2
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel$ProxySocket.setStreams:(Ljava/io/InputStream;Ljava/io/OutputStream;)V
15: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 17
16: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Closing SSL socket"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
17: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.sslSocket:Ljavax/net/ssl/SSLSocket;
invokevirtual javax.net.ssl.SSLSocket.close:()V
18: goto 21
StackMap locals:
StackMap stack: java.io.IOException
19: astore 3
start local 3 20: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
ldc "Ignored error closing SSLSocket: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
end local 3 21: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield com.microsoft.sqlserver.jdbc.TDSChannel.proxySocket:Lcom/microsoft/sqlserver/jdbc/TDSChannel$ProxySocket;
22: aload 0
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpInputStream:Ljava/io/InputStream;
putfield com.microsoft.sqlserver.jdbc.TDSChannel.inputStream:Ljava/io/InputStream;
23: aload 0
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpOutputStream:Ljava/io/OutputStream;
putfield com.microsoft.sqlserver.jdbc.TDSChannel.outputStream:Ljava/io/OutputStream;
24: aload 0
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
putfield com.microsoft.sqlserver.jdbc.TDSChannel.channelSocket:Ljava/net/Socket;
25: aload 0
aconst_null
putfield com.microsoft.sqlserver.jdbc.TDSChannel.sslSocket:Ljavax/net/ssl/SSLSocket;
26: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 28
27: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " SSL disabled"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
28: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
3 29 1 is Ljava/io/InputStream;
6 7 2 e Ljava/io/IOException;
8 29 2 os Ljava/io/OutputStream;
11 12 3 e Ljava/io/IOException;
20 21 3 e Ljava/io/IOException;
Exception table:
from to target type
3 4 5 Class java.io.IOException
8 9 10 Class java.io.IOException
15 18 19 Class java.io.IOException
void enableSSL(java.lang.String, int, java.lang.String, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=9, locals=22, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aconst_null
astore 6
start local 6 1: aconst_null
astore 7
start local 7 2: aconst_null
astore 8
start local 8 3: aconst_null
astore 9
start local 9 4: getstatic com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState.SSL_HANDHSAKE_NOT_STARTED:Lcom/microsoft/sqlserver/jdbc/TDSChannel$SSLHandhsakeState;
astore 10
start local 10 5: iconst_0
istore 11
start local 11 6: aconst_null
astore 12
start local 12 7: aconst_null
astore 13
start local 13 8: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 10
9: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Enabling SSL..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
10: StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.activeConnectionProperties:Ljava/util/Properties;
11: getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.TRUST_STORE:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.toString:()Ljava/lang/String;
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
12: astore 14
start local 14 13: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.activeConnectionProperties:Ljava/util/Properties;
14: getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.TRUST_STORE_PASSWORD:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.toString:()Ljava/lang/String;
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
15: astore 15
start local 15 16: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.activeConnectionProperties:Ljava/util/Properties;
17: getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.HOSTNAME_IN_CERTIFICATE:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.toString:()Ljava/lang/String;
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
18: astore 16
start local 16 19: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.activeConnectionProperties:Ljava/util/Properties;
20: getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.TRUST_STORE_TYPE:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.toString:()Ljava/lang/String;
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
21: astore 12
22: aload 12
invokestatic com.microsoft.sqlserver.jdbc.StringUtils.isEmpty:(Ljava/lang/CharSequence;)Z
ifeq 24
23: getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.TRUST_STORE_TYPE:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.getDefaultValue:()Ljava/lang/String;
astore 12
24: StackMap locals: java.lang.String java.lang.String java.lang.String
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.activeConnectionProperties:Ljava/util/Properties;
getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverBooleanProperty.FIPS:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverBooleanProperty;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverBooleanProperty.toString:()Ljava/lang/String;
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
25: invokestatic java.lang.Boolean.valueOf:(Ljava/lang/String;)Ljava/lang/Boolean;
invokevirtual java.lang.Boolean.booleanValue:()Z
istore 11
26: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.activeConnectionProperties:Ljava/util/Properties;
27: getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.SSL_PROTOCOL:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.toString:()Ljava/lang/String;
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
28: astore 13
29: iload 11
ifeq 31
30: aload 0
aload 12
aload 14
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.validateFips:(Ljava/lang/String;Ljava/lang/String;)V
31: StackMap locals:
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.$assertionsDisabled:Z
ifne 33
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getRequestedEncryptionLevel:()B
ifeq 33
32: iconst_1
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getRequestedEncryptionLevel:()B
if_icmpeq 33
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
33: StackMap locals:
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.$assertionsDisabled:Z
ifne 36
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getNegotiatedEncryptionLevel:()B
ifeq 36
34: iconst_1
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getNegotiatedEncryptionLevel:()B
if_icmpeq 36
35: iconst_3
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getNegotiatedEncryptionLevel:()B
if_icmpeq 36
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
36: StackMap locals:
StackMap stack:
aconst_null
astore 17
start local 17 37: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getRequestedEncryptionLevel:()B
ifeq 39
38: iconst_1
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getRequestedEncryptionLevel:()B
if_icmpne 43
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.trustServerCertificate:()Z
ifeq 43
39: StackMap locals: javax.net.ssl.TrustManager[]
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 41
40: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " SSL handshake will trust any certificate"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
41: StackMap locals:
StackMap stack:
iconst_1
anewarray javax.net.ssl.TrustManager
dup
iconst_0
new com.microsoft.sqlserver.jdbc.TDSChannel$PermissiveX509TrustManager
dup
aload 0
aload 0
invokespecial com.microsoft.sqlserver.jdbc.TDSChannel$PermissiveX509TrustManager.<init>:(Lcom/microsoft/sqlserver/jdbc/TDSChannel;Lcom/microsoft/sqlserver/jdbc/TDSChannel;)V
aastore
astore 17
42: goto 104
43: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getTrustManagerClass:()Ljava/lang/String;
ifnull 49
44: iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc "trustManagerClass"
aastore
dup
iconst_1
ldc "javax.net.ssl.TrustManager"
aastore
astore 18
start local 18 45: iconst_1
anewarray javax.net.ssl.TrustManager
dup
iconst_0
ldc Ljavax/net/ssl/TrustManager;
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getTrustManagerClass:()Ljava/lang/String;
46: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getTrustManagerConstructorArg:()Ljava/lang/String;
aload 18
47: invokestatic com.microsoft.sqlserver.jdbc.Util.newInstance:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast javax.net.ssl.TrustManager
aastore
astore 17
end local 18 48: goto 104
49: StackMap locals:
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 51
50: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " SSL handshake will validate server certificate"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
51: StackMap locals:
StackMap stack:
aconst_null
astore 18
start local 18 52: aload 14
ifnonnull 56
aload 15
ifnonnull 56
53: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 85
54: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Using system default trust store and password"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
55: goto 85
56: StackMap locals: java.security.KeyStore
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 58
57: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Finding key store interface"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
58: StackMap locals:
StackMap stack:
aload 12
invokestatic java.security.KeyStore.getInstance:(Ljava/lang/String;)Ljava/security/KeyStore;
astore 18
59: aload 18
invokevirtual java.security.KeyStore.getProvider:()Ljava/security/Provider;
astore 8
60: aload 0
aload 14
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.loadTrustStore:(Ljava/lang/String;)Ljava/io/InputStream;
astore 19
start local 19 61: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 63
62: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Loading key store"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
63: StackMap locals: java.io.InputStream
StackMap stack:
aload 18
aload 19
aload 15
ifnonnull 64
aconst_null
goto 65
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String javax.net.ssl.TrustManager[] java.security.KeyStore java.io.InputStream
StackMap stack: java.security.KeyStore java.io.InputStream
64: aload 15
invokevirtual java.lang.String.toCharArray:()[C
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String javax.net.ssl.TrustManager[] java.security.KeyStore java.io.InputStream
StackMap stack: java.security.KeyStore java.io.InputStream char[]
65: invokevirtual java.security.KeyStore.load:(Ljava/io/InputStream;[C)V
66: goto 77
StackMap locals:
StackMap stack: java.lang.Throwable
67: astore 20
68: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.activeConnectionProperties:Ljava/util/Properties;
69: getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.TRUST_STORE_PASSWORD:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.toString:()Ljava/lang/String;
invokevirtual java.util.Properties.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
70: aload 19
ifnull 76
71: aload 19
invokevirtual java.io.InputStream.close:()V
72: goto 76
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String javax.net.ssl.TrustManager[] java.security.KeyStore java.io.InputStream java.lang.Throwable
StackMap stack: java.io.IOException
73: pop
74: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 76
75: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Ignoring error closing trust material InputStream..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
76: StackMap locals:
StackMap stack:
aload 20
athrow
77: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
getfield com.microsoft.sqlserver.jdbc.SQLServerConnection.activeConnectionProperties:Ljava/util/Properties;
78: getstatic com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.TRUST_STORE_PASSWORD:Lcom/microsoft/sqlserver/jdbc/SQLServerDriverStringProperty;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerDriverStringProperty.toString:()Ljava/lang/String;
invokevirtual java.util.Properties.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
79: aload 19
ifnull 85
80: aload 19
invokevirtual java.io.InputStream.close:()V
81: goto 85
StackMap locals:
StackMap stack: java.io.IOException
82: pop
83: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 85
84: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Ignoring error closing trust material InputStream..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
end local 19 85: StackMap locals:
StackMap stack:
aconst_null
astore 19
start local 19 86: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 88
87: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Locating X.509 trust manager factory"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
88: StackMap locals: javax.net.ssl.TrustManagerFactory
StackMap stack:
invokestatic javax.net.ssl.TrustManagerFactory.getDefaultAlgorithm:()Ljava/lang/String;
astore 9
89: aload 9
invokestatic javax.net.ssl.TrustManagerFactory.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/TrustManagerFactory;
astore 19
90: aload 19
invokevirtual javax.net.ssl.TrustManagerFactory.getProvider:()Ljava/security/Provider;
astore 6
91: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 93
92: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Getting trust manager"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
93: StackMap locals:
StackMap stack:
aload 19
aload 18
invokevirtual javax.net.ssl.TrustManagerFactory.init:(Ljava/security/KeyStore;)V
94: aload 19
invokevirtual javax.net.ssl.TrustManagerFactory.getTrustManagers:()[Ljavax/net/ssl/TrustManager;
astore 17
95: iload 11
ifne 104
96: aload 16
ifnull 101
97: iconst_1
anewarray javax.net.ssl.TrustManager
dup
iconst_0
new com.microsoft.sqlserver.jdbc.TDSChannel$HostNameOverrideX509TrustManager
dup
aload 0
aload 0
aload 17
iconst_0
aaload
checkcast javax.net.ssl.X509TrustManager
98: aload 16
99: invokespecial com.microsoft.sqlserver.jdbc.TDSChannel$HostNameOverrideX509TrustManager.<init>:(Lcom/microsoft/sqlserver/jdbc/TDSChannel;Lcom/microsoft/sqlserver/jdbc/TDSChannel;Ljavax/net/ssl/X509TrustManager;Ljava/lang/String;)V
aastore
astore 17
100: goto 104
101: StackMap locals:
StackMap stack:
iconst_1
anewarray javax.net.ssl.TrustManager
dup
iconst_0
102: new com.microsoft.sqlserver.jdbc.TDSChannel$HostNameOverrideX509TrustManager
dup
aload 0
aload 0
aload 17
iconst_0
aaload
checkcast javax.net.ssl.X509TrustManager
aload 1
invokespecial com.microsoft.sqlserver.jdbc.TDSChannel$HostNameOverrideX509TrustManager.<init>:(Lcom/microsoft/sqlserver/jdbc/TDSChannel;Lcom/microsoft/sqlserver/jdbc/TDSChannel;Ljavax/net/ssl/X509TrustManager;Ljava/lang/String;)V
aastore
103: astore 17
end local 19 end local 18 104: StackMap locals:
StackMap stack:
aconst_null
astore 18
start local 18 105: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 107
106: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Getting TLS or better SSL context"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
107: StackMap locals: javax.net.ssl.SSLContext
StackMap stack:
aload 3
ifnull 109
aload 3
invokevirtual java.lang.String.length:()I
ifle 109
108: aload 3
aload 4
aload 5
invokestatic com.microsoft.sqlserver.jdbc.SQLServerCertificateUtils.getKeyManagerFromFile:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)[Ljavax/net/ssl/KeyManager;
goto 110
StackMap locals:
StackMap stack:
109: aconst_null
110: StackMap locals:
StackMap stack: javax.net.ssl.KeyManager[]
astore 19
start local 19 111: aload 13
invokestatic javax.net.ssl.SSLContext.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/SSLContext;
astore 18
112: aload 18
invokevirtual javax.net.ssl.SSLContext.getProvider:()Ljava/security/Provider;
astore 7
113: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 115
114: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Initializing SSL context"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
115: StackMap locals: javax.net.ssl.KeyManager[]
StackMap stack:
aload 18
aload 19
aload 17
aconst_null
invokevirtual javax.net.ssl.SSLContext.init:([Ljavax/net/ssl/KeyManager;[Ljavax/net/ssl/TrustManager;Ljava/security/SecureRandom;)V
116: aload 0
new com.microsoft.sqlserver.jdbc.TDSChannel$ProxySocket
dup
aload 0
aload 0
invokespecial com.microsoft.sqlserver.jdbc.TDSChannel$ProxySocket.<init>:(Lcom/microsoft/sqlserver/jdbc/TDSChannel;Lcom/microsoft/sqlserver/jdbc/TDSChannel;)V
putfield com.microsoft.sqlserver.jdbc.TDSChannel.proxySocket:Lcom/microsoft/sqlserver/jdbc/TDSChannel$ProxySocket;
117: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 119
118: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Creating SSL socket"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
119: StackMap locals:
StackMap stack:
aload 0
aload 18
invokevirtual javax.net.ssl.SSLContext.getSocketFactory:()Ljavax/net/ssl/SSLSocketFactory;
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.proxySocket:Lcom/microsoft/sqlserver/jdbc/TDSChannel$ProxySocket;
aload 1
iload 2
iconst_0
invokevirtual javax.net.ssl.SSLSocketFactory.createSocket:(Ljava/net/Socket;Ljava/lang/String;IZ)Ljava/net/Socket;
checkcast javax.net.ssl.SSLSocket
putfield com.microsoft.sqlserver.jdbc.TDSChannel.sslSocket:Ljavax/net/ssl/SSLSocket;
120: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 122
121: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Starting SSL handshake"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
122: StackMap locals:
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState.SSL_HANDHSAKE_STARTED:Lcom/microsoft/sqlserver/jdbc/TDSChannel$SSLHandhsakeState;
astore 10
123: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.sslSocket:Ljavax/net/ssl/SSLSocket;
invokevirtual javax.net.ssl.SSLSocket.startHandshake:()V
124: getstatic com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState.SSL_HANDHSAKE_COMPLETE:Lcom/microsoft/sqlserver/jdbc/TDSChannel$SSLHandhsakeState;
astore 10
125: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 127
126: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Rewiring proxy streams after handshake"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
127: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.proxySocket:Lcom/microsoft/sqlserver/jdbc/TDSChannel$ProxySocket;
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.inputStream:Ljava/io/InputStream;
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.outputStream:Ljava/io/OutputStream;
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel$ProxySocket.setStreams:(Ljava/io/InputStream;Ljava/io/OutputStream;)V
128: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 130
129: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Getting SSL InputStream"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
130: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.sslSocket:Ljavax/net/ssl/SSLSocket;
invokevirtual javax.net.ssl.SSLSocket.getInputStream:()Ljava/io/InputStream;
putfield com.microsoft.sqlserver.jdbc.TDSChannel.inputStream:Ljava/io/InputStream;
131: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 133
132: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Getting SSL OutputStream"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
133: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.sslSocket:Ljavax/net/ssl/SSLSocket;
invokevirtual javax.net.ssl.SSLSocket.getOutputStream:()Ljava/io/OutputStream;
putfield com.microsoft.sqlserver.jdbc.TDSChannel.outputStream:Ljava/io/OutputStream;
134: aload 0
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.sslSocket:Ljavax/net/ssl/SSLSocket;
putfield com.microsoft.sqlserver.jdbc.TDSChannel.channelSocket:Ljava/net/Socket;
135: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.sslSocket:Ljavax/net/ssl/SSLSocket;
invokevirtual javax.net.ssl.SSLSocket.getSession:()Ljavax/net/ssl/SSLSession;
invokeinterface javax.net.ssl.SSLSession.getProtocol:()Ljava/lang/String;
astore 20
start local 20 136: getstatic com.microsoft.sqlserver.jdbc.SSLProtocol.TLS_V10:Lcom/microsoft/sqlserver/jdbc/SSLProtocol;
invokevirtual com.microsoft.sqlserver.jdbc.SSLProtocol.toString:()Ljava/lang/String;
aload 20
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 138
137: getstatic com.microsoft.sqlserver.jdbc.SSLProtocol.TLS_V11:Lcom/microsoft/sqlserver/jdbc/SSLProtocol;
invokevirtual com.microsoft.sqlserver.jdbc.SSLProtocol.toString:()Ljava/lang/String;
aload 20
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 143
138: StackMap locals: java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
aload 20
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
139: ldc " was negotiated. Please update server and client to use TLSv1.2 at minimum."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
140: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 21
start local 21 141: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
aload 21
invokevirtual java.util.logging.Logger.warning:(Ljava/lang/String;)V
142: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
aload 21
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.addWarning:(Ljava/lang/String;)V
end local 21 143: StackMap locals:
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 194
144: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " SSL enabled"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 145: goto 194
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String
StackMap stack: java.lang.Exception
146: astore 14
start local 14 147: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 149
148: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 14
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
aload 14
invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
149: StackMap locals: java.lang.Exception
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 169
150: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
new java.lang.StringBuilder
dup
ldc "java.security path: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.JAVA_SECURITY:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "Security providers: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
151: invokestatic java.security.Security.getProviders:()[Ljava/security/Provider;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
152: aload 7
ifnull 154
new java.lang.StringBuilder
dup
ldc "SSLContext provider info: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.security.Provider.getInfo:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
153: ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "SSLContext provider services:\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.security.Provider.getServices:()Ljava/util/Set;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 155
154: StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String java.lang.Exception
StackMap stack: java.util.logging.Logger java.util.logging.Level java.lang.StringBuilder
ldc ""
155: StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String java.lang.Exception
StackMap stack: java.util.logging.Logger java.util.logging.Level java.lang.StringBuilder java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
156: aload 6
ifnull 158
new java.lang.StringBuilder
dup
ldc "TrustManagerFactory provider info: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.security.Provider.getInfo:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
157: ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 159
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String java.lang.Exception
StackMap stack: java.util.logging.Logger java.util.logging.Level java.lang.StringBuilder
158: ldc ""
159: StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String java.lang.Exception
StackMap stack: java.util.logging.Logger java.util.logging.Level java.lang.StringBuilder java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
160: aload 9
ifnull 162
new java.lang.StringBuilder
dup
ldc "TrustManagerFactory default algorithm: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
161: aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 163
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String java.lang.Exception
StackMap stack: java.util.logging.Logger java.util.logging.Level java.lang.StringBuilder
162: ldc ""
163: StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String java.lang.Exception
StackMap stack: java.util.logging.Logger java.util.logging.Level java.lang.StringBuilder java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
164: aload 8
ifnull 165
new java.lang.StringBuilder
dup
ldc "KeyStore provider info: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.security.Provider.getInfo:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 166
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String java.lang.Exception
StackMap stack: java.util.logging.Logger java.util.logging.Level java.lang.StringBuilder
165: ldc ""
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String java.lang.Exception
StackMap stack: java.util.logging.Logger java.util.logging.Level java.lang.StringBuilder java.lang.String
166: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
167: ldc "java.ext.dirs: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "java.ext.dirs"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
168: invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
169: StackMap locals:
StackMap stack:
aload 14
invokevirtual java.lang.Exception.getLocalizedMessage:()Ljava/lang/String;
astore 15
start local 15 170: aload 15
ifnull 171
aload 15
goto 172
StackMap locals: java.lang.String
StackMap stack:
171: aload 14
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
172: astore 16
start local 16 173: aconst_null
astore 17
start local 17 174: aload 14
invokevirtual java.lang.Exception.getCause:()Ljava/lang/Throwable;
astore 18
start local 18 175: aload 18
ifnull 180
176: aload 18
invokevirtual java.lang.Throwable.getLocalizedMessage:()Ljava/lang/String;
astore 19
start local 19 177: aload 19
ifnull 178
aload 19
goto 179
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String java.lang.Exception java.lang.String java.lang.String java.lang.String java.lang.Throwable java.lang.String
StackMap stack:
178: aload 18
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
179: astore 17
end local 19 180: StackMap locals:
StackMap stack:
new java.text.MessageFormat
dup
ldc "R_sslFailed"
invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial java.text.MessageFormat.<init>:(Ljava/lang/String;)V
astore 19
start local 19 181: iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 16
aastore
astore 20
start local 20 182: aload 16
ifnull 184
aload 16
ldc " ClientConnectionId:"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 184
183: aload 16
iconst_0
aload 16
ldc " ClientConnectionId:"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 16
184: StackMap locals: java.text.MessageFormat java.lang.Object[]
StackMap stack:
aload 17
ifnull 188
aload 17
ldc " ClientConnectionId:"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 188
185: aload 17
iconst_0
186: aload 17
ldc " ClientConnectionId:"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
187: invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 17
188: StackMap locals:
StackMap stack:
aload 14
instanceof java.io.IOException
ifeq 193
getstatic com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState.SSL_HANDHSAKE_STARTED:Lcom/microsoft/sqlserver/jdbc/TDSChannel$SSLHandhsakeState;
aload 10
if_acmpne 193
189: ldc "R_truncatedServerResponse"
invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
aload 16
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 191
190: ldc "R_truncatedServerResponse"
invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
aload 17
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 193
191: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
bipush 7
aload 19
aload 20
invokevirtual java.text.MessageFormat.format:(Ljava/lang/Object;)Ljava/lang/String;
aload 14
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate:(ILjava/lang/String;Ljava/lang/Throwable;)V
192: goto 194
193: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
iconst_5
aload 19
aload 20
invokevirtual java.text.MessageFormat.format:(Ljava/lang/Object;)Ljava/lang/String;
aload 14
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate:(ILjava/lang/String;Ljava/lang/Throwable;)V
end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 194: StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String int java.lang.String java.lang.String java.lang.String java.security.Provider java.security.Provider java.security.Provider java.lang.String com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState int java.lang.String java.lang.String
StackMap stack:
return
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 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 195 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
0 195 1 host Ljava/lang/String;
0 195 2 port I
0 195 3 clientCertificate Ljava/lang/String;
0 195 4 clientKey Ljava/lang/String;
0 195 5 clientKeyPassword Ljava/lang/String;
1 195 6 tmfProvider Ljava/security/Provider;
2 195 7 sslContextProvider Ljava/security/Provider;
3 195 8 ksProvider Ljava/security/Provider;
4 195 9 tmfDefaultAlgorithm Ljava/lang/String;
5 195 10 handshakeState Lcom/microsoft/sqlserver/jdbc/TDSChannel$SSLHandhsakeState;
6 195 11 isFips Z
7 195 12 trustStoreType Ljava/lang/String;
8 195 13 sslProtocol Ljava/lang/String;
13 145 14 trustStoreFileName Ljava/lang/String;
16 145 15 trustStorePassword Ljava/lang/String;
19 145 16 hostNameInCertificate Ljava/lang/String;
37 145 17 tm [Ljavax/net/ssl/TrustManager;
45 48 18 msgArgs [Ljava/lang/Object;
52 104 18 ks Ljava/security/KeyStore;
61 85 19 is Ljava/io/InputStream;
86 104 19 tmf Ljavax/net/ssl/TrustManagerFactory;
105 145 18 sslContext Ljavax/net/ssl/SSLContext;
111 145 19 km [Ljavax/net/ssl/KeyManager;
136 145 20 tlsProtocol Ljava/lang/String;
141 143 21 warningMsg Ljava/lang/String;
147 194 14 e Ljava/lang/Exception;
170 194 15 localizedMessage Ljava/lang/String;
173 194 16 errMsg Ljava/lang/String;
174 194 17 causeErrMsg Ljava/lang/String;
175 194 18 cause Ljava/lang/Throwable;
177 180 19 causeLocalizedMessage Ljava/lang/String;
181 194 19 form Ljava/text/MessageFormat;
182 194 20 msgArgs [Ljava/lang/Object;
Exception table:
from to target type
63 67 67 any
71 72 73 Class java.io.IOException
80 81 82 Class java.io.IOException
8 145 146 Class java.lang.Exception
Exceptions:
throws com.microsoft.sqlserver.jdbc.SQLServerException
MethodParameters:
Name Flags
host
port
clientCertificate
clientKey
clientKeyPassword
private void validateFips(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=9, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: ldc "R_invalidFipsConfig"
invokestatic com.microsoft.sqlserver.jdbc.SQLServerException.getErrString:(Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 2: iconst_1
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.getRequestedEncryptionLevel:()B
if_icmpne 3
iconst_1
goto 4
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String java.lang.String int top top top top java.lang.String
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: istore 4
start local 4 5: aload 1
invokestatic com.microsoft.sqlserver.jdbc.StringUtils.isEmpty:(Ljava/lang/CharSequence;)Z
ifeq 6
iconst_0
goto 7
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String java.lang.String int int top top top java.lang.String
StackMap stack:
6: iconst_1
StackMap locals:
StackMap stack: int
7: istore 5
start local 5 8: aload 2
invokestatic com.microsoft.sqlserver.jdbc.StringUtils.isEmpty:(Ljava/lang/CharSequence;)Z
ifeq 9
iconst_0
goto 10
StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String java.lang.String int int int top top java.lang.String
StackMap stack:
9: iconst_1
StackMap locals:
StackMap stack: int
10: istore 6
start local 6 11: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.trustServerCertificate:()Z
istore 7
start local 7 12: iload 4
ifeq 18
iload 7
ifne 18
13: iconst_1
istore 3
14: iload 6
ifeq 18
iload 5
ifne 18
15: iconst_0
istore 3
16: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 18
17: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "TrustStoreType is required alongside with TrustStore."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
18: StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel java.lang.String java.lang.String int int int int int java.lang.String
StackMap stack:
iload 3
ifne 20
19: new com.microsoft.sqlserver.jdbc.SQLServerException
dup
aload 8
aconst_null
iconst_0
aconst_null
invokespecial com.microsoft.sqlserver.jdbc.SQLServerException.<init>:(Ljava/lang/String;Ljava/lang/String;ILjava/lang/Throwable;)V
athrow
20: StackMap locals:
StackMap stack:
return
end local 8 end local 7 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 21 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
0 21 1 trustStoreType Ljava/lang/String;
0 21 2 trustStoreFileName Ljava/lang/String;
1 21 3 isValid Z
5 21 4 isEncryptOn Z
8 21 5 isValidTrustStoreType Z
11 21 6 isValidTrustStore Z
12 21 7 isTrustServerCertificate Z
2 21 8 strError Ljava/lang/String;
Exceptions:
throws com.microsoft.sqlserver.jdbc.SQLServerException
MethodParameters:
Name Flags
trustStoreType final
trustStoreFileName final
final java.io.InputStream loadTrustStore(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/io/InputStream;
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 1
ifnull 10
2: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 4
3: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Opening specified trust store: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
4: StackMap locals: java.io.FileInputStream
StackMap stack:
new java.io.FileInputStream
dup
aload 1
invokespecial java.io.FileInputStream.<init>:(Ljava/lang/String;)V
astore 2
5: goto 36
StackMap locals:
StackMap stack: java.io.FileNotFoundException
6: astore 3
start local 3 7: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 36
8: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Trust store not found: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.io.FileNotFoundException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
end local 3 9: goto 36
10: StackMap locals:
StackMap stack:
ldc "javax.net.ssl.trustStore"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
dup
astore 1
ifnull 21
11: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 15
12: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Opening default trust store (from javax.net.ssl.trustStore): "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
13: aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
14: invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
15: StackMap locals:
StackMap stack:
new java.io.FileInputStream
dup
aload 1
invokespecial java.io.FileInputStream.<init>:(Ljava/lang/String;)V
astore 2
16: goto 36
StackMap locals:
StackMap stack: java.io.FileNotFoundException
17: astore 3
start local 3 18: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 36
19: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Trust store not found: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.io.FileNotFoundException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
end local 3 20: goto 36
21: StackMap locals:
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 23
22: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Opening default trust store: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.JSSECACERTS:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
23: StackMap locals:
StackMap stack:
new java.io.FileInputStream
dup
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.JSSECACERTS:Ljava/lang/String;
invokespecial java.io.FileInputStream.<init>:(Ljava/lang/String;)V
astore 2
24: goto 28
StackMap locals:
StackMap stack: java.io.FileNotFoundException
25: astore 3
start local 3 26: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 28
27: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Trust store not found: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.io.FileNotFoundException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
end local 3 28: StackMap locals:
StackMap stack:
aload 2
ifnonnull 36
29: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 31
30: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Opening default trust store: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.CACERTS:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
31: StackMap locals:
StackMap stack:
new java.io.FileInputStream
dup
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.CACERTS:Ljava/lang/String;
invokespecial java.io.FileInputStream.<init>:(Ljava/lang/String;)V
astore 2
32: goto 36
StackMap locals:
StackMap stack: java.io.FileNotFoundException
33: astore 3
start local 3 34: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 36
35: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Trust store not found: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.io.FileNotFoundException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
end local 3 36: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 37 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
0 37 1 trustStoreFileName Ljava/lang/String;
1 37 2 is Ljava/io/FileInputStream;
7 9 3 e Ljava/io/FileNotFoundException;
18 20 3 e Ljava/io/FileNotFoundException;
26 28 3 e Ljava/io/FileNotFoundException;
34 36 3 e Ljava/io/FileNotFoundException;
Exception table:
from to target type
2 5 6 Class java.io.FileNotFoundException
11 16 17 Class java.io.FileNotFoundException
21 24 25 Class java.io.FileNotFoundException
29 32 33 Class java.io.FileNotFoundException
MethodParameters:
Name Flags
trustStoreFileName
final int read(byte[], int, int);
descriptor: ([BII)I
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.inputStream:Ljava/io/InputStream;
aload 1
iload 2
iload 3
invokevirtual java.io.InputStream.read:([BII)I
1: ireturn
2: StackMap locals:
StackMap stack: java.io.IOException
astore 4
start local 4 3: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 5
4: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " read failed:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.fine:(Ljava/lang/String;)V
5: StackMap locals: java.io.IOException
StackMap stack:
aload 4
instanceof java.net.SocketTimeoutException
ifeq 8
6: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
bipush 8
aload 4
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
aload 4
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate:(ILjava/lang/String;Ljava/lang/Throwable;)V
7: goto 9
8: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
iconst_3
aload 4
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
aload 4
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate:(ILjava/lang/String;Ljava/lang/Throwable;)V
9: StackMap locals:
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 10 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
0 10 1 data [B
0 10 2 offset I
0 10 3 length I
3 10 4 e Ljava/io/IOException;
Exception table:
from to target type
0 1 2 Class java.io.IOException
Exceptions:
throws com.microsoft.sqlserver.jdbc.SQLServerException
MethodParameters:
Name Flags
data
offset
length
final void write(byte[], int, int);
descriptor: ([BII)V
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.outputStream:Ljava/io/OutputStream;
aload 1
iload 2
iload 3
invokevirtual java.io.OutputStream.write:([BII)V
1: goto 6
StackMap locals:
StackMap stack: java.io.IOException
2: astore 4
start local 4 3: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 5
4: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " write failed:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
5: StackMap locals: java.io.IOException
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
iconst_3
aload 4
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
aload 4
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate:(ILjava/lang/String;Ljava/lang/Throwable;)V
end local 4 6: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
0 7 1 data [B
0 7 2 offset I
0 7 3 length I
3 6 4 e Ljava/io/IOException;
Exception table:
from to target type
0 1 2 Class java.io.IOException
Exceptions:
throws com.microsoft.sqlserver.jdbc.SQLServerException
MethodParameters:
Name Flags
data
offset
length
final void flush();
descriptor: ()V
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.outputStream:Ljava/io/OutputStream;
invokevirtual java.io.OutputStream.flush:()V
1: goto 6
StackMap locals:
StackMap stack: java.io.IOException
2: astore 1
start local 1 3: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 5
4: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " flush failed:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
5: StackMap locals: java.io.IOException
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.con:Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;
iconst_3
aload 1
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
aload 1
invokevirtual com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate:(ILjava/lang/String;Ljava/lang/Throwable;)V
end local 1 6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
3 6 1 e Ljava/io/IOException;
Exception table:
from to target type
0 1 2 Class java.io.IOException
Exceptions:
throws com.microsoft.sqlserver.jdbc.SQLServerException
final void close();
descriptor: ()V
flags: (0x0010) ACC_FINAL
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.sslSocket:Ljavax/net/ssl/SSLSocket;
ifnull 2
1: aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.disableSSL:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.inputStream:Ljava/io/InputStream;
ifnull 10
3: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 5
4: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": Closing inputStream..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.inputStream:Ljava/io/InputStream;
invokevirtual java.io.InputStream.close:()V
6: goto 10
StackMap locals:
StackMap stack: java.io.IOException
7: astore 1
start local 1 8: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 10
9: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": Ignored error closing inputStream"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
end local 1 10: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.outputStream:Ljava/io/OutputStream;
ifnull 18
11: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 13
12: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": Closing outputStream..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
13: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.outputStream:Ljava/io/OutputStream;
invokevirtual java.io.OutputStream.close:()V
14: goto 18
StackMap locals:
StackMap stack: java.io.IOException
15: astore 1
start local 1 16: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 18
17: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": Ignored error closing outputStream"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
end local 1 18: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
ifnull 26
19: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 21
20: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": Closing TCP socket..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finer:(Ljava/lang/String;)V
21: StackMap locals:
StackMap stack:
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
invokevirtual java.net.Socket.close:()V
22: goto 26
StackMap locals:
StackMap stack: java.io.IOException
23: astore 1
start local 1 24: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 26
25: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.logger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.microsoft.sqlserver.jdbc.TDSChannel.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": Ignored error closing socket"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
end local 1 26: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
8 10 1 e Ljava/io/IOException;
16 18 1 e Ljava/io/IOException;
24 26 1 e Ljava/io/IOException;
Exception table:
from to target type
5 6 7 Class java.io.IOException
13 14 15 Class java.io.IOException
21 22 23 Class java.io.IOException
void logPacket(byte[], int, int, java.lang.String);
descriptor: ([BIILjava/lang/String;)V
flags: (0x0000)
Code:
stack=7, locals=13, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.$assertionsDisabled:Z
ifne 2
iload 3
iflt 1
iload 3
aload 1
arraylength
if_icmple 2
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.$assertionsDisabled:Z
ifne 4
iload 2
iflt 3
iload 2
aload 1
arraylength
if_icmple 4
StackMap locals:
StackMap stack:
3: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
bipush 16
newarray 5
dup
iconst_0
bipush 48
castore
dup
iconst_1
bipush 49
castore
dup
iconst_2
bipush 50
castore
dup
iconst_3
bipush 51
castore
dup
iconst_4
bipush 52
castore
dup
iconst_5
bipush 53
castore
dup
bipush 6
bipush 54
castore
dup
bipush 7
bipush 55
castore
dup
bipush 8
bipush 56
castore
dup
bipush 9
bipush 57
castore
dup
bipush 10
bipush 65
castore
dup
bipush 11
bipush 66
castore
dup
bipush 12
bipush 67
castore
dup
bipush 13
bipush 68
castore
dup
bipush 14
bipush 69
castore
dup
bipush 15
bipush 70
castore
astore 5
start local 5 5: sipush 256
newarray 5
dup
iconst_0
bipush 46
castore
dup
iconst_1
bipush 46
castore
dup
iconst_2
bipush 46
castore
dup
iconst_3
bipush 46
castore
dup
iconst_4
bipush 46
castore
dup
iconst_5
bipush 46
castore
dup
bipush 6
bipush 46
castore
dup
bipush 7
bipush 46
castore
dup
bipush 8
bipush 46
castore
dup
bipush 9
bipush 46
castore
dup
bipush 10
bipush 46
castore
dup
bipush 11
bipush 46
castore
dup
bipush 12
bipush 46
castore
dup
bipush 13
bipush 46
castore
dup
bipush 14
bipush 46
castore
dup
bipush 15
bipush 46
castore
dup
bipush 16
6: bipush 46
castore
dup
bipush 17
bipush 46
castore
dup
bipush 18
bipush 46
castore
dup
bipush 19
bipush 46
castore
dup
bipush 20
bipush 46
castore
dup
bipush 21
bipush 46
castore
dup
bipush 22
bipush 46
castore
dup
bipush 23
bipush 46
castore
dup
bipush 24
bipush 46
castore
dup
bipush 25
bipush 46
castore
dup
bipush 26
bipush 46
castore
dup
bipush 27
bipush 46
castore
dup
bipush 28
bipush 46
castore
dup
bipush 29
bipush 46
castore
dup
bipush 30
bipush 46
castore
dup
bipush 31
bipush 46
castore
dup
bipush 32
bipush 32
castore
dup
bipush 33
bipush 33
castore
dup
bipush 34
bipush 34
castore
dup
bipush 35
bipush 35
castore
dup
bipush 36
7: bipush 36
castore
dup
bipush 37
bipush 37
castore
dup
bipush 38
bipush 38
castore
dup
bipush 39
bipush 39
castore
dup
bipush 40
bipush 40
castore
dup
bipush 41
bipush 41
castore
dup
bipush 42
bipush 42
castore
dup
bipush 43
bipush 43
castore
dup
bipush 44
bipush 44
castore
dup
bipush 45
bipush 45
castore
dup
bipush 46
bipush 46
castore
dup
bipush 47
bipush 47
castore
dup
bipush 48
bipush 48
castore
dup
bipush 49
bipush 49
castore
dup
bipush 50
bipush 50
castore
dup
bipush 51
bipush 51
castore
dup
bipush 52
bipush 52
castore
dup
bipush 53
bipush 53
castore
dup
bipush 54
bipush 54
castore
dup
bipush 55
bipush 55
castore
dup
bipush 56
8: bipush 56
castore
dup
bipush 57
bipush 57
castore
dup
bipush 58
bipush 58
castore
dup
bipush 59
bipush 59
castore
dup
bipush 60
bipush 60
castore
dup
bipush 61
bipush 61
castore
dup
bipush 62
bipush 62
castore
dup
bipush 63
bipush 63
castore
dup
bipush 64
bipush 64
castore
dup
bipush 65
bipush 65
castore
dup
bipush 66
bipush 66
castore
dup
bipush 67
bipush 67
castore
dup
bipush 68
bipush 68
castore
dup
bipush 69
bipush 69
castore
dup
bipush 70
bipush 70
castore
dup
bipush 71
bipush 71
castore
dup
bipush 72
bipush 72
castore
dup
bipush 73
bipush 73
castore
dup
bipush 74
bipush 74
castore
dup
bipush 75
bipush 75
castore
dup
bipush 76
bipush 76
castore
dup
bipush 77
9: bipush 77
castore
dup
bipush 78
bipush 78
castore
dup
bipush 79
bipush 79
castore
dup
bipush 80
bipush 80
castore
dup
bipush 81
bipush 81
castore
dup
bipush 82
bipush 82
castore
dup
bipush 83
bipush 83
castore
dup
bipush 84
bipush 84
castore
dup
bipush 85
bipush 85
castore
dup
bipush 86
bipush 86
castore
dup
bipush 87
bipush 87
castore
dup
bipush 88
bipush 88
castore
dup
bipush 89
bipush 89
castore
dup
bipush 90
bipush 90
castore
dup
bipush 91
bipush 91
castore
dup
bipush 92
bipush 92
castore
dup
bipush 93
bipush 93
castore
dup
bipush 94
bipush 94
castore
dup
bipush 95
bipush 95
castore
dup
bipush 96
bipush 96
castore
dup
bipush 97
10: bipush 97
castore
dup
bipush 98
bipush 98
castore
dup
bipush 99
bipush 99
castore
dup
bipush 100
bipush 100
castore
dup
bipush 101
bipush 101
castore
dup
bipush 102
bipush 102
castore
dup
bipush 103
bipush 103
castore
dup
bipush 104
bipush 104
castore
dup
bipush 105
bipush 105
castore
dup
bipush 106
bipush 106
castore
dup
bipush 107
bipush 107
castore
dup
bipush 108
bipush 108
castore
dup
bipush 109
bipush 109
castore
dup
bipush 110
bipush 110
castore
dup
bipush 111
bipush 111
castore
dup
bipush 112
bipush 112
castore
dup
bipush 113
bipush 113
castore
dup
bipush 114
bipush 114
castore
dup
bipush 115
bipush 115
castore
dup
bipush 116
bipush 116
castore
dup
bipush 117
bipush 117
castore
dup
bipush 118
11: bipush 118
castore
dup
bipush 119
bipush 119
castore
dup
bipush 120
bipush 120
castore
dup
bipush 121
bipush 121
castore
dup
bipush 122
bipush 122
castore
dup
bipush 123
bipush 123
castore
dup
bipush 124
bipush 124
castore
dup
bipush 125
bipush 125
castore
dup
bipush 126
bipush 126
castore
dup
bipush 127
bipush 46
castore
dup
sipush 128
bipush 46
castore
dup
sipush 129
bipush 46
castore
dup
sipush 130
bipush 46
castore
dup
sipush 131
bipush 46
castore
dup
sipush 132
bipush 46
castore
dup
sipush 133
bipush 46
castore
dup
sipush 134
bipush 46
castore
dup
sipush 135
bipush 46
castore
dup
sipush 136
bipush 46
castore
dup
sipush 137
bipush 46
castore
dup
sipush 138
bipush 46
castore
dup
sipush 139
12: bipush 46
castore
dup
sipush 140
bipush 46
castore
dup
sipush 141
bipush 46
castore
dup
sipush 142
bipush 46
castore
dup
sipush 143
bipush 46
castore
dup
sipush 144
bipush 46
castore
dup
sipush 145
bipush 46
castore
dup
sipush 146
bipush 46
castore
dup
sipush 147
bipush 46
castore
dup
sipush 148
bipush 46
castore
dup
sipush 149
bipush 46
castore
dup
sipush 150
bipush 46
castore
dup
sipush 151
bipush 46
castore
dup
sipush 152
bipush 46
castore
dup
sipush 153
bipush 46
castore
dup
sipush 154
bipush 46
castore
dup
sipush 155
bipush 46
castore
dup
sipush 156
bipush 46
castore
dup
sipush 157
bipush 46
castore
dup
sipush 158
bipush 46
castore
dup
sipush 159
bipush 46
castore
dup
sipush 160
13: bipush 46
castore
dup
sipush 161
bipush 46
castore
dup
sipush 162
bipush 46
castore
dup
sipush 163
bipush 46
castore
dup
sipush 164
bipush 46
castore
dup
sipush 165
bipush 46
castore
dup
sipush 166
bipush 46
castore
dup
sipush 167
bipush 46
castore
dup
sipush 168
bipush 46
castore
dup
sipush 169
bipush 46
castore
dup
sipush 170
bipush 46
castore
dup
sipush 171
bipush 46
castore
dup
sipush 172
bipush 46
castore
dup
sipush 173
bipush 46
castore
dup
sipush 174
bipush 46
castore
dup
sipush 175
bipush 46
castore
dup
sipush 176
bipush 46
castore
dup
sipush 177
bipush 46
castore
dup
sipush 178
bipush 46
castore
dup
sipush 179
bipush 46
castore
dup
sipush 180
bipush 46
castore
dup
sipush 181
14: bipush 46
castore
dup
sipush 182
bipush 46
castore
dup
sipush 183
bipush 46
castore
dup
sipush 184
bipush 46
castore
dup
sipush 185
bipush 46
castore
dup
sipush 186
bipush 46
castore
dup
sipush 187
bipush 46
castore
dup
sipush 188
bipush 46
castore
dup
sipush 189
bipush 46
castore
dup
sipush 190
bipush 46
castore
dup
sipush 191
bipush 46
castore
dup
sipush 192
bipush 46
castore
dup
sipush 193
bipush 46
castore
dup
sipush 194
bipush 46
castore
dup
sipush 195
bipush 46
castore
dup
sipush 196
bipush 46
castore
dup
sipush 197
bipush 46
castore
dup
sipush 198
bipush 46
castore
dup
sipush 199
bipush 46
castore
dup
sipush 200
bipush 46
castore
dup
sipush 201
bipush 46
castore
dup
sipush 202
15: bipush 46
castore
dup
sipush 203
bipush 46
castore
dup
sipush 204
bipush 46
castore
dup
sipush 205
bipush 46
castore
dup
sipush 206
bipush 46
castore
dup
sipush 207
bipush 46
castore
dup
sipush 208
bipush 46
castore
dup
sipush 209
bipush 46
castore
dup
sipush 210
bipush 46
castore
dup
sipush 211
bipush 46
castore
dup
sipush 212
bipush 46
castore
dup
sipush 213
bipush 46
castore
dup
sipush 214
bipush 46
castore
dup
sipush 215
bipush 46
castore
dup
sipush 216
bipush 46
castore
dup
sipush 217
bipush 46
castore
dup
sipush 218
bipush 46
castore
dup
sipush 219
bipush 46
castore
dup
sipush 220
bipush 46
castore
dup
sipush 221
bipush 46
castore
dup
sipush 222
bipush 46
castore
dup
sipush 223
16: bipush 46
castore
dup
sipush 224
bipush 46
castore
dup
sipush 225
bipush 46
castore
dup
sipush 226
bipush 46
castore
dup
sipush 227
bipush 46
castore
dup
sipush 228
bipush 46
castore
dup
sipush 229
bipush 46
castore
dup
sipush 230
bipush 46
castore
dup
sipush 231
bipush 46
castore
dup
sipush 232
bipush 46
castore
dup
sipush 233
bipush 46
castore
dup
sipush 234
bipush 46
castore
dup
sipush 235
bipush 46
castore
dup
sipush 236
bipush 46
castore
dup
sipush 237
bipush 46
castore
dup
sipush 238
bipush 46
castore
dup
sipush 239
bipush 46
castore
dup
sipush 240
bipush 46
castore
dup
sipush 241
bipush 46
castore
dup
sipush 242
bipush 46
castore
dup
sipush 243
bipush 46
castore
dup
sipush 244
17: bipush 46
castore
dup
sipush 245
bipush 46
castore
dup
sipush 246
bipush 46
castore
dup
sipush 247
bipush 46
castore
dup
sipush 248
bipush 46
castore
dup
sipush 249
bipush 46
castore
dup
sipush 250
bipush 46
castore
dup
sipush 251
bipush 46
castore
dup
sipush 252
bipush 46
castore
dup
sipush 253
bipush 46
castore
dup
sipush 254
bipush 46
castore
dup
sipush 255
bipush 46
castore
18: astore 6
start local 6 19: bipush 66
newarray 5
dup
iconst_0
bipush 32
castore
dup
iconst_1
bipush 32
castore
dup
iconst_2
bipush 32
castore
dup
iconst_3
bipush 32
castore
dup
iconst_4
bipush 32
castore
dup
iconst_5
bipush 32
castore
dup
bipush 6
bipush 32
castore
dup
bipush 7
bipush 32
castore
dup
bipush 8
bipush 32
castore
dup
bipush 9
bipush 32
castore
dup
bipush 10
bipush 32
castore
dup
bipush 11
bipush 32
castore
dup
bipush 12
bipush 32
castore
dup
bipush 13
bipush 32
castore
dup
bipush 14
bipush 32
castore
dup
bipush 15
bipush 32
castore
dup
bipush 16
20: bipush 32
castore
dup
bipush 17
bipush 32
castore
dup
bipush 18
bipush 32
castore
dup
bipush 19
bipush 32
castore
dup
bipush 20
bipush 32
castore
dup
bipush 21
bipush 32
castore
dup
bipush 22
bipush 32
castore
dup
bipush 23
bipush 32
castore
dup
bipush 24
bipush 32
castore
dup
bipush 25
bipush 32
castore
dup
bipush 26
bipush 32
castore
dup
bipush 27
bipush 32
castore
dup
bipush 28
bipush 32
castore
dup
bipush 29
bipush 32
castore
dup
bipush 30
bipush 32
castore
dup
bipush 31
bipush 32
castore
dup
bipush 32
bipush 32
castore
dup
bipush 33
bipush 32
castore
dup
bipush 34
bipush 32
castore
dup
bipush 35
bipush 32
castore
dup
bipush 36
bipush 32
castore
dup
bipush 37
21: bipush 32
castore
dup
bipush 38
bipush 32
castore
dup
bipush 39
bipush 32
castore
dup
bipush 40
bipush 32
castore
dup
bipush 41
bipush 32
castore
dup
bipush 42
bipush 32
castore
dup
bipush 43
bipush 32
castore
dup
bipush 44
bipush 32
castore
dup
bipush 45
bipush 32
castore
dup
bipush 46
bipush 32
castore
dup
bipush 47
bipush 32
castore
dup
bipush 48
22: bipush 32
castore
dup
bipush 49
bipush 32
castore
dup
bipush 50
23: bipush 46
castore
dup
bipush 51
bipush 46
castore
dup
bipush 52
bipush 46
castore
dup
bipush 53
bipush 46
castore
dup
bipush 54
bipush 46
castore
dup
bipush 55
bipush 46
castore
dup
bipush 56
bipush 46
castore
dup
bipush 57
bipush 46
castore
dup
bipush 58
bipush 46
castore
dup
bipush 59
bipush 46
castore
dup
bipush 60
bipush 46
castore
dup
bipush 61
bipush 46
castore
dup
bipush 62
bipush 46
castore
dup
bipush 63
bipush 46
castore
dup
bipush 64
bipush 46
castore
dup
bipush 65
bipush 46
castore
24: astore 7
start local 7 25: aload 7
arraylength
newarray 5
astore 8
start local 8 26: aload 7
iconst_0
aload 8
iconst_0
aload 7
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
27: new java.lang.StringBuilder
dup
aload 4
invokevirtual java.lang.String.length:()I
28: iconst_4
iload 3
imul
iadd
29: iconst_4
iconst_1
iload 3
bipush 16
idiv
iadd
imul
iadd
30: bipush 80
iadd
31: invokespecial java.lang.StringBuilder.<init>:(I)V
astore 9
start local 9 32: aload 9
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
invokevirtual java.net.Socket.getLocalAddress:()Ljava/net/InetAddress;
invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
invokevirtual java.net.Socket.getLocalPort:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
33: ldc " SPID:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.spid:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
34: iconst_0
istore 10
start local 10 35: StackMap locals: com.microsoft.sqlserver.jdbc.TDSChannel byte[] int int java.lang.String char[] char[] char[] char[] java.lang.StringBuilder int
StackMap stack:
iconst_0
istore 11
start local 11 36: goto 42
37: StackMap locals: int
StackMap stack:
aload 1
iload 2
iload 10
iadd
baload
sipush 256
iadd
sipush 256
irem
istore 12
start local 12 38: aload 8
iconst_3
iload 11
imul
aload 5
iload 12
bipush 16
idiv
caload
castore
39: aload 8
iconst_3
iload 11
imul
iconst_1
iadd
aload 5
iload 12
bipush 16
irem
caload
castore
40: aload 8
bipush 50
iload 11
iadd
aload 6
iload 12
caload
castore
end local 12 41: iinc 11 1
iinc 10 1
StackMap locals:
StackMap stack:
42: iload 11
bipush 16
if_icmpge 43
iload 10
iload 3
if_icmplt 37
43: StackMap locals:
StackMap stack:
iload 11
istore 12
start local 12 44: goto 48
45: StackMap locals: int
StackMap stack:
aload 8
iconst_3
iload 12
imul
bipush 32
castore
46: aload 8
iconst_3
iload 12
imul
iconst_1
iadd
bipush 32
castore
47: iinc 12 1
StackMap locals:
StackMap stack:
48: iload 12
bipush 16
if_icmplt 45
end local 12 49: aload 9
aload 8
iconst_0
bipush 50
iload 11
iadd
invokevirtual java.lang.StringBuilder.append:([CII)Ljava/lang/StringBuilder;
pop
50: iload 10
iload 3
if_icmpne 52
51: goto 54
52: StackMap locals:
StackMap stack:
aload 9
ldc "\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 11 53: goto 35
start local 11 54: StackMap locals:
StackMap stack:
getstatic com.microsoft.sqlserver.jdbc.TDSChannel.packetLogger:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 56
55: getstatic com.microsoft.sqlserver.jdbc.TDSChannel.packetLogger:Ljava/util/logging/Logger;
aload 9
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.finest:(Ljava/lang/String;)V
56: StackMap locals:
StackMap stack:
return
end local 11 end local 10 end local 9 end local 8 end local 7 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 57 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
0 57 1 data [B
0 57 2 nStartOffset I
0 57 3 nLength I
0 57 4 messageDetail Ljava/lang/String;
5 57 5 hexChars [C
19 57 6 printableChars [C
25 57 7 lineTemplate [C
26 57 8 logLine [C
32 57 9 logMsg Ljava/lang/StringBuilder;
35 57 10 nBytesLogged I
36 53 11 nBytesThisLine I
54 57 11 nBytesThisLine I
38 41 12 nUnsignedByteVal I
44 49 12 nBytesJustified I
MethodParameters:
Name Flags
data
nStartOffset
nLength
messageDetail
final int getNetworkTimeout();
descriptor: ()I
flags: (0x0010) ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
invokevirtual java.net.Socket.getSoTimeout:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
Exceptions:
throws java.io.IOException
final void setNetworkTimeout(int);
descriptor: (I)V
flags: (0x0010) ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.microsoft.sqlserver.jdbc.TDSChannel.tcpSocket:Ljava/net/Socket;
iload 1
invokevirtual java.net.Socket.setSoTimeout:(I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/microsoft/sqlserver/jdbc/TDSChannel;
0 2 1 timeout I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
timeout
}
SourceFile: "IOBuffer.java"
NestMembers:
com.microsoft.sqlserver.jdbc.TDSChannel$HostNameOverrideX509TrustManager com.microsoft.sqlserver.jdbc.TDSChannel$PermissiveX509TrustManager com.microsoft.sqlserver.jdbc.TDSChannel$ProxyInputStream com.microsoft.sqlserver.jdbc.TDSChannel$ProxyOutputStream com.microsoft.sqlserver.jdbc.TDSChannel$ProxySocket com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandshakeInputStream com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandshakeOutputStream
InnerClasses:
private final HostNameOverrideX509TrustManager = com.microsoft.sqlserver.jdbc.TDSChannel$HostNameOverrideX509TrustManager of com.microsoft.sqlserver.jdbc.TDSChannel
private final PermissiveX509TrustManager = com.microsoft.sqlserver.jdbc.TDSChannel$PermissiveX509TrustManager of com.microsoft.sqlserver.jdbc.TDSChannel
private final ProxyInputStream = com.microsoft.sqlserver.jdbc.TDSChannel$ProxyInputStream of com.microsoft.sqlserver.jdbc.TDSChannel
final ProxyOutputStream = com.microsoft.sqlserver.jdbc.TDSChannel$ProxyOutputStream of com.microsoft.sqlserver.jdbc.TDSChannel
private ProxySocket = com.microsoft.sqlserver.jdbc.TDSChannel$ProxySocket of com.microsoft.sqlserver.jdbc.TDSChannel
final SSLHandhsakeState = com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandhsakeState of com.microsoft.sqlserver.jdbc.TDSChannel
private SSLHandshakeInputStream = com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandshakeInputStream of com.microsoft.sqlserver.jdbc.TDSChannel
private SSLHandshakeOutputStream = com.microsoft.sqlserver.jdbc.TDSChannel$SSLHandshakeOutputStream of com.microsoft.sqlserver.jdbc.TDSChannel
public Service = java.security.Provider$Service of java.security.Provider