class sun.net.www.protocol.http.DigestAuthentication$Parameters implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.net.www.protocol.http.DigestAuthentication$Parameters
  super_class: java.lang.Object
{
  private boolean serverQop;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String opaque;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String cnonce;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String nonce;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String algorithm;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private int NCcount;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String cachedHA1;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

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

  private static final int cnonceRepeat;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final int cnoncelen;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 40

  private static java.util.Random random;
    descriptor: Ljava/util/Random;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  int cnonce_count;
    descriptor: I
    flags: (0x0000) 

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 78
            new java.util.Random
            dup
            invokespecial java.util.Random.<init>:()V
            putstatic sun.net.www.protocol.http.DigestAuthentication$Parameters.random:Ljava/util/Random;
         1: .line 79
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 81
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 63
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.NCcount:I
         2: .line 69
            aload 0 /* this */
            iconst_1
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.redoCachedHA1:Z
         3: .line 100
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce_count:I
         4: .line 82
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.serverQop:Z
         5: .line 83
            aload 0 /* this */
            aconst_null
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.opaque:Ljava/lang/String;
         6: .line 84
            aload 0 /* this */
            aconst_null
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.algorithm:Ljava/lang/String;
         7: .line 85
            aload 0 /* this */
            aconst_null
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cachedHA1:Ljava/lang/String;
         8: .line 86
            aload 0 /* this */
            aconst_null
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.nonce:Ljava/lang/String;
         9: .line 87
            aload 0 /* this */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.setNewCnonce:()V
        10: .line 88
            return
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  boolean authQop();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 91
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.serverQop:Z
            ireturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized void incrementNC();
    descriptor: ()V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 94
            aload 0 /* this */
            dup
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.NCcount:I
            iconst_1
            iadd
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.NCcount:I
         1: .line 95
            return
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized int getNCCount();
    descriptor: ()I
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 97
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.NCcount:I
            ireturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized java.lang.String getCnonce();
    descriptor: ()Ljava/lang/String;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 104
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce_count:I
            iconst_5
            if_icmplt 2
         1: .line 105
            aload 0 /* this */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.setNewCnonce:()V
         2: .line 107
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce_count:I
            iconst_1
            iadd
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce_count:I
         3: .line 108
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce:Ljava/lang/String;
            areturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized void setNewCnonce();
    descriptor: ()V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=6, locals=5, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 111
            bipush 20
            newarray 8
            astore 1 /* bb */
        start local 1 // byte[] bb
         1: .line 112
            bipush 40
            newarray 5
            astore 2 /* cc */
        start local 2 // char[] cc
         2: .line 113
            getstatic sun.net.www.protocol.http.DigestAuthentication$Parameters.random:Ljava/util/Random;
            aload 1 /* bb */
            invokevirtual java.util.Random.nextBytes:([B)V
         3: .line 114
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 9
         5: .line 115
      StackMap locals: byte[] char[] int
      StackMap stack:
            aload 1 /* bb */
            iload 3 /* i */
            baload
            sipush 128
            iadd
            istore 4 /* x */
        start local 4 // int x
         6: .line 116
            aload 2 /* cc */
            iload 3 /* i */
            iconst_2
            imul
            bipush 65
            iload 4 /* x */
            bipush 16
            idiv
            iadd
            i2c
            castore
         7: .line 117
            aload 2 /* cc */
            iload 3 /* i */
            iconst_2
            imul
            iconst_1
            iadd
            bipush 65
            iload 4 /* x */
            bipush 16
            irem
            iadd
            i2c
            castore
        end local 4 // int x
         8: .line 114
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            bipush 20
            if_icmplt 5
        end local 3 // int i
        10: .line 119
            aload 0 /* this */
            new java.lang.String
            dup
            aload 2 /* cc */
            iconst_0
            bipush 40
            invokespecial java.lang.String.<init>:([CII)V
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce:Ljava/lang/String;
        11: .line 120
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce_count:I
        12: .line 121
            aload 0 /* this */
            iconst_1
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.redoCachedHA1:Z
        13: .line 122
            return
        end local 2 // char[] cc
        end local 1 // byte[] bb
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            1   14     1    bb  [B
            2   14     2    cc  [C
            4   10     3     i  I
            6    8     4     x  I

  synchronized void setQop(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
        start local 1 // java.lang.String qop
         0: .line 125
            aload 1 /* qop */
            ifnull 7
         1: .line 126
            new java.util.StringTokenizer
            dup
            aload 1 /* qop */
            ldc " "
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 2 /* st */
        start local 2 // java.util.StringTokenizer st
         2: .line 127
            goto 6
         3: .line 128
      StackMap locals: java.util.StringTokenizer
      StackMap stack:
            aload 2 /* st */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            ldc "auth"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 6
         4: .line 129
            aload 0 /* this */
            iconst_1
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.serverQop:Z
         5: .line 130
            return
         6: .line 127
      StackMap locals:
      StackMap stack:
            aload 2 /* st */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 3
        end local 2 // java.util.StringTokenizer st
         7: .line 134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.serverQop:Z
         8: .line 135
            return
        end local 1 // java.lang.String qop
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            0    9     1   qop  Ljava/lang/String;
            2    7     2    st  Ljava/util/StringTokenizer;
    MethodParameters:
      Name  Flags
      qop   

  synchronized java.lang.String getOpaque();
    descriptor: ()Ljava/lang/String;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 137
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.opaque:Ljava/lang/String;
            areturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized void setOpaque(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
        start local 1 // java.lang.String s
         0: .line 138
            aload 0 /* this */
            aload 1 /* s */
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.opaque:Ljava/lang/String;
            return
        end local 1 // java.lang.String s
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            0    1     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  synchronized java.lang.String getNonce();
    descriptor: ()Ljava/lang/String;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 140
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.nonce:Ljava/lang/String;
            areturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized void setNonce(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
        start local 1 // java.lang.String s
         0: .line 143
            aload 1 /* s */
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.nonce:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
         1: .line 144
            aload 0 /* this */
            aload 1 /* s */
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.nonce:Ljava/lang/String;
         2: .line 145
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.NCcount:I
         3: .line 146
            aload 0 /* this */
            iconst_1
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.redoCachedHA1:Z
         4: .line 148
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String s
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            0    5     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  synchronized java.lang.String getCachedHA1();
    descriptor: ()Ljava/lang/String;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 151
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.redoCachedHA1:Z
            ifeq 2
         1: .line 152
            aconst_null
            areturn
         2: .line 154
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cachedHA1:Ljava/lang/String;
            areturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized void setCachedHA1(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
        start local 1 // java.lang.String s
         0: .line 159
            aload 0 /* this */
            aload 1 /* s */
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cachedHA1:Ljava/lang/String;
         1: .line 160
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.redoCachedHA1:Z
         2: .line 161
            return
        end local 1 // java.lang.String s
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            0    3     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  synchronized java.lang.String getAlgorithm();
    descriptor: ()Ljava/lang/String;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 163
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.algorithm:Ljava/lang/String;
            areturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized void setAlgorithm(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
        start local 1 // java.lang.String s
         0: .line 164
            aload 0 /* this */
            aload 1 /* s */
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.algorithm:Ljava/lang/String;
            return
        end local 1 // java.lang.String s
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            0    1     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     
}
SourceFile: "DigestAuthentication.java"
NestHost: sun.net.www.protocol.http.DigestAuthentication
InnerClasses:
  Parameters = sun.net.www.protocol.http.DigestAuthentication$Parameters of sun.net.www.protocol.http.DigestAuthentication