public class sun.security.krb5.internal.KDCOptions extends sun.security.krb5.internal.util.KerberosFlags
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.security.krb5.internal.KDCOptions
  super_class: sun.security.krb5.internal.util.KerberosFlags
{
  public final int KDC_OPT_PROXIABLE;
    descriptor: I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    ConstantValue: 268435456

  public final int KDC_OPT_RENEWABLE_OK;
    descriptor: I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    ConstantValue: 16

  public final int KDC_OPT_FORWARDABLE;
    descriptor: I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    ConstantValue: 1073741824

  public static final int RESERVED;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int FORWARDABLE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int FORWARDED;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int PROXIABLE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final int PROXY;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  public static final int ALLOW_POSTDATE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  public static final int POSTDATED;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 6

  public static final int UNUSED7;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 7

  public static final int RENEWABLE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  public static final int UNUSED9;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 9

  public static final int UNUSED10;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  public static final int UNUSED11;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 11

  public static final int RENEWABLE_OK;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 27

  public static final int ENC_TKT_IN_SKEY;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 28

  public static final int RENEW;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 30

  public static final int VALIDATE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 31

  private boolean DEBUG;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.security.krb5.internal.KDCOptions this
         0: .line 149
            aload 0 /* this */
            bipush 32
            invokespecial sun.security.krb5.internal.util.KerberosFlags.<init>:(I)V
         1: .line 122
            aload 0 /* this */
            ldc 268435456
            putfield sun.security.krb5.internal.KDCOptions.KDC_OPT_PROXIABLE:I
         2: .line 123
            aload 0 /* this */
            bipush 16
            putfield sun.security.krb5.internal.KDCOptions.KDC_OPT_RENEWABLE_OK:I
         3: .line 124
            aload 0 /* this */
            ldc 1073741824
            putfield sun.security.krb5.internal.KDCOptions.KDC_OPT_FORWARDABLE:I
         4: .line 146
            aload 0 /* this */
            getstatic sun.security.krb5.internal.Krb5.DEBUG:Z
            putfield sun.security.krb5.internal.KDCOptions.DEBUG:Z
         5: .line 150
            aload 0 /* this */
            invokevirtual sun.security.krb5.internal.KDCOptions.setDefault:()V
         6: .line 151
            return
        end local 0 // sun.security.krb5.internal.KDCOptions this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/security/krb5/internal/KDCOptions;

  public void <init>(int, byte[]);
    descriptor: (I[B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.security.krb5.internal.KDCOptions this
        start local 1 // int size
        start local 2 // byte[] data
         0: .line 154
            aload 0 /* this */
            iload 1 /* size */
            aload 2 /* data */
            invokespecial sun.security.krb5.internal.util.KerberosFlags.<init>:(I[B)V
         1: .line 122
            aload 0 /* this */
            ldc 268435456
            putfield sun.security.krb5.internal.KDCOptions.KDC_OPT_PROXIABLE:I
         2: .line 123
            aload 0 /* this */
            bipush 16
            putfield sun.security.krb5.internal.KDCOptions.KDC_OPT_RENEWABLE_OK:I
         3: .line 124
            aload 0 /* this */
            ldc 1073741824
            putfield sun.security.krb5.internal.KDCOptions.KDC_OPT_FORWARDABLE:I
         4: .line 146
            aload 0 /* this */
            getstatic sun.security.krb5.internal.Krb5.DEBUG:Z
            putfield sun.security.krb5.internal.KDCOptions.DEBUG:Z
         5: .line 155
            iload 1 /* size */
            aload 2 /* data */
            arraylength
            bipush 8
            imul
            if_icmpgt 6
            iload 1 /* size */
            bipush 32
            if_icmple 7
         6: .line 156
      StackMap locals: sun.security.krb5.internal.KDCOptions int byte[]
      StackMap stack:
            new sun.security.krb5.Asn1Exception
            dup
            sipush 502
            invokespecial sun.security.krb5.Asn1Exception.<init>:(I)V
            athrow
         7: .line 157
      StackMap locals:
      StackMap stack:
            return
        end local 2 // byte[] data
        end local 1 // int size
        end local 0 // sun.security.krb5.internal.KDCOptions this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lsun/security/krb5/internal/KDCOptions;
            0    8     1  size  I
            0    8     2  data  [B
    Exceptions:
      throws sun.security.krb5.Asn1Exception
    MethodParameters:
      Name  Flags
      size  
      data  

  public void <init>(boolean[]);
    descriptor: ([Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.security.krb5.internal.KDCOptions this
        start local 1 // boolean[] data
         0: .line 168
            aload 0 /* this */
            aload 1 /* data */
            invokespecial sun.security.krb5.internal.util.KerberosFlags.<init>:([Z)V
         1: .line 122
            aload 0 /* this */
            ldc 268435456
            putfield sun.security.krb5.internal.KDCOptions.KDC_OPT_PROXIABLE:I
         2: .line 123
            aload 0 /* this */
            bipush 16
            putfield sun.security.krb5.internal.KDCOptions.KDC_OPT_RENEWABLE_OK:I
         3: .line 124
            aload 0 /* this */
            ldc 1073741824
            putfield sun.security.krb5.internal.KDCOptions.KDC_OPT_FORWARDABLE:I
         4: .line 146
            aload 0 /* this */
            getstatic sun.security.krb5.internal.Krb5.DEBUG:Z
            putfield sun.security.krb5.internal.KDCOptions.DEBUG:Z
         5: .line 169
            aload 1 /* data */
            arraylength
            bipush 32
            if_icmple 7
         6: .line 170
            new sun.security.krb5.Asn1Exception
            dup
            sipush 502
            invokespecial sun.security.krb5.Asn1Exception.<init>:(I)V
            athrow
         7: .line 172
      StackMap locals: sun.security.krb5.internal.KDCOptions boolean[]
      StackMap stack:
            return
        end local 1 // boolean[] data
        end local 0 // sun.security.krb5.internal.KDCOptions this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lsun/security/krb5/internal/KDCOptions;
            0    8     1  data  [Z
    Exceptions:
      throws sun.security.krb5.Asn1Exception
    MethodParameters:
      Name  Flags
      data  

  public void <init>(sun.security.util.DerValue);
    descriptor: (Lsun/security/util/DerValue;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.security.krb5.internal.KDCOptions this
        start local 1 // sun.security.util.DerValue encoding
         0: .line 175
            aload 0 /* this */
            aload 1 /* encoding */
            iconst_1
            invokevirtual sun.security.util.DerValue.getUnalignedBitString:(Z)Lsun/security/util/BitArray;
            invokevirtual sun.security.util.BitArray.toBooleanArray:()[Z
            invokespecial sun.security.krb5.internal.KDCOptions.<init>:([Z)V
         1: .line 176
            return
        end local 1 // sun.security.util.DerValue encoding
        end local 0 // sun.security.krb5.internal.KDCOptions this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lsun/security/krb5/internal/KDCOptions;
            0    2     1  encoding  Lsun/security/util/DerValue;
    Exceptions:
      throws sun.security.krb5.Asn1Exception, java.io.IOException
    MethodParameters:
          Name  Flags
      encoding  

  public void <init>(byte[]);
    descriptor: ([B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.security.krb5.internal.KDCOptions this
        start local 1 // byte[] options
         0: .line 185
            aload 0 /* this */
            aload 1 /* options */
            arraylength
            bipush 8
            imul
            aload 1 /* options */
            invokespecial sun.security.krb5.internal.util.KerberosFlags.<init>:(I[B)V
         1: .line 122
            aload 0 /* this */
            ldc 268435456
            putfield sun.security.krb5.internal.KDCOptions.KDC_OPT_PROXIABLE:I
         2: .line 123
            aload 0 /* this */
            bipush 16
            putfield sun.security.krb5.internal.KDCOptions.KDC_OPT_RENEWABLE_OK:I
         3: .line 124
            aload 0 /* this */
            ldc 1073741824
            putfield sun.security.krb5.internal.KDCOptions.KDC_OPT_FORWARDABLE:I
         4: .line 146
            aload 0 /* this */
            getstatic sun.security.krb5.internal.Krb5.DEBUG:Z
            putfield sun.security.krb5.internal.KDCOptions.DEBUG:Z
         5: .line 186
            return
        end local 1 // byte[] options
        end local 0 // sun.security.krb5.internal.KDCOptions this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lsun/security/krb5/internal/KDCOptions;
            0    6     1  options  [B
    MethodParameters:
         Name  Flags
      options  

  public static sun.security.krb5.internal.KDCOptions parse(sun.security.util.DerInputStream, byte, boolean);
    descriptor: (Lsun/security/util/DerInputStream;BZ)Lsun/security/krb5/internal/KDCOptions;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // sun.security.util.DerInputStream data
        start local 1 // byte explicitTag
        start local 2 // boolean optional
         0: .line 204
            iload 2 /* optional */
            ifeq 2
            aload 0 /* data */
            invokevirtual sun.security.util.DerInputStream.peekByte:()I
            i2b
            bipush 31
            iand
            iload 1 /* explicitTag */
            if_icmpeq 2
         1: .line 205
            aconst_null
            areturn
         2: .line 206
      StackMap locals:
      StackMap stack:
            aload 0 /* data */
            invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
            astore 3 /* der */
        start local 3 // sun.security.util.DerValue der
         3: .line 207
            iload 1 /* explicitTag */
            aload 3 /* der */
            invokevirtual sun.security.util.DerValue.getTag:()B
            bipush 31
            iand
            if_icmpeq 5
         4: .line 208
            new sun.security.krb5.Asn1Exception
            dup
            sipush 906
            invokespecial sun.security.krb5.Asn1Exception.<init>:(I)V
            athrow
         5: .line 210
      StackMap locals: sun.security.util.DerValue
      StackMap stack:
            aload 3 /* der */
            invokevirtual sun.security.util.DerValue.getData:()Lsun/security/util/DerInputStream;
            invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
            astore 4 /* subDer */
        start local 4 // sun.security.util.DerValue subDer
         6: .line 211
            new sun.security.krb5.internal.KDCOptions
            dup
            aload 4 /* subDer */
            invokespecial sun.security.krb5.internal.KDCOptions.<init>:(Lsun/security/util/DerValue;)V
            areturn
        end local 4 // sun.security.util.DerValue subDer
        end local 3 // sun.security.util.DerValue der
        end local 2 // boolean optional
        end local 1 // byte explicitTag
        end local 0 // sun.security.util.DerInputStream data
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         data  Lsun/security/util/DerInputStream;
            0    7     1  explicitTag  B
            0    7     2     optional  Z
            3    7     3          der  Lsun/security/util/DerValue;
            6    7     4       subDer  Lsun/security/util/DerValue;
    Exceptions:
      throws sun.security.krb5.Asn1Exception, java.io.IOException
    MethodParameters:
             Name  Flags
      data         
      explicitTag  
      optional     

  public void set(int, boolean);
    descriptor: (IZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.security.krb5.internal.KDCOptions this
        start local 1 // int option
        start local 2 // boolean value
         0: .line 224
            aload 0 /* this */
            iload 1 /* option */
            iload 2 /* value */
            invokespecial sun.security.krb5.internal.util.KerberosFlags.set:(IZ)V
         1: .line 225
            return
        end local 2 // boolean value
        end local 1 // int option
        end local 0 // sun.security.krb5.internal.KDCOptions this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lsun/security/krb5/internal/KDCOptions;
            0    2     1  option  I
            0    2     2   value  Z
    Exceptions:
      throws java.lang.ArrayIndexOutOfBoundsException
    MethodParameters:
        Name  Flags
      option  
      value   

  public boolean get(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.krb5.internal.KDCOptions this
        start local 1 // int option
         0: .line 237
            aload 0 /* this */
            iload 1 /* option */
            invokespecial sun.security.krb5.internal.util.KerberosFlags.get:(I)Z
            ireturn
        end local 1 // int option
        end local 0 // sun.security.krb5.internal.KDCOptions this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lsun/security/krb5/internal/KDCOptions;
            0    1     1  option  I
    Exceptions:
      throws java.lang.ArrayIndexOutOfBoundsException
    MethodParameters:
        Name  Flags
      option  

  private void setDefault();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // sun.security.krb5.internal.KDCOptions this
         0: .line 244
            invokestatic sun.security.krb5.Config.getInstance:()Lsun/security/krb5/Config;
            astore 1 /* config */
        start local 1 // sun.security.krb5.Config config
         1: .line 251
            aload 1 /* config */
            ldc "kdc_default_options"
         2: .line 252
            ldc "libdefaults"
         3: .line 251
            invokevirtual sun.security.krb5.Config.getDefaultIntValue:(Ljava/lang/String;Ljava/lang/String;)I
            istore 2 /* options */
        start local 2 // int options
         4: .line 254
            iload 2 /* options */
            bipush 27
            iand
            bipush 27
            if_icmpne 7
         5: .line 255
            aload 0 /* this */
            bipush 27
            iconst_1
            invokevirtual sun.security.krb5.internal.KDCOptions.set:(IZ)V
         6: .line 256
            goto 9
         7: .line 257
      StackMap locals: sun.security.krb5.Config int
      StackMap stack:
            aload 1 /* config */
            ldc "renewable"
            ldc "libdefaults"
            invokevirtual sun.security.krb5.Config.getDefaultBooleanValue:(Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 9
         8: .line 258
            aload 0 /* this */
            bipush 27
            iconst_1
            invokevirtual sun.security.krb5.internal.KDCOptions.set:(IZ)V
         9: .line 261
      StackMap locals:
      StackMap stack:
            iload 2 /* options */
            iconst_3
            iand
            iconst_3
            if_icmpne 12
        10: .line 262
            aload 0 /* this */
            iconst_3
            iconst_1
            invokevirtual sun.security.krb5.internal.KDCOptions.set:(IZ)V
        11: .line 263
            goto 14
        12: .line 264
      StackMap locals:
      StackMap stack:
            aload 1 /* config */
            ldc "proxiable"
            ldc "libdefaults"
            invokevirtual sun.security.krb5.Config.getDefaultBooleanValue:(Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 14
        13: .line 265
            aload 0 /* this */
            iconst_3
            iconst_1
            invokevirtual sun.security.krb5.internal.KDCOptions.set:(IZ)V
        14: .line 269
      StackMap locals:
      StackMap stack:
            iload 2 /* options */
            iconst_1
            iand
            iconst_1
            if_icmpne 17
        15: .line 270
            aload 0 /* this */
            iconst_1
            iconst_1
            invokevirtual sun.security.krb5.internal.KDCOptions.set:(IZ)V
        16: .line 271
            goto 24
        17: .line 272
      StackMap locals:
      StackMap stack:
            aload 1 /* config */
            ldc "forwardable"
            ldc "libdefaults"
            invokevirtual sun.security.krb5.Config.getDefaultBooleanValue:(Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 24
        18: .line 273
            aload 0 /* this */
            iconst_1
            iconst_1
            invokevirtual sun.security.krb5.internal.KDCOptions.set:(IZ)V
        end local 2 // int options
        end local 1 // sun.security.krb5.Config config
        19: .line 276
            goto 24
      StackMap locals: sun.security.krb5.internal.KDCOptions
      StackMap stack: sun.security.krb5.KrbException
        20: astore 1 /* e */
        start local 1 // sun.security.krb5.KrbException e
        21: .line 277
            aload 0 /* this */
            getfield sun.security.krb5.internal.KDCOptions.DEBUG:Z
            ifeq 24
        22: .line 278
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "Exception in getting default values for KDC Options from the configuration "
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        23: .line 280
            aload 1 /* e */
            invokevirtual sun.security.krb5.KrbException.printStackTrace:()V
        end local 1 // sun.security.krb5.KrbException e
        24: .line 284
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.security.krb5.internal.KDCOptions this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   25     0     this  Lsun/security/krb5/internal/KDCOptions;
            1   19     1   config  Lsun/security/krb5/Config;
            4   19     2  options  I
           21   24     1        e  Lsun/security/krb5/KrbException;
      Exception table:
        from    to  target  type
           0    19      20  Class sun.security.krb5.KrbException
}
SourceFile: "KDCOptions.java"