< prev index next >

src/java.base/share/classes/sun/net/www/protocol/http/DigestAuthentication.java

Print this page




  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     }


< prev index next >