public class sun.security.jgss.krb5.Krb5InitCredential extends javax.security.auth.kerberos.KerberosTicket implements sun.security.jgss.krb5.Krb5CredElement
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.security.jgss.krb5.Krb5InitCredential
  super_class: javax.security.auth.kerberos.KerberosTicket
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 7723415700837898232

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

  private sun.security.krb5.Credentials krb5Credentials;
    descriptor: Lsun/security/krb5/Credentials;
    flags: (0x0002) ACC_PRIVATE

  private void <init>(sun.security.jgss.krb5.Krb5NameElement, byte[], javax.security.auth.kerberos.KerberosPrincipal, javax.security.auth.kerberos.KerberosPrincipal, byte[], int, boolean[], java.util.Date, java.util.Date, java.util.Date, java.util.Date, java.net.InetAddress[]);
    descriptor: (Lsun/security/jgss/krb5/Krb5NameElement;[BLjavax/security/auth/kerberos/KerberosPrincipal;Ljavax/security/auth/kerberos/KerberosPrincipal;[BI[ZLjava/util/Date;Ljava/util/Date;Ljava/util/Date;Ljava/util/Date;[Ljava/net/InetAddress;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=14, locals=14, args_size=13
        start local 0 // sun.security.jgss.krb5.Krb5InitCredential this
        start local 1 // sun.security.jgss.krb5.Krb5NameElement name
        start local 2 // byte[] asn1Encoding
        start local 3 // javax.security.auth.kerberos.KerberosPrincipal client
        start local 4 // javax.security.auth.kerberos.KerberosPrincipal server
        start local 5 // byte[] sessionKey
        start local 6 // int keyType
        start local 7 // boolean[] flags
        start local 8 // java.util.Date authTime
        start local 9 // java.util.Date startTime
        start local 10 // java.util.Date endTime
        start local 11 // java.util.Date renewTill
        start local 12 // java.net.InetAddress[] clientAddresses
         0: .line 72
            aload 0 /* this */
            aload 2 /* asn1Encoding */
         1: .line 73
            aload 3 /* client */
         2: .line 74
            aload 4 /* server */
         3: .line 75
            aload 5 /* sessionKey */
         4: .line 76
            iload 6 /* keyType */
         5: .line 77
            aload 7 /* flags */
         6: .line 78
            aload 8 /* authTime */
         7: .line 79
            aload 9 /* startTime */
         8: .line 80
            aload 10 /* endTime */
         9: .line 81
            aload 11 /* renewTill */
        10: .line 82
            aload 12 /* clientAddresses */
            invokespecial javax.security.auth.kerberos.KerberosTicket.<init>:([BLjavax/security/auth/kerberos/KerberosPrincipal;Ljavax/security/auth/kerberos/KerberosPrincipal;[BI[ZLjava/util/Date;Ljava/util/Date;Ljava/util/Date;Ljava/util/Date;[Ljava/net/InetAddress;)V
        11: .line 84
            aload 0 /* this */
            aload 1 /* name */
            putfield sun.security.jgss.krb5.Krb5InitCredential.name:Lsun/security/jgss/krb5/Krb5NameElement;
        12: .line 88
            aload 0 /* this */
            new sun.security.krb5.Credentials
            dup
            aload 2 /* asn1Encoding */
        13: .line 89
            aload 3 /* client */
            invokevirtual javax.security.auth.kerberos.KerberosPrincipal.getName:()Ljava/lang/String;
        14: .line 90
            aload 4 /* server */
            invokevirtual javax.security.auth.kerberos.KerberosPrincipal.getName:()Ljava/lang/String;
        15: .line 91
            aload 5 /* sessionKey */
        16: .line 92
            iload 6 /* keyType */
        17: .line 93
            aload 7 /* flags */
        18: .line 94
            aload 8 /* authTime */
        19: .line 95
            aload 9 /* startTime */
        20: .line 96
            aload 10 /* endTime */
        21: .line 97
            aload 11 /* renewTill */
        22: .line 98
            aload 12 /* clientAddresses */
            invokespecial sun.security.krb5.Credentials.<init>:([BLjava/lang/String;Ljava/lang/String;[BI[ZLjava/util/Date;Ljava/util/Date;Ljava/util/Date;Ljava/util/Date;[Ljava/net/InetAddress;)V
        23: .line 88
            putfield sun.security.jgss.krb5.Krb5InitCredential.krb5Credentials:Lsun/security/krb5/Credentials;
        24: .line 99
            goto 33
      StackMap locals: sun.security.jgss.krb5.Krb5InitCredential sun.security.jgss.krb5.Krb5NameElement byte[] javax.security.auth.kerberos.KerberosPrincipal javax.security.auth.kerberos.KerberosPrincipal byte[] int boolean[] java.util.Date java.util.Date java.util.Date java.util.Date java.net.InetAddress[]
      StackMap stack: sun.security.krb5.KrbException
        25: astore 13 /* e */
        start local 13 // sun.security.krb5.KrbException e
        26: .line 100
            new org.ietf.jgss.GSSException
            dup
            bipush 13
            iconst_m1
        27: .line 101
            aload 13 /* e */
            invokevirtual sun.security.krb5.KrbException.getMessage:()Ljava/lang/String;
        28: .line 100
            invokespecial org.ietf.jgss.GSSException.<init>:(IILjava/lang/String;)V
            athrow
        end local 13 // sun.security.krb5.KrbException e
        29: .line 102
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 13 /* e */
        start local 13 // java.io.IOException e
        30: .line 103
            new org.ietf.jgss.GSSException
            dup
            bipush 13
            iconst_m1
        31: .line 104
            aload 13 /* e */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
        32: .line 103
            invokespecial org.ietf.jgss.GSSException.<init>:(IILjava/lang/String;)V
            athrow
        end local 13 // java.io.IOException e
        33: .line 107
      StackMap locals:
      StackMap stack:
            return
        end local 12 // java.net.InetAddress[] clientAddresses
        end local 11 // java.util.Date renewTill
        end local 10 // java.util.Date endTime
        end local 9 // java.util.Date startTime
        end local 8 // java.util.Date authTime
        end local 7 // boolean[] flags
        end local 6 // int keyType
        end local 5 // byte[] sessionKey
        end local 4 // javax.security.auth.kerberos.KerberosPrincipal server
        end local 3 // javax.security.auth.kerberos.KerberosPrincipal client
        end local 2 // byte[] asn1Encoding
        end local 1 // sun.security.jgss.krb5.Krb5NameElement name
        end local 0 // sun.security.jgss.krb5.Krb5InitCredential this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   34     0             this  Lsun/security/jgss/krb5/Krb5InitCredential;
            0   34     1             name  Lsun/security/jgss/krb5/Krb5NameElement;
            0   34     2     asn1Encoding  [B
            0   34     3           client  Ljavax/security/auth/kerberos/KerberosPrincipal;
            0   34     4           server  Ljavax/security/auth/kerberos/KerberosPrincipal;
            0   34     5       sessionKey  [B
            0   34     6          keyType  I
            0   34     7            flags  [Z
            0   34     8         authTime  Ljava/util/Date;
            0   34     9        startTime  Ljava/util/Date;
            0   34    10          endTime  Ljava/util/Date;
            0   34    11        renewTill  Ljava/util/Date;
            0   34    12  clientAddresses  [Ljava/net/InetAddress;
           26   29    13                e  Lsun/security/krb5/KrbException;
           30   33    13                e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
          12    24      25  Class sun.security.krb5.KrbException
          12    24      29  Class java.io.IOException
    Exceptions:
      throws org.ietf.jgss.GSSException
    MethodParameters:
                 Name  Flags
      name             
      asn1Encoding     
      client           
      server           
      sessionKey       
      keyType          
      flags            
      authTime         
      startTime        
      endTime          
      renewTill        
      clientAddresses  

  private void <init>(sun.security.jgss.krb5.Krb5NameElement, sun.security.krb5.Credentials, byte[], javax.security.auth.kerberos.KerberosPrincipal, javax.security.auth.kerberos.KerberosPrincipal, byte[], int, boolean[], java.util.Date, java.util.Date, java.util.Date, java.util.Date, java.net.InetAddress[]);
    descriptor: (Lsun/security/jgss/krb5/Krb5NameElement;Lsun/security/krb5/Credentials;[BLjavax/security/auth/kerberos/KerberosPrincipal;Ljavax/security/auth/kerberos/KerberosPrincipal;[BI[ZLjava/util/Date;Ljava/util/Date;Ljava/util/Date;Ljava/util/Date;[Ljava/net/InetAddress;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=12, locals=14, args_size=14
        start local 0 // sun.security.jgss.krb5.Krb5InitCredential this
        start local 1 // sun.security.jgss.krb5.Krb5NameElement name
        start local 2 // sun.security.krb5.Credentials delegatedCred
        start local 3 // byte[] asn1Encoding
        start local 4 // javax.security.auth.kerberos.KerberosPrincipal client
        start local 5 // javax.security.auth.kerberos.KerberosPrincipal server
        start local 6 // byte[] sessionKey
        start local 7 // int keyType
        start local 8 // boolean[] flags
        start local 9 // java.util.Date authTime
        start local 10 // java.util.Date startTime
        start local 11 // java.util.Date endTime
        start local 12 // java.util.Date renewTill
        start local 13 // java.net.InetAddress[] clientAddresses
         0: .line 123
            aload 0 /* this */
            aload 3 /* asn1Encoding */
         1: .line 124
            aload 4 /* client */
         2: .line 125
            aload 5 /* server */
         3: .line 126
            aload 6 /* sessionKey */
         4: .line 127
            iload 7 /* keyType */
         5: .line 128
            aload 8 /* flags */
         6: .line 129
            aload 9 /* authTime */
         7: .line 130
            aload 10 /* startTime */
         8: .line 131
            aload 11 /* endTime */
         9: .line 132
            aload 12 /* renewTill */
        10: .line 133
            aload 13 /* clientAddresses */
            invokespecial javax.security.auth.kerberos.KerberosTicket.<init>:([BLjavax/security/auth/kerberos/KerberosPrincipal;Ljavax/security/auth/kerberos/KerberosPrincipal;[BI[ZLjava/util/Date;Ljava/util/Date;Ljava/util/Date;Ljava/util/Date;[Ljava/net/InetAddress;)V
        11: .line 135
            aload 0 /* this */
            aload 1 /* name */
            putfield sun.security.jgss.krb5.Krb5InitCredential.name:Lsun/security/jgss/krb5/Krb5NameElement;
        12: .line 138
            aload 0 /* this */
            aload 2 /* delegatedCred */
            putfield sun.security.jgss.krb5.Krb5InitCredential.krb5Credentials:Lsun/security/krb5/Credentials;
        13: .line 139
            return
        end local 13 // java.net.InetAddress[] clientAddresses
        end local 12 // java.util.Date renewTill
        end local 11 // java.util.Date endTime
        end local 10 // java.util.Date startTime
        end local 9 // java.util.Date authTime
        end local 8 // boolean[] flags
        end local 7 // int keyType
        end local 6 // byte[] sessionKey
        end local 5 // javax.security.auth.kerberos.KerberosPrincipal server
        end local 4 // javax.security.auth.kerberos.KerberosPrincipal client
        end local 3 // byte[] asn1Encoding
        end local 2 // sun.security.krb5.Credentials delegatedCred
        end local 1 // sun.security.jgss.krb5.Krb5NameElement name
        end local 0 // sun.security.jgss.krb5.Krb5InitCredential this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   14     0             this  Lsun/security/jgss/krb5/Krb5InitCredential;
            0   14     1             name  Lsun/security/jgss/krb5/Krb5NameElement;
            0   14     2    delegatedCred  Lsun/security/krb5/Credentials;
            0   14     3     asn1Encoding  [B
            0   14     4           client  Ljavax/security/auth/kerberos/KerberosPrincipal;
            0   14     5           server  Ljavax/security/auth/kerberos/KerberosPrincipal;
            0   14     6       sessionKey  [B
            0   14     7          keyType  I
            0   14     8            flags  [Z
            0   14     9         authTime  Ljava/util/Date;
            0   14    10        startTime  Ljava/util/Date;
            0   14    11          endTime  Ljava/util/Date;
            0   14    12        renewTill  Ljava/util/Date;
            0   14    13  clientAddresses  [Ljava/net/InetAddress;
    Exceptions:
      throws org.ietf.jgss.GSSException
    MethodParameters:
                 Name  Flags
      name             
      delegatedCred    
      asn1Encoding     
      client           
      server           
      sessionKey       
      keyType          
      flags            
      authTime         
      startTime        
      endTime          
      renewTill        
      clientAddresses  

  static sun.security.jgss.krb5.Krb5InitCredential getInstance(sun.security.jgss.GSSCaller, sun.security.jgss.krb5.Krb5NameElement, int);
    descriptor: (Lsun/security/jgss/GSSCaller;Lsun/security/jgss/krb5/Krb5NameElement;I)Lsun/security/jgss/krb5/Krb5InitCredential;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=14, locals=5, args_size=3
        start local 0 // sun.security.jgss.GSSCaller caller
        start local 1 // sun.security.jgss.krb5.Krb5NameElement name
        start local 2 // int initLifetime
         0: .line 145
            aload 0 /* caller */
            aload 1 /* name */
            iload 2 /* initLifetime */
            invokestatic sun.security.jgss.krb5.Krb5InitCredential.getTgt:(Lsun/security/jgss/GSSCaller;Lsun/security/jgss/krb5/Krb5NameElement;I)Ljavax/security/auth/kerberos/KerberosTicket;
            astore 3 /* tgt */
        start local 3 // javax.security.auth.kerberos.KerberosTicket tgt
         1: .line 146
            aload 3 /* tgt */
            ifnonnull 5
         2: .line 147
            new org.ietf.jgss.GSSException
            dup
            bipush 13
            iconst_m1
         3: .line 148
            ldc "Failed to find any Kerberos tgt"
         4: .line 147
            invokespecial org.ietf.jgss.GSSException.<init>:(IILjava/lang/String;)V
            athrow
         5: .line 150
      StackMap locals: javax.security.auth.kerberos.KerberosTicket
      StackMap stack:
            aload 1 /* name */
            ifnonnull 10
         6: .line 151
            aload 3 /* tgt */
            invokevirtual javax.security.auth.kerberos.KerberosTicket.getClient:()Ljavax/security/auth/kerberos/KerberosPrincipal;
            invokevirtual javax.security.auth.kerberos.KerberosPrincipal.getName:()Ljava/lang/String;
            astore 4 /* fullName */
        start local 4 // java.lang.String fullName
         7: .line 152
            aload 4 /* fullName */
         8: .line 153
            getstatic sun.security.jgss.krb5.Krb5MechFactory.NT_GSS_KRB5_PRINCIPAL:Lorg/ietf/jgss/Oid;
         9: .line 152
            invokestatic sun.security.jgss.krb5.Krb5NameElement.getInstance:(Ljava/lang/String;Lorg/ietf/jgss/Oid;)Lsun/security/jgss/krb5/Krb5NameElement;
            astore 1 /* name */
        end local 4 // java.lang.String fullName
        10: .line 156
      StackMap locals:
      StackMap stack:
            new sun.security.jgss.krb5.Krb5InitCredential
            dup
            aload 1 /* name */
        11: .line 157
            aload 3 /* tgt */
            invokevirtual javax.security.auth.kerberos.KerberosTicket.getEncoded:()[B
        12: .line 158
            aload 3 /* tgt */
            invokevirtual javax.security.auth.kerberos.KerberosTicket.getClient:()Ljavax/security/auth/kerberos/KerberosPrincipal;
        13: .line 159
            aload 3 /* tgt */
            invokevirtual javax.security.auth.kerberos.KerberosTicket.getServer:()Ljavax/security/auth/kerberos/KerberosPrincipal;
        14: .line 160
            aload 3 /* tgt */
            invokevirtual javax.security.auth.kerberos.KerberosTicket.getSessionKey:()Ljavax/crypto/SecretKey;
            invokeinterface javax.crypto.SecretKey.getEncoded:()[B
        15: .line 161
            aload 3 /* tgt */
            invokevirtual javax.security.auth.kerberos.KerberosTicket.getSessionKeyType:()I
        16: .line 162
            aload 3 /* tgt */
            invokevirtual javax.security.auth.kerberos.KerberosTicket.getFlags:()[Z
        17: .line 163
            aload 3 /* tgt */
            invokevirtual javax.security.auth.kerberos.KerberosTicket.getAuthTime:()Ljava/util/Date;
        18: .line 164
            aload 3 /* tgt */
            invokevirtual javax.security.auth.kerberos.KerberosTicket.getStartTime:()Ljava/util/Date;
        19: .line 165
            aload 3 /* tgt */
            invokevirtual javax.security.auth.kerberos.KerberosTicket.getEndTime:()Ljava/util/Date;
        20: .line 166
            aload 3 /* tgt */
            invokevirtual javax.security.auth.kerberos.KerberosTicket.getRenewTill:()Ljava/util/Date;
        21: .line 167
            aload 3 /* tgt */
            invokevirtual javax.security.auth.kerberos.KerberosTicket.getClientAddresses:()[Ljava/net/InetAddress;
        22: .line 156
            invokespecial sun.security.jgss.krb5.Krb5InitCredential.<init>:(Lsun/security/jgss/krb5/Krb5NameElement;[BLjavax/security/auth/kerberos/KerberosPrincipal;Ljavax/security/auth/kerberos/KerberosPrincipal;[BI[ZLjava/util/Date;Ljava/util/Date;Ljava/util/Date;Ljava/util/Date;[Ljava/net/InetAddress;)V
            areturn
        end local 3 // javax.security.auth.kerberos.KerberosTicket tgt
        end local 2 // int initLifetime
        end local 1 // sun.security.jgss.krb5.Krb5NameElement name
        end local 0 // sun.security.jgss.GSSCaller caller
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0        caller  Lsun/security/jgss/GSSCaller;
            0   23     1          name  Lsun/security/jgss/krb5/Krb5NameElement;
            0   23     2  initLifetime  I
            1   23     3           tgt  Ljavax/security/auth/kerberos/KerberosTicket;
            7   10     4      fullName  Ljava/lang/String;
    Exceptions:
      throws org.ietf.jgss.GSSException
    MethodParameters:
              Name  Flags
      caller        
      name          
      initLifetime  

  static sun.security.jgss.krb5.Krb5InitCredential getInstance(sun.security.jgss.krb5.Krb5NameElement, sun.security.krb5.Credentials);
    descriptor: (Lsun/security/jgss/krb5/Krb5NameElement;Lsun/security/krb5/Credentials;)Lsun/security/jgss/krb5/Krb5InitCredential;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=15, locals=9, args_size=2
        start local 0 // sun.security.jgss.krb5.Krb5NameElement name
        start local 1 // sun.security.krb5.Credentials delegatedCred
         0: .line 174
            aload 1 /* delegatedCred */
            invokevirtual sun.security.krb5.Credentials.getSessionKey:()Lsun/security/krb5/EncryptionKey;
            astore 2 /* sessionKey */
        start local 2 // sun.security.krb5.EncryptionKey sessionKey
         1: .line 181
            aload 1 /* delegatedCred */
            invokevirtual sun.security.krb5.Credentials.getClient:()Lsun/security/krb5/PrincipalName;
            astore 3 /* cPrinc */
        start local 3 // sun.security.krb5.PrincipalName cPrinc
         2: .line 182
            aload 1 /* delegatedCred */
            invokevirtual sun.security.krb5.Credentials.getServer:()Lsun/security/krb5/PrincipalName;
            astore 4 /* sPrinc */
        start local 4 // sun.security.krb5.PrincipalName sPrinc
         3: .line 184
            aconst_null
            astore 5 /* client */
        start local 5 // javax.security.auth.kerberos.KerberosPrincipal client
         4: .line 185
            aconst_null
            astore 6 /* server */
        start local 6 // javax.security.auth.kerberos.KerberosPrincipal server
         5: .line 187
            aconst_null
            astore 7 /* credName */
        start local 7 // sun.security.jgss.krb5.Krb5NameElement credName
         6: .line 189
            aload 3 /* cPrinc */
            ifnull 12
         7: .line 190
            aload 3 /* cPrinc */
            invokevirtual sun.security.krb5.PrincipalName.getName:()Ljava/lang/String;
            astore 8 /* fullName */
        start local 8 // java.lang.String fullName
         8: .line 191
            aload 8 /* fullName */
         9: .line 192
            getstatic sun.security.jgss.krb5.Krb5MechFactory.NT_GSS_KRB5_PRINCIPAL:Lorg/ietf/jgss/Oid;
        10: .line 191
            invokestatic sun.security.jgss.krb5.Krb5NameElement.getInstance:(Ljava/lang/String;Lorg/ietf/jgss/Oid;)Lsun/security/jgss/krb5/Krb5NameElement;
            astore 7 /* credName */
        11: .line 193
            new javax.security.auth.kerberos.KerberosPrincipal
            dup
            aload 8 /* fullName */
            invokespecial javax.security.auth.kerberos.KerberosPrincipal.<init>:(Ljava/lang/String;)V
            astore 5 /* client */
        end local 8 // java.lang.String fullName
        12: .line 198
      StackMap locals: sun.security.jgss.krb5.Krb5NameElement sun.security.krb5.Credentials sun.security.krb5.EncryptionKey sun.security.krb5.PrincipalName sun.security.krb5.PrincipalName javax.security.auth.kerberos.KerberosPrincipal javax.security.auth.kerberos.KerberosPrincipal sun.security.jgss.krb5.Krb5NameElement
      StackMap stack:
            aload 4 /* sPrinc */
            ifnull 17
        13: .line 200
            new javax.security.auth.kerberos.KerberosPrincipal
            dup
            aload 4 /* sPrinc */
            invokevirtual sun.security.krb5.PrincipalName.getName:()Ljava/lang/String;
        14: .line 201
            iconst_2
        15: .line 200
            invokespecial javax.security.auth.kerberos.KerberosPrincipal.<init>:(Ljava/lang/String;I)V
        16: .line 199
            astore 6 /* server */
        17: .line 204
      StackMap locals:
      StackMap stack:
            new sun.security.jgss.krb5.Krb5InitCredential
            dup
            aload 7 /* credName */
        18: .line 205
            aload 1 /* delegatedCred */
        19: .line 206
            aload 1 /* delegatedCred */
            invokevirtual sun.security.krb5.Credentials.getEncoded:()[B
        20: .line 207
            aload 5 /* client */
        21: .line 208
            aload 6 /* server */
        22: .line 209
            aload 2 /* sessionKey */
            invokevirtual sun.security.krb5.EncryptionKey.getBytes:()[B
        23: .line 210
            aload 2 /* sessionKey */
            invokevirtual sun.security.krb5.EncryptionKey.getEType:()I
        24: .line 211
            aload 1 /* delegatedCred */
            invokevirtual sun.security.krb5.Credentials.getFlags:()[Z
        25: .line 212
            aload 1 /* delegatedCred */
            invokevirtual sun.security.krb5.Credentials.getAuthTime:()Ljava/util/Date;
        26: .line 213
            aload 1 /* delegatedCred */
            invokevirtual sun.security.krb5.Credentials.getStartTime:()Ljava/util/Date;
        27: .line 214
            aload 1 /* delegatedCred */
            invokevirtual sun.security.krb5.Credentials.getEndTime:()Ljava/util/Date;
        28: .line 215
            aload 1 /* delegatedCred */
            invokevirtual sun.security.krb5.Credentials.getRenewTill:()Ljava/util/Date;
        29: .line 216
            aload 1 /* delegatedCred */
            invokevirtual sun.security.krb5.Credentials.getClientAddresses:()[Ljava/net/InetAddress;
        30: .line 204
            invokespecial sun.security.jgss.krb5.Krb5InitCredential.<init>:(Lsun/security/jgss/krb5/Krb5NameElement;Lsun/security/krb5/Credentials;[BLjavax/security/auth/kerberos/KerberosPrincipal;Ljavax/security/auth/kerberos/KerberosPrincipal;[BI[ZLjava/util/Date;Ljava/util/Date;Ljava/util/Date;Ljava/util/Date;[Ljava/net/InetAddress;)V
            areturn
        end local 7 // sun.security.jgss.krb5.Krb5NameElement credName
        end local 6 // javax.security.auth.kerberos.KerberosPrincipal server
        end local 5 // javax.security.auth.kerberos.KerberosPrincipal client
        end local 4 // sun.security.krb5.PrincipalName sPrinc
        end local 3 // sun.security.krb5.PrincipalName cPrinc
        end local 2 // sun.security.krb5.EncryptionKey sessionKey
        end local 1 // sun.security.krb5.Credentials delegatedCred
        end local 0 // sun.security.jgss.krb5.Krb5NameElement name
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   31     0           name  Lsun/security/jgss/krb5/Krb5NameElement;
            0   31     1  delegatedCred  Lsun/security/krb5/Credentials;
            1   31     2     sessionKey  Lsun/security/krb5/EncryptionKey;
            2   31     3         cPrinc  Lsun/security/krb5/PrincipalName;
            3   31     4         sPrinc  Lsun/security/krb5/PrincipalName;
            4   31     5         client  Ljavax/security/auth/kerberos/KerberosPrincipal;
            5   31     6         server  Ljavax/security/auth/kerberos/KerberosPrincipal;
            6   31     7       credName  Lsun/security/jgss/krb5/Krb5NameElement;
            8   12     8       fullName  Ljava/lang/String;
    Exceptions:
      throws org.ietf.jgss.GSSException
    MethodParameters:
               Name  Flags
      name           
      delegatedCred  

  public final sun.security.jgss.spi.GSSNameSpi getName();
    descriptor: ()Lsun/security/jgss/spi/GSSNameSpi;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.krb5.Krb5InitCredential this
         0: .line 227
            aload 0 /* this */
            getfield sun.security.jgss.krb5.Krb5InitCredential.name:Lsun/security/jgss/krb5/Krb5NameElement;
            areturn
        end local 0 // sun.security.jgss.krb5.Krb5InitCredential this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/jgss/krb5/Krb5InitCredential;
    Exceptions:
      throws org.ietf.jgss.GSSException

  public int getInitLifetime();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // sun.security.jgss.krb5.Krb5InitCredential this
         0: .line 237
            iconst_0
            istore 1 /* retVal */
        start local 1 // int retVal
         1: .line 238
            aload 0 /* this */
            invokevirtual sun.security.jgss.krb5.Krb5InitCredential.getEndTime:()Ljava/util/Date;
            astore 2 /* d */
        start local 2 // java.util.Date d
         2: .line 239
            aload 2 /* d */
            ifnonnull 4
         3: .line 240
            iconst_0
            ireturn
         4: .line 242
      StackMap locals: int java.util.Date
      StackMap stack:
            aload 2 /* d */
            invokevirtual java.util.Date.getTime:()J
            new java.util.Date
            dup
            invokespecial java.util.Date.<init>:()V
            invokevirtual java.util.Date.getTime:()J
            lsub
            l2i
            istore 1 /* retVal */
         5: .line 244
            iload 1 /* retVal */
            sipush 1000
            idiv
            ireturn
        end local 2 // java.util.Date d
        end local 1 // int retVal
        end local 0 // sun.security.jgss.krb5.Krb5InitCredential this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lsun/security/jgss/krb5/Krb5InitCredential;
            1    6     1  retVal  I
            2    6     2       d  Ljava/util/Date;
    Exceptions:
      throws org.ietf.jgss.GSSException

  public int getAcceptLifetime();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.krb5.Krb5InitCredential this
         0: .line 254
            iconst_0
            ireturn
        end local 0 // sun.security.jgss.krb5.Krb5InitCredential this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/jgss/krb5/Krb5InitCredential;
    Exceptions:
      throws org.ietf.jgss.GSSException

  public boolean isInitiatorCredential();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.krb5.Krb5InitCredential this
         0: .line 258
            iconst_1
            ireturn
        end local 0 // sun.security.jgss.krb5.Krb5InitCredential this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/jgss/krb5/Krb5InitCredential;
    Exceptions:
      throws org.ietf.jgss.GSSException

  public boolean isAcceptorCredential();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.krb5.Krb5InitCredential this
         0: .line 262
            iconst_0
            ireturn
        end local 0 // sun.security.jgss.krb5.Krb5InitCredential this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/jgss/krb5/Krb5InitCredential;
    Exceptions:
      throws org.ietf.jgss.GSSException

  public final org.ietf.jgss.Oid getMechanism();
    descriptor: ()Lorg/ietf/jgss/Oid;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.krb5.Krb5InitCredential this
         0: .line 273
            getstatic sun.security.jgss.krb5.Krb5MechFactory.GSS_KRB5_MECH_OID:Lorg/ietf/jgss/Oid;
            areturn
        end local 0 // sun.security.jgss.krb5.Krb5InitCredential this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/jgss/krb5/Krb5InitCredential;

  public final java.security.Provider getProvider();
    descriptor: ()Ljava/security/Provider;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.krb5.Krb5InitCredential this
         0: .line 277
            getstatic sun.security.jgss.krb5.Krb5MechFactory.PROVIDER:Ljava/security/Provider;
            areturn
        end local 0 // sun.security.jgss.krb5.Krb5InitCredential this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/jgss/krb5/Krb5InitCredential;

  sun.security.krb5.Credentials getKrb5Credentials();
    descriptor: ()Lsun/security/krb5/Credentials;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.jgss.krb5.Krb5InitCredential this
         0: .line 286
            aload 0 /* this */
            getfield sun.security.jgss.krb5.Krb5InitCredential.krb5Credentials:Lsun/security/krb5/Credentials;
            areturn
        end local 0 // sun.security.jgss.krb5.Krb5InitCredential this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/jgss/krb5/Krb5InitCredential;

  public void dispose();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=1
        start local 0 // sun.security.jgss.krb5.Krb5InitCredential this
         0: .line 299
            aload 0 /* this */
            invokevirtual sun.security.jgss.krb5.Krb5InitCredential.destroy:()V
         1: .line 300
            goto 8
      StackMap locals:
      StackMap stack: javax.security.auth.DestroyFailedException
         2: astore 1 /* e */
        start local 1 // javax.security.auth.DestroyFailedException e
         3: .line 302
            new org.ietf.jgss.GSSException
            dup
            bipush 11
            iconst_m1
         4: .line 303
            new java.lang.StringBuilder
            dup
            ldc "Could not destroy credentials - "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* e */
            invokevirtual javax.security.auth.DestroyFailedException.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 302
            invokespecial org.ietf.jgss.GSSException.<init>:(IILjava/lang/String;)V
         6: .line 301
            astore 2 /* gssException */
        start local 2 // org.ietf.jgss.GSSException gssException
         7: .line 304
            aload 2 /* gssException */
            aload 1 /* e */
            invokevirtual org.ietf.jgss.GSSException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        end local 2 // org.ietf.jgss.GSSException gssException
        end local 1 // javax.security.auth.DestroyFailedException e
         8: .line 306
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.security.jgss.krb5.Krb5InitCredential this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lsun/security/jgss/krb5/Krb5InitCredential;
            3    8     1             e  Ljavax/security/auth/DestroyFailedException;
            7    8     2  gssException  Lorg/ietf/jgss/GSSException;
      Exception table:
        from    to  target  type
           0     1       2  Class javax.security.auth.DestroyFailedException
    Exceptions:
      throws org.ietf.jgss.GSSException

  private static javax.security.auth.kerberos.KerberosTicket getTgt(sun.security.jgss.GSSCaller, sun.security.jgss.krb5.Krb5NameElement, int);
    descriptor: (Lsun/security/jgss/GSSCaller;Lsun/security/jgss/krb5/Krb5NameElement;I)Ljavax/security/auth/kerberos/KerberosTicket;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=7, args_size=3
        start local 0 // sun.security.jgss.GSSCaller caller
        start local 1 // sun.security.jgss.krb5.Krb5NameElement name
        start local 2 // int initLifetime
         0: .line 321
            aload 1 /* name */
            ifnull 3
         1: .line 322
            aload 1 /* name */
            invokevirtual sun.security.jgss.krb5.Krb5NameElement.getKrb5PrincipalName:()Lsun/security/krb5/PrincipalName;
            invokevirtual sun.security.krb5.PrincipalName.getName:()Ljava/lang/String;
            astore 3 /* clientPrincipal */
        start local 3 // java.lang.String clientPrincipal
         2: .line 323
            goto 4
        end local 3 // java.lang.String clientPrincipal
         3: .line 324
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* clientPrincipal */
        start local 3 // java.lang.String clientPrincipal
         4: .line 327
      StackMap locals: java.lang.String
      StackMap stack:
            invokestatic java.security.AccessController.getContext:()Ljava/security/AccessControlContext;
            astore 4 /* acc */
        start local 4 // java.security.AccessControlContext acc
         5: .line 330
            aload 0 /* caller */
            getstatic sun.security.jgss.GSSCaller.CALLER_UNKNOWN:Lsun/security/jgss/GSSCaller;
            if_acmpne 7
         6: .line 331
            getstatic sun.security.jgss.GSSCaller.CALLER_INITIATE:Lsun/security/jgss/GSSCaller;
            goto 8
         7: .line 332
      StackMap locals: java.security.AccessControlContext
      StackMap stack:
            aload 0 /* caller */
         8: .line 330
      StackMap locals:
      StackMap stack: sun.security.jgss.GSSCaller
            astore 5 /* realCaller */
        start local 5 // sun.security.jgss.GSSCaller realCaller
         9: .line 334
            new sun.security.jgss.krb5.Krb5InitCredential$1
            dup
            aload 5 /* realCaller */
            aload 3 /* clientPrincipal */
            aload 4 /* acc */
            invokespecial sun.security.jgss.krb5.Krb5InitCredential$1.<init>:(Lsun/security/jgss/GSSCaller;Ljava/lang/String;Ljava/security/AccessControlContext;)V
        10: .line 333
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            checkcast javax.security.auth.kerberos.KerberosTicket
        11: areturn
        end local 5 // sun.security.jgss.GSSCaller realCaller
        12: .line 342
      StackMap locals:
      StackMap stack: java.security.PrivilegedActionException
            astore 5 /* e */
        start local 5 // java.security.PrivilegedActionException e
        13: .line 344
            new org.ietf.jgss.GSSException
            dup
            bipush 13
            iconst_m1
        14: .line 345
            new java.lang.StringBuilder
            dup
            ldc "Attempt to obtain new INITIATE credentials failed! ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        15: .line 346
            aload 5 /* e */
            invokevirtual java.security.PrivilegedActionException.getMessage:()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;
        16: .line 345
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        17: .line 344
            invokespecial org.ietf.jgss.GSSException.<init>:(IILjava/lang/String;)V
        18: .line 343
            astore 6 /* ge */
        start local 6 // org.ietf.jgss.GSSException ge
        19: .line 347
            aload 6 /* ge */
            aload 5 /* e */
            invokevirtual java.security.PrivilegedActionException.getException:()Ljava/lang/Exception;
            invokevirtual org.ietf.jgss.GSSException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        20: .line 348
            aload 6 /* ge */
            athrow
        end local 6 // org.ietf.jgss.GSSException ge
        end local 5 // java.security.PrivilegedActionException e
        end local 4 // java.security.AccessControlContext acc
        end local 3 // java.lang.String clientPrincipal
        end local 2 // int initLifetime
        end local 1 // sun.security.jgss.krb5.Krb5NameElement name
        end local 0 // sun.security.jgss.GSSCaller caller
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   21     0           caller  Lsun/security/jgss/GSSCaller;
            0   21     1             name  Lsun/security/jgss/krb5/Krb5NameElement;
            0   21     2     initLifetime  I
            2    3     3  clientPrincipal  Ljava/lang/String;
            4   21     3  clientPrincipal  Ljava/lang/String;
            5   21     4              acc  Ljava/security/AccessControlContext;
            9   12     5       realCaller  Lsun/security/jgss/GSSCaller;
           13   21     5                e  Ljava/security/PrivilegedActionException;
           19   21     6               ge  Lorg/ietf/jgss/GSSException;
      Exception table:
        from    to  target  type
           5    11      12  Class java.security.PrivilegedActionException
    Exceptions:
      throws org.ietf.jgss.GSSException
    MethodParameters:
              Name  Flags
      caller        
      name          
      initLifetime  

  public sun.security.jgss.spi.GSSCredentialSpi impersonate(sun.security.jgss.spi.GSSNameSpi);
    descriptor: (Lsun/security/jgss/spi/GSSNameSpi;)Lsun/security/jgss/spi/GSSCredentialSpi;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // sun.security.jgss.krb5.Krb5InitCredential this
        start local 1 // sun.security.jgss.spi.GSSNameSpi name
         0: .line 355
            aload 1 /* name */
            checkcast sun.security.jgss.krb5.Krb5NameElement
            astore 2 /* kname */
        start local 2 // sun.security.jgss.krb5.Krb5NameElement kname
         1: .line 357
            aload 2 /* kname */
            invokevirtual sun.security.jgss.krb5.Krb5NameElement.getKrb5PrincipalName:()Lsun/security/krb5/PrincipalName;
            aload 0 /* this */
            getfield sun.security.jgss.krb5.Krb5InitCredential.krb5Credentials:Lsun/security/krb5/Credentials;
         2: .line 356
            invokestatic sun.security.krb5.Credentials.acquireS4U2selfCreds:(Lsun/security/krb5/PrincipalName;Lsun/security/krb5/Credentials;)Lsun/security/krb5/Credentials;
            astore 3 /* newCred */
        start local 3 // sun.security.krb5.Credentials newCred
         3: .line 358
            new sun.security.jgss.krb5.Krb5ProxyCredential
            dup
            aload 0 /* this */
            aload 2 /* kname */
            aload 3 /* newCred */
            invokevirtual sun.security.krb5.Credentials.getTicket:()Lsun/security/krb5/internal/Ticket;
            invokespecial sun.security.jgss.krb5.Krb5ProxyCredential.<init>:(Lsun/security/jgss/krb5/Krb5InitCredential;Lsun/security/jgss/krb5/Krb5NameElement;Lsun/security/krb5/internal/Ticket;)V
         4: areturn
        end local 3 // sun.security.krb5.Credentials newCred
        end local 2 // sun.security.jgss.krb5.Krb5NameElement kname
         5: .line 359
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 2 /* ke */
        start local 2 // java.lang.Exception ke
         6: .line 361
            new org.ietf.jgss.GSSException
            dup
            bipush 11
            iconst_m1
         7: .line 362
            ldc "Attempt to obtain S4U2self credentials failed!"
         8: .line 361
            invokespecial org.ietf.jgss.GSSException.<init>:(IILjava/lang/String;)V
         9: .line 360
            astore 3 /* ge */
        start local 3 // org.ietf.jgss.GSSException ge
        10: .line 363
            aload 3 /* ge */
            aload 2 /* ke */
            invokevirtual org.ietf.jgss.GSSException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        11: .line 364
            aload 3 /* ge */
            athrow
        end local 3 // org.ietf.jgss.GSSException ge
        end local 2 // java.lang.Exception ke
        end local 1 // sun.security.jgss.spi.GSSNameSpi name
        end local 0 // sun.security.jgss.krb5.Krb5InitCredential this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lsun/security/jgss/krb5/Krb5InitCredential;
            0   12     1     name  Lsun/security/jgss/spi/GSSNameSpi;
            1    5     2    kname  Lsun/security/jgss/krb5/Krb5NameElement;
            3    5     3  newCred  Lsun/security/krb5/Credentials;
            6   12     2       ke  Ljava/lang/Exception;
           10   12     3       ge  Lorg/ietf/jgss/GSSException;
      Exception table:
        from    to  target  type
           0     4       5  Class java.io.IOException
           0     4       5  Class sun.security.krb5.KrbException
    Exceptions:
      throws org.ietf.jgss.GSSException
    MethodParameters:
      Name  Flags
      name  
}
SourceFile: "Krb5InitCredential.java"
NestMembers:
  sun.security.jgss.krb5.Krb5InitCredential$1
InnerClasses:
  sun.security.jgss.krb5.Krb5InitCredential$1