public class sun.security.pkcs11.wrapper.PKCS11
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.security.pkcs11.wrapper.PKCS11
  super_class: java.lang.Object
{
  private static final java.lang.String PKCS11_WRAPPER;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "j2pkcs11"

  private final java.lang.String pkcs11ModulePath;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private long pNativeData;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private static final java.util.Map<java.lang.String, sun.security.pkcs11.wrapper.PKCS11> moduleMap;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lsun/security/pkcs11/wrapper/PKCS11;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 84
            new sun.security.pkcs11.wrapper.PKCS11$1
            dup
            invokespecial sun.security.pkcs11.wrapper.PKCS11$1.<init>:()V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         1: .line 90
            ldc "sunpkcs11"
            invokestatic sun.security.util.Debug.getInstance:(Ljava/lang/String;)Lsun/security/util/Debug;
            ifnull 2
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 0 /* enableDebug */
        start local 0 // boolean enableDebug
         4: .line 91
            iload 0 /* enableDebug */
            invokestatic sun.security.pkcs11.wrapper.PKCS11.initializeLibrary:(Z)V
        end local 0 // boolean enableDebug
         5: .line 129
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
         6: .line 128
            putstatic sun.security.pkcs11.wrapper.PKCS11.moduleMap:Ljava/util/Map;
         7: .line 129
            return
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            4    5     0  enableDebug  Z

  public static void loadNative();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=0, locals=0, args_size=0
         0: .line 98
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static native void initializeLibrary(boolean);
    descriptor: (Z)V
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
       Name  Flags
      debug  

  private static native void finalizeLibrary();
    descriptor: ()V
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE

  void <init>(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.security.pkcs11.wrapper.PKCS11 this
        start local 1 // java.lang.String pkcs11ModulePath
        start local 2 // java.lang.String functionListName
         0: .line 139
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 141
            aload 0 /* this */
            aload 1 /* pkcs11ModulePath */
            aload 2 /* functionListName */
            invokevirtual sun.security.pkcs11.wrapper.PKCS11.connect:(Ljava/lang/String;Ljava/lang/String;)V
         2: .line 142
            aload 0 /* this */
            aload 1 /* pkcs11ModulePath */
            putfield sun.security.pkcs11.wrapper.PKCS11.pkcs11ModulePath:Ljava/lang/String;
         3: .line 143
            return
        end local 2 // java.lang.String functionListName
        end local 1 // java.lang.String pkcs11ModulePath
        end local 0 // sun.security.pkcs11.wrapper.PKCS11 this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Lsun/security/pkcs11/wrapper/PKCS11;
            0    4     1  pkcs11ModulePath  Ljava/lang/String;
            0    4     2  functionListName  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                  Name  Flags
      pkcs11ModulePath  
      functionListName  

  public static synchronized sun.security.pkcs11.wrapper.PKCS11 getInstance(java.lang.String, java.lang.String, sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Lsun/security/pkcs11/wrapper/CK_C_INITIALIZE_ARGS;Z)Lsun/security/pkcs11/wrapper/PKCS11;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // java.lang.String pkcs11ModulePath
        start local 1 // java.lang.String functionList
        start local 2 // sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS pInitArgs
        start local 3 // boolean omitInitialize
         0: .line 150
            getstatic sun.security.pkcs11.wrapper.PKCS11.moduleMap:Ljava/util/Map;
            aload 0 /* pkcs11ModulePath */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.security.pkcs11.wrapper.PKCS11
            astore 4 /* pkcs11 */
        start local 4 // sun.security.pkcs11.wrapper.PKCS11 pkcs11
         1: .line 151
            aload 4 /* pkcs11 */
            ifnonnull 14
         2: .line 152
            aload 2 /* pInitArgs */
            ifnull 6
         3: .line 153
            aload 2 /* pInitArgs */
            getfield sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS.flags:J
            ldc 2
            land
            lconst_0
            lcmp
            ifeq 6
         4: .line 154
            new sun.security.pkcs11.wrapper.PKCS11
            dup
            aload 0 /* pkcs11ModulePath */
            aload 1 /* functionList */
            invokespecial sun.security.pkcs11.wrapper.PKCS11.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 4 /* pkcs11 */
         5: .line 155
            goto 7
         6: .line 156
      StackMap locals: sun.security.pkcs11.wrapper.PKCS11
      StackMap stack:
            new sun.security.pkcs11.wrapper.PKCS11$SynchronizedPKCS11
            dup
            aload 0 /* pkcs11ModulePath */
            aload 1 /* functionList */
            invokespecial sun.security.pkcs11.wrapper.PKCS11$SynchronizedPKCS11.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 4 /* pkcs11 */
         7: .line 158
      StackMap locals:
      StackMap stack:
            iload 3 /* omitInitialize */
            ifne 13
         8: .line 160
            aload 4 /* pkcs11 */
            aload 2 /* pInitArgs */
            invokevirtual sun.security.pkcs11.wrapper.PKCS11.C_Initialize:(Ljava/lang/Object;)V
         9: .line 161
            goto 13
      StackMap locals:
      StackMap stack: sun.security.pkcs11.wrapper.PKCS11Exception
        10: astore 5 /* e */
        start local 5 // sun.security.pkcs11.wrapper.PKCS11Exception e
        11: .line 164
            aload 5 /* e */
            invokevirtual sun.security.pkcs11.wrapper.PKCS11Exception.getErrorCode:()J
            ldc 401
            lcmp
            ifeq 13
        12: .line 165
            aload 5 /* e */
            athrow
        end local 5 // sun.security.pkcs11.wrapper.PKCS11Exception e
        13: .line 169
      StackMap locals:
      StackMap stack:
            getstatic sun.security.pkcs11.wrapper.PKCS11.moduleMap:Ljava/util/Map;
            aload 0 /* pkcs11ModulePath */
            aload 4 /* pkcs11 */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 171
      StackMap locals:
      StackMap stack:
            aload 4 /* pkcs11 */
            areturn
        end local 4 // sun.security.pkcs11.wrapper.PKCS11 pkcs11
        end local 3 // boolean omitInitialize
        end local 2 // sun.security.pkcs11.wrapper.CK_C_INITIALIZE_ARGS pInitArgs
        end local 1 // java.lang.String functionList
        end local 0 // java.lang.String pkcs11ModulePath
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   15     0  pkcs11ModulePath  Ljava/lang/String;
            0   15     1      functionList  Ljava/lang/String;
            0   15     2         pInitArgs  Lsun/security/pkcs11/wrapper/CK_C_INITIALIZE_ARGS;
            0   15     3    omitInitialize  Z
            1   15     4            pkcs11  Lsun/security/pkcs11/wrapper/PKCS11;
           11   13     5                 e  Lsun/security/pkcs11/wrapper/PKCS11Exception;
      Exception table:
        from    to  target  type
           8     9      10  Class sun.security.pkcs11.wrapper.PKCS11Exception
    Exceptions:
      throws java.io.IOException, sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
                  Name  Flags
      pkcs11ModulePath  
      functionList      
      pInitArgs         
      omitInitialize    

  private native void connect(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                  Name  Flags
      pkcs11ModulePath  
      functionListName  

  private native void disconnect();
    descriptor: ()V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE

  native void C_Initialize(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0100) ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
           Name  Flags
      pInitArgs  

  public native void C_Finalize(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
           Name  Flags
      pReserved  

  public native sun.security.pkcs11.wrapper.CK_INFO C_GetInfo();
    descriptor: ()Lsun/security/pkcs11/wrapper/CK_INFO;
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception

  public native long[] C_GetSlotList(boolean);
    descriptor: (Z)[J
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
              Name  Flags
      tokenPresent  

  public native sun.security.pkcs11.wrapper.CK_SLOT_INFO C_GetSlotInfo(long);
    descriptor: (J)Lsun/security/pkcs11/wrapper/CK_SLOT_INFO;
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
        Name  Flags
      slotID  

  public native sun.security.pkcs11.wrapper.CK_TOKEN_INFO C_GetTokenInfo(long);
    descriptor: (J)Lsun/security/pkcs11/wrapper/CK_TOKEN_INFO;
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
        Name  Flags
      slotID  

  public native long[] C_GetMechanismList(long);
    descriptor: (J)[J
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
        Name  Flags
      slotID  

  public native sun.security.pkcs11.wrapper.CK_MECHANISM_INFO C_GetMechanismInfo(long, long);
    descriptor: (JJ)Lsun/security/pkcs11/wrapper/CK_MECHANISM_INFO;
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
        Name  Flags
      slotID  
      type    

  public native long C_OpenSession(long, long, java.lang.Object, sun.security.pkcs11.wrapper.CK_NOTIFY);
    descriptor: (JJLjava/lang/Object;Lsun/security/pkcs11/wrapper/CK_NOTIFY;)J
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
              Name  Flags
      slotID        
      flags         
      pApplication  
      Notify        

  public native void C_CloseSession(long);
    descriptor: (J)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  

  public native sun.security.pkcs11.wrapper.CK_SESSION_INFO C_GetSessionInfo(long);
    descriptor: (J)Lsun/security/pkcs11/wrapper/CK_SESSION_INFO;
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  

  public native byte[] C_GetOperationState(long);
    descriptor: (J)[B
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  

  public native void C_SetOperationState(long, byte[], long, long);
    descriptor: (J[BJJ)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
                    Name  Flags
      hSession            
      pOperationState     
      hEncryptionKey      
      hAuthenticationKey  

  public native void C_Login(long, long, char[]);
    descriptor: (JJ[C)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  
      userType  
      pPin      

  public native void C_Logout(long);
    descriptor: (J)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  

  public native long C_CreateObject(long, sun.security.pkcs11.wrapper.CK_ATTRIBUTE[]);
    descriptor: (J[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)J
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
           Name  Flags
      hSession   
      pTemplate  

  public native long C_CopyObject(long, long, sun.security.pkcs11.wrapper.CK_ATTRIBUTE[]);
    descriptor: (JJ[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)J
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
           Name  Flags
      hSession   
      hObject    
      pTemplate  

  public native void C_DestroyObject(long, long);
    descriptor: (JJ)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  
      hObject   

  public native void C_GetAttributeValue(long, long, sun.security.pkcs11.wrapper.CK_ATTRIBUTE[]);
    descriptor: (JJ[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
           Name  Flags
      hSession   
      hObject    
      pTemplate  

  public native void C_SetAttributeValue(long, long, sun.security.pkcs11.wrapper.CK_ATTRIBUTE[]);
    descriptor: (JJ[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
           Name  Flags
      hSession   
      hObject    
      pTemplate  

  public native void C_FindObjectsInit(long, sun.security.pkcs11.wrapper.CK_ATTRIBUTE[]);
    descriptor: (J[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
           Name  Flags
      hSession   
      pTemplate  

  public native long[] C_FindObjects(long, long);
    descriptor: (JJ)[J
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
                  Name  Flags
      hSession          
      ulMaxObjectCount  

  public native void C_FindObjectsFinal(long);
    descriptor: (J)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  

  public native void C_EncryptInit(long, sun.security.pkcs11.wrapper.CK_MECHANISM, long);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;J)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      pMechanism  
      hKey        

  public native int C_Encrypt(long, byte[], int, int, byte[], int, int);
    descriptor: (J[BII[BII)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  
      in        
      inOfs     
      inLen     
      out       
      outOfs    
      outLen    

  public native int C_EncryptUpdate(long, long, byte[], int, int, long, byte[], int, int);
    descriptor: (JJ[BIIJ[BII)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
           Name  Flags
      hSession   
      directIn   
      in         
      inOfs      
      inLen      
      directOut  
      out        
      outOfs     
      outLen     

  public native int C_EncryptFinal(long, long, byte[], int, int);
    descriptor: (JJ[BII)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
           Name  Flags
      hSession   
      directOut  
      out        
      outOfs     
      outLen     

  public native void C_DecryptInit(long, sun.security.pkcs11.wrapper.CK_MECHANISM, long);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;J)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      pMechanism  
      hKey        

  public native int C_Decrypt(long, byte[], int, int, byte[], int, int);
    descriptor: (J[BII[BII)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  
      in        
      inOfs     
      inLen     
      out       
      outOfs    
      outLen    

  public native int C_DecryptUpdate(long, long, byte[], int, int, long, byte[], int, int);
    descriptor: (JJ[BIIJ[BII)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
           Name  Flags
      hSession   
      directIn   
      in         
      inOfs      
      inLen      
      directOut  
      out        
      outOfs     
      outLen     

  public native int C_DecryptFinal(long, long, byte[], int, int);
    descriptor: (JJ[BII)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
           Name  Flags
      hSession   
      directOut  
      out        
      outOfs     
      outLen     

  public native void C_DigestInit(long, sun.security.pkcs11.wrapper.CK_MECHANISM);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      pMechanism  

  public native int C_DigestSingle(long, sun.security.pkcs11.wrapper.CK_MECHANISM, byte[], int, int, byte[], int, int);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;[BII[BII)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      pMechanism  
      in          
      inOfs       
      inLen       
      digest      
      digestOfs   
      digestLen   

  public native void C_DigestUpdate(long, long, byte[], int, int);
    descriptor: (JJ[BII)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  
      directIn  
      in        
      inOfs     
      inLen     

  public native void C_DigestKey(long, long);
    descriptor: (JJ)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  
      hKey      

  public native int C_DigestFinal(long, byte[], int, int);
    descriptor: (J[BII)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
           Name  Flags
      hSession   
      pDigest    
      digestOfs  
      digestLen  

  public native void C_SignInit(long, sun.security.pkcs11.wrapper.CK_MECHANISM, long);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;J)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      pMechanism  
      hKey        

  public native byte[] C_Sign(long, byte[]);
    descriptor: (J[B)[B
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  
      pData     

  public native void C_SignUpdate(long, long, byte[], int, int);
    descriptor: (JJ[BII)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  
      directIn  
      in        
      inOfs     
      inLen     

  public native byte[] C_SignFinal(long, int);
    descriptor: (JI)[B
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
             Name  Flags
      hSession     
      expectedLen  

  public native void C_SignRecoverInit(long, sun.security.pkcs11.wrapper.CK_MECHANISM, long);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;J)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      pMechanism  
      hKey        

  public native int C_SignRecover(long, byte[], int, int, byte[], int, int);
    descriptor: (J[BII[BII)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  
      in        
      inOfs     
      inLen     
      out       
      outOufs   
      outLen    

  public native void C_VerifyInit(long, sun.security.pkcs11.wrapper.CK_MECHANISM, long);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;J)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      pMechanism  
      hKey        

  public native void C_Verify(long, byte[], byte[]);
    descriptor: (J[B[B)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      pData       
      pSignature  

  public native void C_VerifyUpdate(long, long, byte[], int, int);
    descriptor: (JJ[BII)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  
      directIn  
      in        
      inOfs     
      inLen     

  public native void C_VerifyFinal(long, byte[]);
    descriptor: (J[B)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      pSignature  

  public native void C_VerifyRecoverInit(long, sun.security.pkcs11.wrapper.CK_MECHANISM, long);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;J)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      pMechanism  
      hKey        

  public native int C_VerifyRecover(long, byte[], int, int, byte[], int, int);
    descriptor: (J[BII[BII)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  
      in        
      inOfs     
      inLen     
      out       
      outOufs   
      outLen    

  public native long C_GenerateKey(long, sun.security.pkcs11.wrapper.CK_MECHANISM, sun.security.pkcs11.wrapper.CK_ATTRIBUTE[]);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)J
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      pMechanism  
      pTemplate   

  public native long[] C_GenerateKeyPair(long, sun.security.pkcs11.wrapper.CK_MECHANISM, sun.security.pkcs11.wrapper.CK_ATTRIBUTE[], sun.security.pkcs11.wrapper.CK_ATTRIBUTE[]);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)[J
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
                     Name  Flags
      hSession             
      pMechanism           
      pPublicKeyTemplate   
      pPrivateKeyTemplate  

  public native byte[] C_WrapKey(long, sun.security.pkcs11.wrapper.CK_MECHANISM, long, long);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;JJ)[B
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
              Name  Flags
      hSession      
      pMechanism    
      hWrappingKey  
      hKey          

  public native long C_UnwrapKey(long, sun.security.pkcs11.wrapper.CK_MECHANISM, long, byte[], sun.security.pkcs11.wrapper.CK_ATTRIBUTE[]);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;J[B[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)J
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
                Name  Flags
      hSession        
      pMechanism      
      hUnwrappingKey  
      pWrappedKey     
      pTemplate       

  public native long C_DeriveKey(long, sun.security.pkcs11.wrapper.CK_MECHANISM, long, sun.security.pkcs11.wrapper.CK_ATTRIBUTE[]);
    descriptor: (JLsun/security/pkcs11/wrapper/CK_MECHANISM;J[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)J
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      pMechanism  
      hBaseKey    
      pTemplate   

  public native void C_SeedRandom(long, byte[]);
    descriptor: (J[B)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
          Name  Flags
      hSession  
      pSeed     

  public native void C_GenerateRandom(long, byte[]);
    descriptor: (J[B)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    Exceptions:
      throws sun.security.pkcs11.wrapper.PKCS11Exception
    MethodParameters:
            Name  Flags
      hSession    
      randomData  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.security.pkcs11.wrapper.PKCS11 this
         0: .line 1524
            new java.lang.StringBuilder
            dup
            ldc "Module name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.security.pkcs11.wrapper.PKCS11.pkcs11ModulePath:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // sun.security.pkcs11.wrapper.PKCS11 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/pkcs11/wrapper/PKCS11;

  protected void finalize();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.pkcs11.wrapper.PKCS11 this
         0: .line 1536
            aload 0 /* this */
            invokevirtual sun.security.pkcs11.wrapper.PKCS11.disconnect:()V
         1: .line 1537
            return
        end local 0 // sun.security.pkcs11.wrapper.PKCS11 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/pkcs11/wrapper/PKCS11;
    Exceptions:
      throws java.lang.Throwable
}
SourceFile: "PKCS11.java"
NestMembers:
  sun.security.pkcs11.wrapper.PKCS11$1  sun.security.pkcs11.wrapper.PKCS11$SynchronizedPKCS11
InnerClasses:
  sun.security.pkcs11.wrapper.PKCS11$1
  SynchronizedPKCS11 = sun.security.pkcs11.wrapper.PKCS11$SynchronizedPKCS11 of sun.security.pkcs11.wrapper.PKCS11