public class sun.security.jgss.wrapper.GSSCredElement implements sun.security.jgss.spi.GSSCredentialSpi
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.security.jgss.wrapper.GSSCredElement
  super_class: java.lang.Object
{
  private int usage;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  long pCred;
    descriptor: J
    flags: (0x0000) 

  private sun.security.jgss.wrapper.GSSNameElement name;
    descriptor: Lsun/security/jgss/wrapper/GSSNameElement;
    flags: (0x0002) ACC_PRIVATE

  private sun.security.jgss.wrapper.GSSLibStub cStub;
    descriptor: Lsun/security/jgss/wrapper/GSSLibStub;
    flags: (0x0002) ACC_PRIVATE

  void doServicePermCheck();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
         0: .line 47
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.cStub:Lsun/security/jgss/wrapper/GSSLibStub;
            invokevirtual sun.security.jgss.wrapper.GSSLibStub.getMech:()Lorg/ietf/jgss/Oid;
            invokestatic sun.security.jgss.GSSUtil.isKerberosMech:(Lorg/ietf/jgss/Oid;)Z
            ifeq 9
         1: .line 48
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            ifnull 9
         2: .line 49
            aload 0 /* this */
            invokevirtual sun.security.jgss.wrapper.GSSCredElement.isInitiatorCredential:()Z
            ifeq 5
         3: .line 50
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.name:Lsun/security/jgss/wrapper/GSSNameElement;
            invokestatic sun.security.jgss.wrapper.Krb5Util.getTGSName:(Lsun/security/jgss/wrapper/GSSNameElement;)Ljava/lang/String;
            astore 1 /* tgsName */
        start local 1 // java.lang.String tgsName
         4: .line 51
            aload 1 /* tgsName */
            ldc "initiate"
            invokestatic sun.security.jgss.wrapper.Krb5Util.checkServicePermission:(Ljava/lang/String;Ljava/lang/String;)V
        end local 1 // java.lang.String tgsName
         5: .line 53
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.security.jgss.wrapper.GSSCredElement.isAcceptorCredential:()Z
            ifeq 9
         6: .line 54
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.name:Lsun/security/jgss/wrapper/GSSNameElement;
            getstatic sun.security.jgss.wrapper.GSSNameElement.DEF_ACCEPTOR:Lsun/security/jgss/wrapper/GSSNameElement;
            if_acmpeq 9
         7: .line 55
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.name:Lsun/security/jgss/wrapper/GSSNameElement;
            invokevirtual sun.security.jgss.wrapper.GSSNameElement.getKrbName:()Ljava/lang/String;
            astore 1 /* krbName */
        start local 1 // java.lang.String krbName
         8: .line 56
            aload 1 /* krbName */
            ldc "accept"
            invokestatic sun.security.jgss.wrapper.Krb5Util.checkServicePermission:(Ljava/lang/String;Ljava/lang/String;)V
        end local 1 // java.lang.String krbName
         9: .line 60
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lsun/security/jgss/wrapper/GSSCredElement;
            4    5     1  tgsName  Ljava/lang/String;
            8    9     1  krbName  Ljava/lang/String;
    Exceptions:
      throws org.ietf.jgss.GSSException

  void <init>(long, sun.security.jgss.wrapper.GSSNameElement, org.ietf.jgss.Oid);
    descriptor: (JLsun/security/jgss/wrapper/GSSNameElement;Lorg/ietf/jgss/Oid;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
        start local 1 // long pCredentials
        start local 3 // sun.security.jgss.wrapper.GSSNameElement srcName
        start local 4 // org.ietf.jgss.Oid mech
         0: .line 63
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 42
            aload 0 /* this */
            aconst_null
            putfield sun.security.jgss.wrapper.GSSCredElement.name:Lsun/security/jgss/wrapper/GSSNameElement;
         2: .line 65
            aload 0 /* this */
            lload 1 /* pCredentials */
            putfield sun.security.jgss.wrapper.GSSCredElement.pCred:J
         3: .line 66
            aload 0 /* this */
            aload 4 /* mech */
            invokestatic sun.security.jgss.wrapper.GSSLibStub.getInstance:(Lorg/ietf/jgss/Oid;)Lsun/security/jgss/wrapper/GSSLibStub;
            putfield sun.security.jgss.wrapper.GSSCredElement.cStub:Lsun/security/jgss/wrapper/GSSLibStub;
         4: .line 67
            aload 0 /* this */
            iconst_1
            putfield sun.security.jgss.wrapper.GSSCredElement.usage:I
         5: .line 68
            aload 0 /* this */
            aload 3 /* srcName */
            putfield sun.security.jgss.wrapper.GSSCredElement.name:Lsun/security/jgss/wrapper/GSSNameElement;
         6: .line 69
            return
        end local 4 // org.ietf.jgss.Oid mech
        end local 3 // sun.security.jgss.wrapper.GSSNameElement srcName
        end local 1 // long pCredentials
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Lsun/security/jgss/wrapper/GSSCredElement;
            0    7     1  pCredentials  J
            0    7     3       srcName  Lsun/security/jgss/wrapper/GSSNameElement;
            0    7     4          mech  Lorg/ietf/jgss/Oid;
    Exceptions:
      throws org.ietf.jgss.GSSException
    MethodParameters:
              Name  Flags
      pCredentials  
      srcName       
      mech          

  void <init>(sun.security.jgss.wrapper.GSSNameElement, int, int, sun.security.jgss.wrapper.GSSLibStub);
    descriptor: (Lsun/security/jgss/wrapper/GSSNameElement;IILsun/security/jgss/wrapper/GSSLibStub;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
        start local 1 // sun.security.jgss.wrapper.GSSNameElement name
        start local 2 // int lifetime
        start local 3 // int usage
        start local 4 // sun.security.jgss.wrapper.GSSLibStub stub
         0: .line 71
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 42
            aload 0 /* this */
            aconst_null
            putfield sun.security.jgss.wrapper.GSSCredElement.name:Lsun/security/jgss/wrapper/GSSNameElement;
         2: .line 73
            aload 0 /* this */
            aload 4 /* stub */
            putfield sun.security.jgss.wrapper.GSSCredElement.cStub:Lsun/security/jgss/wrapper/GSSLibStub;
         3: .line 74
            aload 0 /* this */
            iload 3 /* usage */
            putfield sun.security.jgss.wrapper.GSSCredElement.usage:I
         4: .line 76
            aload 1 /* name */
            ifnull 9
         5: .line 77
            aload 0 /* this */
            aload 1 /* name */
            putfield sun.security.jgss.wrapper.GSSCredElement.name:Lsun/security/jgss/wrapper/GSSNameElement;
         6: .line 78
            aload 0 /* this */
            invokevirtual sun.security.jgss.wrapper.GSSCredElement.doServicePermCheck:()V
         7: .line 79
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.cStub:Lsun/security/jgss/wrapper/GSSLibStub;
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.name:Lsun/security/jgss/wrapper/GSSNameElement;
            getfield sun.security.jgss.wrapper.GSSNameElement.pName:J
            iload 2 /* lifetime */
            iload 3 /* usage */
            invokevirtual sun.security.jgss.wrapper.GSSLibStub.acquireCred:(JII)J
            putfield sun.security.jgss.wrapper.GSSCredElement.pCred:J
         8: .line 80
            goto 12
         9: .line 81
      StackMap locals: sun.security.jgss.wrapper.GSSCredElement sun.security.jgss.wrapper.GSSNameElement int int sun.security.jgss.wrapper.GSSLibStub
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.cStub:Lsun/security/jgss/wrapper/GSSLibStub;
            lconst_0
            iload 2 /* lifetime */
            iload 3 /* usage */
            invokevirtual sun.security.jgss.wrapper.GSSLibStub.acquireCred:(JII)J
            putfield sun.security.jgss.wrapper.GSSCredElement.pCred:J
        10: .line 82
            aload 0 /* this */
            new sun.security.jgss.wrapper.GSSNameElement
            dup
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.cStub:Lsun/security/jgss/wrapper/GSSLibStub;
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.pCred:J
            invokevirtual sun.security.jgss.wrapper.GSSLibStub.getCredName:(J)J
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.cStub:Lsun/security/jgss/wrapper/GSSLibStub;
            invokespecial sun.security.jgss.wrapper.GSSNameElement.<init>:(JLsun/security/jgss/wrapper/GSSLibStub;)V
            putfield sun.security.jgss.wrapper.GSSCredElement.name:Lsun/security/jgss/wrapper/GSSNameElement;
        11: .line 83
            aload 0 /* this */
            invokevirtual sun.security.jgss.wrapper.GSSCredElement.doServicePermCheck:()V
        12: .line 85
      StackMap locals:
      StackMap stack:
            return
        end local 4 // sun.security.jgss.wrapper.GSSLibStub stub
        end local 3 // int usage
        end local 2 // int lifetime
        end local 1 // sun.security.jgss.wrapper.GSSNameElement name
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lsun/security/jgss/wrapper/GSSCredElement;
            0   13     1      name  Lsun/security/jgss/wrapper/GSSNameElement;
            0   13     2  lifetime  I
            0   13     3     usage  I
            0   13     4      stub  Lsun/security/jgss/wrapper/GSSLibStub;
    Exceptions:
      throws org.ietf.jgss.GSSException
    MethodParameters:
          Name  Flags
      name      
      lifetime  
      usage     
      stub      

  public java.security.Provider getProvider();
    descriptor: ()Ljava/security/Provider;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
         0: .line 88
            getstatic sun.security.jgss.wrapper.SunNativeProvider.INSTANCE:Ljava/security/Provider;
            areturn
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/jgss/wrapper/GSSCredElement;

  public void dispose();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
         0: .line 92
            aload 0 /* this */
            aconst_null
            putfield sun.security.jgss.wrapper.GSSCredElement.name:Lsun/security/jgss/wrapper/GSSNameElement;
         1: .line 93
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.pCred:J
            lconst_0
            lcmp
            ifeq 3
         2: .line 94
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.cStub:Lsun/security/jgss/wrapper/GSSLibStub;
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.pCred:J
            invokevirtual sun.security.jgss.wrapper.GSSLibStub.releaseCred:(J)J
            putfield sun.security.jgss.wrapper.GSSCredElement.pCred:J
         3: .line 96
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/security/jgss/wrapper/GSSCredElement;
    Exceptions:
      throws org.ietf.jgss.GSSException

  public sun.security.jgss.wrapper.GSSNameElement getName();
    descriptor: ()Lsun/security/jgss/wrapper/GSSNameElement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
         0: .line 99
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.name:Lsun/security/jgss/wrapper/GSSNameElement;
            getstatic sun.security.jgss.wrapper.GSSNameElement.DEF_ACCEPTOR:Lsun/security/jgss/wrapper/GSSNameElement;
            if_acmpne 2
         1: .line 100
            aconst_null
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.name:Lsun/security/jgss/wrapper/GSSNameElement;
         3: .line 99
      StackMap locals:
      StackMap stack: sun.security.jgss.wrapper.GSSNameElement
            areturn
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/security/jgss/wrapper/GSSCredElement;
    Exceptions:
      throws org.ietf.jgss.GSSException

  public int getInitLifetime();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
         0: .line 104
            aload 0 /* this */
            invokevirtual sun.security.jgss.wrapper.GSSCredElement.isInitiatorCredential:()Z
            ifeq 2
         1: .line 105
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.cStub:Lsun/security/jgss/wrapper/GSSLibStub;
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.pCred:J
            invokevirtual sun.security.jgss.wrapper.GSSLibStub.getCredTime:(J)I
            ireturn
         2: .line 106
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/security/jgss/wrapper/GSSCredElement;
    Exceptions:
      throws org.ietf.jgss.GSSException

  public int getAcceptLifetime();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
         0: .line 110
            aload 0 /* this */
            invokevirtual sun.security.jgss.wrapper.GSSCredElement.isAcceptorCredential:()Z
            ifeq 2
         1: .line 111
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.cStub:Lsun/security/jgss/wrapper/GSSLibStub;
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.pCred:J
            invokevirtual sun.security.jgss.wrapper.GSSLibStub.getCredTime:(J)I
            ireturn
         2: .line 112
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/security/jgss/wrapper/GSSCredElement;
    Exceptions:
      throws org.ietf.jgss.GSSException

  public boolean isInitiatorCredential();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
         0: .line 116
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.usage:I
            iconst_2
            if_icmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/jgss/wrapper/GSSCredElement;

  public boolean isAcceptorCredential();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
         0: .line 120
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.usage:I
            iconst_1
            if_icmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/jgss/wrapper/GSSCredElement;

  public org.ietf.jgss.Oid getMechanism();
    descriptor: ()Lorg/ietf/jgss/Oid;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
         0: .line 124
            aload 0 /* this */
            getfield sun.security.jgss.wrapper.GSSCredElement.cStub:Lsun/security/jgss/wrapper/GSSLibStub;
            invokevirtual sun.security.jgss.wrapper.GSSLibStub.getMech:()Lorg/ietf/jgss/Oid;
            areturn
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/jgss/wrapper/GSSCredElement;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
         0: .line 129
            ldc "N/A"
            areturn
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/jgss/wrapper/GSSCredElement;

  protected void finalize();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.wrapper.GSSCredElement this
         0: .line 133
            aload 0 /* this */
            invokevirtual sun.security.jgss.wrapper.GSSCredElement.dispose:()V
         1: .line 134
            return
        end local 0 // sun.security.jgss.wrapper.GSSCredElement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/jgss/wrapper/GSSCredElement;
    Exceptions:
      throws java.lang.Throwable

  public sun.security.jgss.spi.GSSNameSpi getName();
    descriptor: ()Lsun/security/jgss/spi/GSSNameSpi;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual sun.security.jgss.wrapper.GSSCredElement.getName:()Lsun/security/jgss/wrapper/GSSNameElement;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws org.ietf.jgss.GSSException
}
SourceFile: "GSSCredElement.java"