Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 11 java.base.jmod - Base Module
JDK 11 java.base.jmod is the JMOD file for JDK 11 Base module.
JDK 11 Base module compiled class files are stored in \fyicenter\jdk-11.0.1\jmods\java.base.jmod.
JDK 11 Base module compiled class files are also linked and stored in the \fyicenter\jdk-11.0.1\lib\modules JImage file.
JDK 11 Base module source code files are stored in \fyicenter\jdk-11.0.1\lib\src.zip\java.base.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ sun/net/www/protocol/http/BasicAuthentication.java
/* * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package sun.net.www.protocol.http; import java.net.URL; import java.net.URI; import java.net.URISyntaxException; import java.net.PasswordAuthentication; import java.io.IOException; import java.io.OutputStream; import java.util.Base64; import java.util.Objects; import sun.net.www.HeaderParser; /** * BasicAuthentication: Encapsulate an http server authentication using * the "basic" scheme. * * @author Bill Foote */ class BasicAuthentication extends AuthenticationInfo { private static final long serialVersionUID = 100L; /** The authentication string for this host, port, and realm. This is a simple BASE64 encoding of "login:password". */ String auth; /** * Create a BasicAuthentication */ public BasicAuthentication(boolean isProxy, String host, int port, String realm, PasswordAuthentication pw, String authenticatorKey) { super(isProxy ? PROXY_AUTHENTICATION : SERVER_AUTHENTICATION, AuthScheme.BASIC, host, port, realm, Objects.requireNonNull(authenticatorKey)); String plain = pw.getUserName() + ":"; byte[] nameBytes = null; try { nameBytes = plain.getBytes("ISO-8859-1"); } catch (java.io.UnsupportedEncodingException uee) { assert false; } // get password bytes char[] passwd = pw.getPassword(); byte[] passwdBytes = new byte[passwd.length]; for (int i=0; i<passwd.length; i++) passwdBytes[i] = (byte)passwd[i]; // concatenate user name and password bytes and encode them byte[] concat = new byte[nameBytes.length + passwdBytes.length]; System.arraycopy(nameBytes, 0, concat, 0, nameBytes.length); System.arraycopy(passwdBytes, 0, concat, nameBytes.length, passwdBytes.length); this.auth = "Basic " + Base64.getEncoder().encodeToString(concat); this.pw = pw; } /** * Create a BasicAuthentication */ public BasicAuthentication(boolean isProxy, String host, int port, String realm, String auth, String authenticatorKey) { super(isProxy ? PROXY_AUTHENTICATION : SERVER_AUTHENTICATION, AuthScheme.BASIC, host, port, realm, Objects.requireNonNull(authenticatorKey)); this.auth = "Basic " + auth; } /** * Create a BasicAuthentication */ public BasicAuthentication(boolean isProxy, URL url, String realm, PasswordAuthentication pw, String authenticatorKey) { super(isProxy ? PROXY_AUTHENTICATION : SERVER_AUTHENTICATION, AuthScheme.BASIC, url, realm, Objects.requireNonNull(authenticatorKey)); String plain = pw.getUserName() + ":"; byte[] nameBytes = null; try { nameBytes = plain.getBytes("ISO-8859-1"); } catch (java.io.UnsupportedEncodingException uee) { assert false; } // get password bytes char[] passwd = pw.getPassword(); byte[] passwdBytes = new byte[passwd.length]; for (int i=0; i<passwd.length; i++) passwdBytes[i] = (byte)passwd[i]; // concatenate user name and password bytes and encode them byte[] concat = new byte[nameBytes.length + passwdBytes.length]; System.arraycopy(nameBytes, 0, concat, 0, nameBytes.length); System.arraycopy(passwdBytes, 0, concat, nameBytes.length, passwdBytes.length); this.auth = "Basic " + Base64.getEncoder().encodeToString(concat); this.pw = pw; } /** * Create a BasicAuthentication */ public BasicAuthentication(boolean isProxy, URL url, String realm, String auth, String authenticatorKey) { super(isProxy ? PROXY_AUTHENTICATION : SERVER_AUTHENTICATION, AuthScheme.BASIC, url, realm, Objects.requireNonNull(authenticatorKey)); this.auth = "Basic " + auth; } /** * @return true if this authentication supports preemptive authorization */ @Override public boolean supportsPreemptiveAuthorization() { return true; } /** * Set header(s) on the given connection. This will only be called for * definitive (i.e. non-preemptive) authorization. * @param conn The connection to apply the header(s) to * @param p A source of header values for this connection, if needed. * @param raw The raw header values for this connection, if needed. * @return true if all goes well, false if no headers were set. */ @Override public boolean setHeaders(HttpURLConnection conn, HeaderParser p, String raw) { conn.setAuthenticationProperty(getHeaderName(), getHeaderValue(null,null)); return true; } /** * @return the value of the HTTP header this authentication wants set */ @Override public String getHeaderValue(URL url, String method) { /* For Basic the authorization string does not depend on the request URL * or the request method */ return auth; } /** * For Basic Authentication, the security parameters can never be stale. * In other words there is no possibility to reuse the credentials. * They are always either valid or invalid. */ @Override public boolean isAuthorizationStale (String header) { return false; } /** * @return the common root path between npath and path. * This is used to detect when we have an authentication for two * paths and the root of th authentication space is the common root. */ static String getRootPath(String npath, String opath) { int index = 0; int toindex; /* Must normalize so we don't get confused by ../ and ./ segments */ try { npath = new URI (npath).normalize().getPath(); opath = new URI (opath).normalize().getPath(); } catch (URISyntaxException e) { /* ignore error and use the old value */ } while (index < opath.length()) { toindex = opath.indexOf('/', index+1); if (toindex != -1 && opath.regionMatches(0, npath, 0, toindex+1)) index = toindex; else return opath.substring(0, index+1); } /*should not reach here. If we do simply return npath*/ return npath; } }
⏎ sun/net/www/protocol/http/BasicAuthentication.java
Or download all of them as a single archive file:
File name: java.base-11.0.1-src.zip File size: 8740354 bytes Release date: 2018-11-04 Download
2020-05-29, 207542👍, 0💬
Popular Posts:
What Is jsse.jar (JDK 6) Java Secure Socket Extension? jsse.jar, Java Secure Socket Extension, is Ja...
commons-io-1.4.jar is the JAR file for Commons IO 1.4, which is a library of utilities to assist wit...
SLF4J API is a simple API that allows to plug in any desired logging library at deployment time. Her...
How to download and install JDK (Java Development Kit) 5? If you want to write Java applications, yo...
JDK 11 java.rmi.jmod is the JMOD file for JDK 11 RMI (Remote Method Invocation) module. JDK 11 RMI m...