public final class io.netty.internal.tcnative.SSLContext
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: io.netty.internal.tcnative.SSLContext
  super_class: java.lang.Object
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.netty.internal.tcnative.SSLContext this
         0: .line 37
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // io.netty.internal.tcnative.SSLContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/netty/internal/tcnative/SSLContext;

  public static native long make(int, int);
    descriptor: (II)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
          Name  Flags
      protocol  
      mode      

  public static native int free(long);
    descriptor: (J)I
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native void setContextId(long, java.lang.String);
    descriptor: (JLjava/lang/String;)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   
      id    

  public static native void setOptions(long, int);
    descriptor: (JI)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
         Name  Flags
      ctx      
      options  

  public static native int getOptions(long);
    descriptor: (J)I
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native void clearOptions(long, int);
    descriptor: (JI)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
         Name  Flags
      ctx      
      options  

  public static native boolean setCipherSuite(long, java.lang.String);
    descriptor: (JLjava/lang/String;)Z
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
         Name  Flags
      ctx      
      ciphers  

  public static native boolean setCertificateChainFile(long, java.lang.String, boolean);
    descriptor: (JLjava/lang/String;Z)Z
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
           Name  Flags
      ctx        
      file       
      skipfirst  

  public static native boolean setCertificateChainBio(long, long, boolean);
    descriptor: (JJZ)Z
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
           Name  Flags
      ctx        
      bio        
      skipfirst  

  public static native boolean setCertificate(long, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
          Name  Flags
      ctx       
      cert      
      key       
      password  

  public static native boolean setCertificateBio(long, long, long, java.lang.String);
    descriptor: (JJJLjava/lang/String;)Z
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
          Name  Flags
      ctx       
      certBio   
      keyBio    
      password  

  public static native long setSessionCacheSize(long, long);
    descriptor: (JJ)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   
      size  

  public static native long getSessionCacheSize(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long setSessionCacheTimeout(long, long);
    descriptor: (JJ)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
                Name  Flags
      ctx             
      timeoutSeconds  

  public static native long getSessionCacheTimeout(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long setSessionCacheMode(long, long);
    descriptor: (JJ)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   
      mode  

  public static native long getSessionCacheMode(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionAccept(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionAcceptGood(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionAcceptRenegotiate(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionCacheFull(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionCbHits(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionConnect(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionConnectGood(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionConnectRenegotiate(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionHits(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionMisses(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionNumber(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionTimeouts(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionTicketKeyNew(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionTicketKeyResume(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionTicketKeyRenew(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native long sessionTicketKeyFail(long);
    descriptor: (J)J
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static void setSessionTicketKeys(long, io.netty.internal.tcnative.SessionTicketKey[]);
    descriptor: (J[Lio/netty/internal/tcnative/SessionTicketKey;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // long ctx
        start local 2 // io.netty.internal.tcnative.SessionTicketKey[] keys
         0: .line 401
            aload 2 /* keys */
            ifnull 1
            aload 2 /* keys */
            arraylength
            ifne 2
         1: .line 402
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Length of the keys should be longer than 0."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 404
      StackMap locals:
      StackMap stack:
            aload 2 /* keys */
            arraylength
            bipush 48
            imul
            newarray 8
            astore 3 /* binaryKeys */
        start local 3 // byte[] binaryKeys
         3: .line 405
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 13
         5: .line 406
      StackMap locals: byte[] int
      StackMap stack:
            aload 2 /* keys */
            iload 4 /* i */
            aaload
            astore 5 /* key */
        start local 5 // io.netty.internal.tcnative.SessionTicketKey key
         6: .line 407
            bipush 48
            iload 4 /* i */
            imul
            istore 6 /* dstCurPos */
        start local 6 // int dstCurPos
         7: .line 408
            aload 5 /* key */
            getfield io.netty.internal.tcnative.SessionTicketKey.name:[B
            iconst_0
            aload 3 /* binaryKeys */
            iload 6 /* dstCurPos */
            bipush 16
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 409
            iinc 6 /* dstCurPos */ 16
         9: .line 410
            aload 5 /* key */
            getfield io.netty.internal.tcnative.SessionTicketKey.hmacKey:[B
            iconst_0
            aload 3 /* binaryKeys */
            iload 6 /* dstCurPos */
            bipush 16
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        10: .line 411
            iinc 6 /* dstCurPos */ 16
        11: .line 412
            aload 5 /* key */
            getfield io.netty.internal.tcnative.SessionTicketKey.aesKey:[B
            iconst_0
            aload 3 /* binaryKeys */
            iload 6 /* dstCurPos */
            bipush 16
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        end local 6 // int dstCurPos
        end local 5 // io.netty.internal.tcnative.SessionTicketKey key
        12: .line 405
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 4 /* i */
            aload 2 /* keys */
            arraylength
            if_icmplt 5
        end local 4 // int i
        14: .line 414
            lload 0 /* ctx */
            aload 3 /* binaryKeys */
            invokestatic io.netty.internal.tcnative.SSLContext.setSessionTicketKeys0:(J[B)V
        15: .line 415
            return
        end local 3 // byte[] binaryKeys
        end local 2 // io.netty.internal.tcnative.SessionTicketKey[] keys
        end local 0 // long ctx
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0         ctx  J
            0   16     2        keys  [Lio/netty/internal/tcnative/SessionTicketKey;
            3   16     3  binaryKeys  [B
            4   14     4           i  I
            6   12     5         key  Lio/netty/internal/tcnative/SessionTicketKey;
            7   12     6   dstCurPos  I
    MethodParameters:
      Name  Flags
      ctx   
      keys  

  private static native void setSessionTicketKeys0(long, byte[]);
    descriptor: (J[B)V
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   
      keys  

  public static native boolean setCACertificateBio(long, long);
    descriptor: (JJ)Z
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
         Name  Flags
      ctx      
      certBio  

  public static native void setVerify(long, int, int);
    descriptor: (JII)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
       Name  Flags
      ctx    
      level  
      depth  

  public static native void setCertVerifyCallback(long, io.netty.internal.tcnative.CertificateVerifier);
    descriptor: (JLio/netty/internal/tcnative/CertificateVerifier;)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
          Name  Flags
      ctx       
      verifier  

  public static native void setCertRequestedCallback(long, io.netty.internal.tcnative.CertificateRequestedCallback);
    descriptor: (JLio/netty/internal/tcnative/CertificateRequestedCallback;)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
          Name  Flags
      ctx       
      callback  

  public static native void setSniHostnameMatcher(long, io.netty.internal.tcnative.SniHostNameMatcher);
    descriptor: (JLio/netty/internal/tcnative/SniHostNameMatcher;)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
         Name  Flags
      ctx      
      matcher  

  public static native void setNpnProtos(long, java.lang.String[], int);
    descriptor: (J[Ljava/lang/String;I)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
                         Name  Flags
      ctx                      
      nextProtos               
      selectorFailureBehavior  

  public static native void setAlpnProtos(long, java.lang.String[], int);
    descriptor: (J[Ljava/lang/String;I)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
                         Name  Flags
      ctx                      
      alpnProtos               
      selectorFailureBehavior  

  public static native void setTmpDHLength(long, int);
    descriptor: (JI)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
        Name  Flags
      ctx     
      length  

  public static native boolean setSessionIdContext(long, byte[]);
    descriptor: (J[B)Z
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
        Name  Flags
      ctx     
      sidCtx  

  public static native int setMode(long, int);
    descriptor: (JI)I
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   
      mode  

  public static native int getMode(long);
    descriptor: (J)I
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   

  public static native void enableOcsp(long, boolean);
    descriptor: (JZ)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
        Name  Flags
      ctx     
      client  

  public static native void disableOcsp(long);
    descriptor: (J)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      ctx   
}
SourceFile: "SSLContext.java"