33 import java.util.Random;
34
35 import sun.net.www.HeaderParser;
36 import sun.net.NetProperties;
37 import java.security.MessageDigest;
38 import java.security.NoSuchAlgorithmException;
39 import java.security.PrivilegedAction;
40 import java.security.AccessController;
41 import java.util.Objects;
42 import static sun.net.www.protocol.http.HttpURLConnection.HTTP_CONNECT;
43
44 /**
45 * DigestAuthentication: Encapsulate an http server authentication using
46 * the "Digest" scheme, as described in RFC2069 and updated in RFC2617
47 *
48 * @author Bill Foote
49 */
50
51 class DigestAuthentication extends AuthenticationInfo {
52
53 private static final long serialVersionUID = 100L;
54
55 private String authMethod;
56
57 private static final String compatPropName = "http.auth.digest." +
58 "quoteParameters";
59
60 // true if http.auth.digest.quoteParameters Net property is true
61 private static final boolean delimCompatFlag;
62
63 static {
64 Boolean b = AccessController.doPrivileged(
65 new PrivilegedAction<>() {
66 public Boolean run() {
67 return NetProperties.getBoolean(compatPropName);
68 }
69 }
70 );
71 delimCompatFlag = (b == null) ? false : b.booleanValue();
72 }
|
33 import java.util.Random;
34
35 import sun.net.www.HeaderParser;
36 import sun.net.NetProperties;
37 import java.security.MessageDigest;
38 import java.security.NoSuchAlgorithmException;
39 import java.security.PrivilegedAction;
40 import java.security.AccessController;
41 import java.util.Objects;
42 import static sun.net.www.protocol.http.HttpURLConnection.HTTP_CONNECT;
43
44 /**
45 * DigestAuthentication: Encapsulate an http server authentication using
46 * the "Digest" scheme, as described in RFC2069 and updated in RFC2617
47 *
48 * @author Bill Foote
49 */
50
51 class DigestAuthentication extends AuthenticationInfo {
52
53 @java.io.Serial
54 private static final long serialVersionUID = 100L;
55
56 private String authMethod;
57
58 private static final String compatPropName = "http.auth.digest." +
59 "quoteParameters";
60
61 // true if http.auth.digest.quoteParameters Net property is true
62 private static final boolean delimCompatFlag;
63
64 static {
65 Boolean b = AccessController.doPrivileged(
66 new PrivilegedAction<>() {
67 public Boolean run() {
68 return NetProperties.getBoolean(compatPropName);
69 }
70 }
71 );
72 delimCompatFlag = (b == null) ? false : b.booleanValue();
73 }
|