提交 495afcdc 编写于 作者: J juh

8020557: javadoc cleanup in javax.security

Reviewed-by: darcy
上级 26c1b30e
/* /*
* Copyright (c) 1998, 2005, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -41,10 +41,10 @@ package javax.security.auth; ...@@ -41,10 +41,10 @@ package javax.security.auth;
* *
* <pre> * <pre>
* doAs - allow the caller to invoke the * doAs - allow the caller to invoke the
* <code>Subject.doAs</code> methods. * {@code Subject.doAs} methods.
* *
* doAsPrivileged - allow the caller to invoke the * doAsPrivileged - allow the caller to invoke the
* <code>Subject.doAsPrivileged</code> methods. * {@code Subject.doAsPrivileged} methods.
* *
* getSubject - allow for the retrieval of the * getSubject - allow for the retrieval of the
* Subject(s) associated with the * Subject(s) associated with the
...@@ -52,39 +52,39 @@ package javax.security.auth; ...@@ -52,39 +52,39 @@ package javax.security.auth;
* *
* getSubjectFromDomainCombiner - allow for the retrieval of the * getSubjectFromDomainCombiner - allow for the retrieval of the
* Subject associated with the * Subject associated with the
* a <code>SubjectDomainCombiner</code>. * a {@code SubjectDomainCombiner}.
* *
* setReadOnly - allow the caller to set a Subject * setReadOnly - allow the caller to set a Subject
* to be read-only. * to be read-only.
* *
* modifyPrincipals - allow the caller to modify the <code>Set</code> * modifyPrincipals - allow the caller to modify the {@code Set}
* of Principals associated with a * of Principals associated with a
* <code>Subject</code> * {@code Subject}
* *
* modifyPublicCredentials - allow the caller to modify the * modifyPublicCredentials - allow the caller to modify the
* <code>Set</code> of public credentials * {@code Set} of public credentials
* associated with a <code>Subject</code> * associated with a {@code Subject}
* *
* modifyPrivateCredentials - allow the caller to modify the * modifyPrivateCredentials - allow the caller to modify the
* <code>Set</code> of private credentials * {@code Set} of private credentials
* associated with a <code>Subject</code> * associated with a {@code Subject}
* *
* refreshCredential - allow code to invoke the <code>refresh</code> * refreshCredential - allow code to invoke the {@code refresh}
* method on a credential which implements * method on a credential which implements
* the <code>Refreshable</code> interface. * the {@code Refreshable} interface.
* *
* destroyCredential - allow code to invoke the <code>destroy</code> * destroyCredential - allow code to invoke the {@code destroy}
* method on a credential <code>object</code> * method on a credential {@code object}
* which implements the <code>Destroyable</code> * which implements the {@code Destroyable}
* interface. * interface.
* *
* createLoginContext.{name} - allow code to instantiate a * createLoginContext.{name} - allow code to instantiate a
* <code>LoginContext</code> with the * {@code LoginContext} with the
* specified <i>name</i>. <i>name</i> * specified <i>name</i>. <i>name</i>
* is used as the index into the installed login * is used as the index into the installed login
* <code>Configuration</code> * {@code Configuration}
* (that returned by * (that returned by
* <code>Configuration.getConfiguration()</code>). * {@code Configuration.getConfiguration()}).
* <i>name</i> can be wildcarded (set to '*') * <i>name</i> can be wildcarded (set to '*')
* to allow for any name. * to allow for any name.
* *
...@@ -93,7 +93,7 @@ package javax.security.auth; ...@@ -93,7 +93,7 @@ package javax.security.auth;
* *
* createLoginConfiguration.{type} - allow code to obtain a Configuration * createLoginConfiguration.{type} - allow code to obtain a Configuration
* object via * object via
* <code>Configuration.getInstance</code>. * {@code Configuration.getInstance}.
* *
* setLoginConfiguration - allow for the setting of the system-wide * setLoginConfiguration - allow for the setting of the system-wide
* login Configuration. * login Configuration.
...@@ -103,15 +103,15 @@ package javax.security.auth; ...@@ -103,15 +103,15 @@ package javax.security.auth;
* </pre> * </pre>
* *
* <p> The following target name has been deprecated in favor of * <p> The following target name has been deprecated in favor of
* <code>createLoginContext.{name}</code>. * {@code createLoginContext.{name}}.
* *
* <pre> * <pre>
* createLoginContext - allow code to instantiate a * createLoginContext - allow code to instantiate a
* <code>LoginContext</code>. * {@code LoginContext}.
* </pre> * </pre>
* *
* <p> <code>javax.security.auth.Policy</code> has been * <p> {@code javax.security.auth.Policy} has been
* deprecated in favor of <code>java.security.Policy</code>. * deprecated in favor of {@code java.security.Policy}.
* Therefore, the following target names have also been deprecated: * Therefore, the following target names have also been deprecated:
* *
* <pre> * <pre>
...@@ -139,8 +139,8 @@ java.security.BasicPermission { ...@@ -139,8 +139,8 @@ java.security.BasicPermission {
* *
* @param name the name of the AuthPermission * @param name the name of the AuthPermission
* *
* @throws NullPointerException if <code>name</code> is <code>null</code>. * @throws NullPointerException if {@code name} is {@code null}.
* @throws IllegalArgumentException if <code>name</code> is empty. * @throws IllegalArgumentException if {@code name} is empty.
*/ */
public AuthPermission(String name) { public AuthPermission(String name) {
// for backwards compatibility -- // for backwards compatibility --
...@@ -160,8 +160,8 @@ java.security.BasicPermission { ...@@ -160,8 +160,8 @@ java.security.BasicPermission {
* *
* @param actions should be null. * @param actions should be null.
* *
* @throws NullPointerException if <code>name</code> is <code>null</code>. * @throws NullPointerException if {@code name} is {@code null}.
* @throws IllegalArgumentException if <code>name</code> is empty. * @throws IllegalArgumentException if {@code name} is empty.
*/ */
public AuthPermission(String name, String actions) { public AuthPermission(String name, String actions) {
// for backwards compatibility -- // for backwards compatibility --
......
/* /*
* Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -26,10 +26,10 @@ ...@@ -26,10 +26,10 @@
package javax.security.auth; package javax.security.auth;
/** /**
* Signals that a <code>destroy</code> operation failed. * Signals that a {@code destroy} operation failed.
* *
* <p> This exception is thrown by credentials implementing * <p> This exception is thrown by credentials implementing
* the <code>Destroyable</code> interface when the <code>destroy</code> * the {@code Destroyable} interface when the {@code destroy}
* method fails. * method fails.
* *
*/ */
......
...@@ -34,12 +34,12 @@ package javax.security.auth; ...@@ -34,12 +34,12 @@ package javax.security.auth;
public interface Destroyable { public interface Destroyable {
/** /**
* Destroy this <code>Object</code>. * Destroy this {@code Object}.
* *
* <p> Sensitive information associated with this <code>Object</code> * <p> Sensitive information associated with this {@code Object}
* is destroyed or cleared. Subsequent calls to certain methods * is destroyed or cleared. Subsequent calls to certain methods
* on this <code>Object</code> will result in an * on this {@code Object} will result in an
* <code>IllegalStateException</code> being thrown. * {@code IllegalStateException} being thrown.
* *
* <p> * <p>
* The default implementation throws {@code DestroyFailedException}. * The default implementation throws {@code DestroyFailedException}.
...@@ -47,19 +47,19 @@ public interface Destroyable { ...@@ -47,19 +47,19 @@ public interface Destroyable {
* @exception DestroyFailedException if the destroy operation fails. <p> * @exception DestroyFailedException if the destroy operation fails. <p>
* *
* @exception SecurityException if the caller does not have permission * @exception SecurityException if the caller does not have permission
* to destroy this <code>Object</code>. * to destroy this {@code Object}.
*/ */
public default void destroy() throws DestroyFailedException { public default void destroy() throws DestroyFailedException {
throw new DestroyFailedException(); throw new DestroyFailedException();
} }
/** /**
* Determine if this <code>Object</code> has been destroyed. * Determine if this {@code Object} has been destroyed.
* *
* <p> * <p>
* The default implementation returns false. * The default implementation returns false.
* *
* @return true if this <code>Object</code> has been destroyed, * @return true if this {@code Object} has been destroyed,
* false otherwise. * false otherwise.
*/ */
public default boolean isDestroyed() { public default boolean isDestroyed() {
......
/* /*
* Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -32,11 +32,11 @@ import sun.security.util.Debug; ...@@ -32,11 +32,11 @@ import sun.security.util.Debug;
* <p> This is an abstract class for representing the system policy for * <p> This is an abstract class for representing the system policy for
* Subject-based authorization. A subclass implementation * Subject-based authorization. A subclass implementation
* of this class provides a means to specify a Subject-based * of this class provides a means to specify a Subject-based
* access control <code>Policy</code>. * access control {@code Policy}.
* *
* <p> A <code>Policy</code> object can be queried for the set of * <p> A {@code Policy} object can be queried for the set of
* Permissions granted to code running as a * Permissions granted to code running as a
* <code>Principal</code> in the following manner: * {@code Principal} in the following manner:
* *
* <pre> * <pre>
* policy = Policy.getPolicy(); * policy = Policy.getPolicy();
...@@ -44,20 +44,20 @@ import sun.security.util.Debug; ...@@ -44,20 +44,20 @@ import sun.security.util.Debug;
* codeSource); * codeSource);
* </pre> * </pre>
* *
* The <code>Policy</code> object consults the local policy and returns * The {@code Policy} object consults the local policy and returns
* and appropriate <code>Permissions</code> object with the * and appropriate {@code Permissions} object with the
* Permissions granted to the Principals associated with the * Permissions granted to the Principals associated with the
* provided <i>subject</i>, and granted to the code specified * provided <i>subject</i>, and granted to the code specified
* by the provided <i>codeSource</i>. * by the provided <i>codeSource</i>.
* *
* <p> A <code>Policy</code> contains the following information. * <p> A {@code Policy} contains the following information.
* Note that this example only represents the syntax for the default * Note that this example only represents the syntax for the default
* <code>Policy</code> implementation. Subclass implementations of this class * {@code Policy} implementation. Subclass implementations of this class
* may implement alternative syntaxes and may retrieve the * may implement alternative syntaxes and may retrieve the
* <code>Policy</code> from any source such as files, databases, * {@code Policy} from any source such as files, databases,
* or servers. * or servers.
* *
* <p> Each entry in the <code>Policy</code> is represented as * <p> Each entry in the {@code Policy} is represented as
* a <b><i>grant</i></b> entry. Each <b><i>grant</i></b> entry * a <b><i>grant</i></b> entry. Each <b><i>grant</i></b> entry
* specifies a codebase, code signers, and Principals triplet, * specifies a codebase, code signers, and Principals triplet,
* as well as the Permissions granted to that triplet. * as well as the Permissions granted to that triplet.
...@@ -84,23 +84,23 @@ import sun.security.util.Debug; ...@@ -84,23 +84,23 @@ import sun.security.util.Debug;
* </pre> * </pre>
* *
* This <b><i>grant</i></b> entry specifies that code from "foo.com", * This <b><i>grant</i></b> entry specifies that code from "foo.com",
* signed by "foo', and running as a <code>SolarisPrincipal</code> with the * signed by "foo', and running as a {@code SolarisPrincipal} with the
* name, duke, has one <code>Permission</code>. This <code>Permission</code> * name, duke, has one {@code Permission}. This {@code Permission}
* permits the executing code to read and write files in the directory, * permits the executing code to read and write files in the directory,
* "/home/duke". * "/home/duke".
* *
* <p> To "run" as a particular <code>Principal</code>, * <p> To "run" as a particular {@code Principal},
* code invokes the <code>Subject.doAs(subject, ...)</code> method. * code invokes the {@code Subject.doAs(subject, ...)} method.
* After invoking that method, the code runs as all the Principals * After invoking that method, the code runs as all the Principals
* associated with the specified <code>Subject</code>. * associated with the specified {@code Subject}.
* Note that this <code>Policy</code> (and the Permissions * Note that this {@code Policy} (and the Permissions
* granted in this <code>Policy</code>) only become effective * granted in this {@code Policy}) only become effective
* after the call to <code>Subject.doAs</code> has occurred. * after the call to {@code Subject.doAs} has occurred.
* *
* <p> Multiple Principals may be listed within one <b><i>grant</i></b> entry. * <p> Multiple Principals may be listed within one <b><i>grant</i></b> entry.
* All the Principals in the grant entry must be associated with * All the Principals in the grant entry must be associated with
* the <code>Subject</code> provided to <code>Subject.doAs</code> * the {@code Subject} provided to {@code Subject.doAs}
* for that <code>Subject</code> to be granted the specified Permissions. * for that {@code Subject} to be granted the specified Permissions.
* *
* <pre> * <pre>
* grant Principal com.sun.security.auth.SolarisPrincipal "duke", * grant Principal com.sun.security.auth.SolarisPrincipal "duke",
...@@ -115,7 +115,7 @@ import sun.security.util.Debug; ...@@ -115,7 +115,7 @@ import sun.security.util.Debug;
* as well as permission to make socket connections to "duke.com". * as well as permission to make socket connections to "duke.com".
* *
* <p> Note that non Principal-based grant entries are not permitted * <p> Note that non Principal-based grant entries are not permitted
* in this <code>Policy</code>. Therefore, grant entries such as: * in this {@code Policy}. Therefore, grant entries such as:
* *
* <pre> * <pre>
* grant CodeBase "foo.com", Signedby "foo" { * grant CodeBase "foo.com", Signedby "foo" {
...@@ -124,7 +124,7 @@ import sun.security.util.Debug; ...@@ -124,7 +124,7 @@ import sun.security.util.Debug;
* </pre> * </pre>
* *
* are rejected. Such permission must be listed in the * are rejected. Such permission must be listed in the
* <code>java.security.Policy</code>. * {@code java.security.Policy}.
* *
* <p> The default {@code Policy} implementation can be changed by * <p> The default {@code Policy} implementation can be changed by
* setting the value of the {@code auth.policy.provider} security property to * setting the value of the {@code auth.policy.provider} security property to
...@@ -179,14 +179,14 @@ public abstract class Policy { ...@@ -179,14 +179,14 @@ public abstract class Policy {
/** /**
* Returns the installed Policy object. * Returns the installed Policy object.
* This method first calls * This method first calls
* <code>SecurityManager.checkPermission</code> with the * {@code SecurityManager.checkPermission} with the
* <code>AuthPermission("getPolicy")</code> permission * {@code AuthPermission("getPolicy")} permission
* to ensure the caller has permission to get the Policy object. * to ensure the caller has permission to get the Policy object.
* *
* <p> * <p>
* *
* @return the installed Policy. The return value cannot be * @return the installed Policy. The return value cannot be
* <code>null</code>. * {@code null}.
* *
* @exception java.lang.SecurityException if the current thread does not * @exception java.lang.SecurityException if the current thread does not
* have permission to get the Policy object. * have permission to get the Policy object.
...@@ -252,8 +252,8 @@ public abstract class Policy { ...@@ -252,8 +252,8 @@ public abstract class Policy {
/** /**
* Sets the system-wide Policy object. This method first calls * Sets the system-wide Policy object. This method first calls
* <code>SecurityManager.checkPermission</code> with the * {@code SecurityManager.checkPermission} with the
* <code>AuthPermission("setPolicy")</code> * {@code AuthPermission("setPolicy")}
* permission to ensure the caller has permission to set the Policy. * permission to ensure the caller has permission to set the Policy.
* *
* <p> * <p>
...@@ -313,25 +313,25 @@ public abstract class Policy { ...@@ -313,25 +313,25 @@ public abstract class Policy {
/** /**
* Retrieve the Permissions granted to the Principals associated with * Retrieve the Permissions granted to the Principals associated with
* the specified <code>CodeSource</code>. * the specified {@code CodeSource}.
* *
* <p> * <p>
* *
* @param subject the <code>Subject</code> * @param subject the {@code Subject}
* whose associated Principals, * whose associated Principals,
* in conjunction with the provided * in conjunction with the provided
* <code>CodeSource</code>, determines the Permissions * {@code CodeSource}, determines the Permissions
* returned by this method. This parameter * returned by this method. This parameter
* may be <code>null</code>. <p> * may be {@code null}. <p>
* *
* @param cs the code specified by its <code>CodeSource</code> * @param cs the code specified by its {@code CodeSource}
* that determines, in conjunction with the provided * that determines, in conjunction with the provided
* <code>Subject</code>, the Permissions * {@code Subject}, the Permissions
* returned by this method. This parameter may be * returned by this method. This parameter may be
* <code>null</code>. * {@code null}.
* *
* @return the Collection of Permissions granted to all the * @return the Collection of Permissions granted to all the
* <code>Subject</code> and code specified in * {@code Subject} and code specified in
* the provided <i>subject</i> and <i>cs</i> * the provided <i>subject</i> and <i>cs</i>
* parameters. * parameters.
*/ */
...@@ -345,7 +345,7 @@ public abstract class Policy { ...@@ -345,7 +345,7 @@ public abstract class Policy {
* <p>This method causes this object to refresh/reload its current * <p>This method causes this object to refresh/reload its current
* Policy. This is implementation-dependent. * Policy. This is implementation-dependent.
* For example, if the Policy object is stored in * For example, if the Policy object is stored in
* a file, calling <code>refresh</code> will cause the file to be re-read. * a file, calling {@code refresh} will cause the file to be re-read.
* *
* <p> * <p>
* *
......
/* /*
* Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -34,10 +34,10 @@ import sun.security.util.ResourcesMgr; ...@@ -34,10 +34,10 @@ import sun.security.util.ResourcesMgr;
/** /**
* This class is used to protect access to private Credentials * This class is used to protect access to private Credentials
* belonging to a particular <code>Subject</code>. The <code>Subject</code> * belonging to a particular {@code Subject}. The {@code Subject}
* is represented by a Set of Principals. * is represented by a Set of Principals.
* *
* <p> The target name of this <code>Permission</code> specifies * <p> The target name of this {@code Permission} specifies
* a Credential class name, and a Set of Principals. * a Credential class name, and a Set of Principals.
* The only valid value for this Permission's actions is, "read". * The only valid value for this Permission's actions is, "read".
* The target name must abide by the following syntax: * The target name must abide by the following syntax:
...@@ -65,12 +65,12 @@ import sun.security.util.ResourcesMgr; ...@@ -65,12 +65,12 @@ import sun.security.util.ResourcesMgr;
* *
* If CredentialClass is "*", then access is granted to * If CredentialClass is "*", then access is granted to
* all private Credentials belonging to the specified * all private Credentials belonging to the specified
* <code>Subject</code>. * {@code Subject}.
* If "PrincipalName" is "*", then access is granted to the * If "PrincipalName" is "*", then access is granted to the
* specified Credential owned by any <code>Subject</code> that has the * specified Credential owned by any {@code Subject} that has the
* specified <code>Principal</code> (the actual PrincipalName doesn't matter). * specified {@code Principal} (the actual PrincipalName doesn't matter).
* For example, the following grants access to the * For example, the following grants access to the
* a.b.Credential owned by any <code>Subject</code> that has * a.b.Credential owned by any {@code Subject} that has
* an a.b.Principal. * an a.b.Principal.
* *
* <pre> * <pre>
...@@ -83,7 +83,7 @@ import sun.security.util.ResourcesMgr; ...@@ -83,7 +83,7 @@ import sun.security.util.ResourcesMgr;
* *
* If both the PrincipalClass and "PrincipalName" are "*", * If both the PrincipalClass and "PrincipalName" are "*",
* then access is granted to the specified Credential owned by * then access is granted to the specified Credential owned by
* any <code>Subject</code>. * any {@code Subject}.
* *
* <p> In addition, the PrincipalClass/PrincipalName pairing may be repeated: * <p> In addition, the PrincipalClass/PrincipalName pairing may be repeated:
* *
...@@ -96,7 +96,7 @@ import sun.security.util.ResourcesMgr; ...@@ -96,7 +96,7 @@ import sun.security.util.ResourcesMgr;
* </pre> * </pre>
* *
* The above grants access to the private Credential, "a.b.Credential", * The above grants access to the private Credential, "a.b.Credential",
* belonging to a <code>Subject</code> with at least two associated Principals: * belonging to a {@code Subject} with at least two associated Principals:
* "a.b.Principal" with the name, "duke", and "c.d.Principal", with the name, * "a.b.Principal" with the name, "duke", and "c.d.Principal", with the name,
* "dukette". * "dukette".
* *
...@@ -115,7 +115,7 @@ public final class PrivateCredentialPermission extends Permission { ...@@ -115,7 +115,7 @@ public final class PrivateCredentialPermission extends Permission {
/** /**
* @serial The Principals associated with this permission. * @serial The Principals associated with this permission.
* The set contains elements of type, * The set contains elements of type,
* <code>PrivateCredentialPermission.CredOwner</code>. * {@code PrivateCredentialPermission.CredOwner}.
*/ */
private Set<Principal> principals; // ignored - kept around for compatibility private Set<Principal> principals; // ignored - kept around for compatibility
private transient CredOwner[] credOwners; private transient CredOwner[] credOwners;
...@@ -126,8 +126,8 @@ public final class PrivateCredentialPermission extends Permission { ...@@ -126,8 +126,8 @@ public final class PrivateCredentialPermission extends Permission {
private boolean testing = false; private boolean testing = false;
/** /**
* Create a new <code>PrivateCredentialPermission</code> * Create a new {@code PrivateCredentialPermission}
* with the specified <code>credentialClass</code> and Principals. * with the specified {@code credentialClass} and Principals.
*/ */
PrivateCredentialPermission(String credentialClass, PrivateCredentialPermission(String credentialClass,
Set<Principal> principals) { Set<Principal> principals) {
...@@ -153,19 +153,19 @@ public final class PrivateCredentialPermission extends Permission { ...@@ -153,19 +153,19 @@ public final class PrivateCredentialPermission extends Permission {
} }
/** /**
* Creates a new <code>PrivateCredentialPermission</code> * Creates a new {@code PrivateCredentialPermission}
* with the specified <code>name</code>. The <code>name</code> * with the specified {@code name}. The {@code name}
* specifies both a Credential class and a <code>Principal</code> Set. * specifies both a Credential class and a {@code Principal} Set.
* *
* <p> * <p>
* *
* @param name the name specifying the Credential class and * @param name the name specifying the Credential class and
* <code>Principal</code> Set. <p> * {@code Principal} Set. <p>
* *
* @param actions the actions specifying that the Credential can be read. * @param actions the actions specifying that the Credential can be read.
* *
* @throws IllegalArgumentException if <code>name</code> does not conform * @throws IllegalArgumentException if {@code name} does not conform
* to the correct syntax or if <code>actions</code> is not "read". * to the correct syntax or if {@code actions} is not "read".
*/ */
public PrivateCredentialPermission(String name, String actions) { public PrivateCredentialPermission(String name, String actions) {
super(name); super(name);
...@@ -178,34 +178,34 @@ public final class PrivateCredentialPermission extends Permission { ...@@ -178,34 +178,34 @@ public final class PrivateCredentialPermission extends Permission {
/** /**
* Returns the Class name of the Credential associated with this * Returns the Class name of the Credential associated with this
* <code>PrivateCredentialPermission</code>. * {@code PrivateCredentialPermission}.
* *
* <p> * <p>
* *
* @return the Class name of the Credential associated with this * @return the Class name of the Credential associated with this
* <code>PrivateCredentialPermission</code>. * {@code PrivateCredentialPermission}.
*/ */
public String getCredentialClass() { public String getCredentialClass() {
return credentialClass; return credentialClass;
} }
/** /**
* Returns the <code>Principal</code> classes and names * Returns the {@code Principal} classes and names
* associated with this <code>PrivateCredentialPermission</code>. * associated with this {@code PrivateCredentialPermission}.
* The information is returned as a two-dimensional array (array[x][y]). * The information is returned as a two-dimensional array (array[x][y]).
* The 'x' value corresponds to the number of <code>Principal</code> * The 'x' value corresponds to the number of {@code Principal}
* class and name pairs. When (y==0), it corresponds to * class and name pairs. When (y==0), it corresponds to
* the <code>Principal</code> class value, and when (y==1), * the {@code Principal} class value, and when (y==1),
* it corresponds to the <code>Principal</code> name value. * it corresponds to the {@code Principal} name value.
* For example, array[0][0] corresponds to the class name of * For example, array[0][0] corresponds to the class name of
* the first <code>Principal</code> in the array. array[0][1] * the first {@code Principal} in the array. array[0][1]
* corresponds to the <code>Principal</code> name of the * corresponds to the {@code Principal} name of the
* first <code>Principal</code> in the array. * first {@code Principal} in the array.
* *
* <p> * <p>
* *
* @return the <code>Principal</code> class and names associated * @return the {@code Principal} class and names associated
* with this <code>PrivateCredentialPermission</code>. * with this {@code PrivateCredentialPermission}.
*/ */
public String[][] getPrincipals() { public String[][] getPrincipals() {
...@@ -222,8 +222,8 @@ public final class PrivateCredentialPermission extends Permission { ...@@ -222,8 +222,8 @@ public final class PrivateCredentialPermission extends Permission {
} }
/** /**
* Checks if this <code>PrivateCredentialPermission</code> implies * Checks if this {@code PrivateCredentialPermission} implies
* the specified <code>Permission</code>. * the specified {@code Permission}.
* *
* <p> * <p>
* *
...@@ -241,10 +241,10 @@ public final class PrivateCredentialPermission extends Permission { ...@@ -241,10 +241,10 @@ public final class PrivateCredentialPermission extends Permission {
* *
* <p> * <p>
* *
* @param p the <code>Permission</code> to check against. * @param p the {@code Permission} to check against.
* *
* @return true if this <code>PrivateCredentialPermission</code> implies * @return true if this {@code PrivateCredentialPermission} implies
* the specified <code>Permission</code>, false if not. * the specified {@code Permission}, false if not.
*/ */
public boolean implies(Permission p) { public boolean implies(Permission p) {
...@@ -260,9 +260,9 @@ public final class PrivateCredentialPermission extends Permission { ...@@ -260,9 +260,9 @@ public final class PrivateCredentialPermission extends Permission {
} }
/** /**
* Checks two <code>PrivateCredentialPermission</code> objects for * Checks two {@code PrivateCredentialPermission} objects for
* equality. Checks that <i>obj</i> is a * equality. Checks that <i>obj</i> is a
* <code>PrivateCredentialPermission</code>, * {@code PrivateCredentialPermission},
* and has the same credential class as this object, * and has the same credential class as this object,
* as well as the same Principals as this object. * as well as the same Principals as this object.
* The order of the Principals in the respective Permission's * The order of the Principals in the respective Permission's
...@@ -272,7 +272,7 @@ public final class PrivateCredentialPermission extends Permission { ...@@ -272,7 +272,7 @@ public final class PrivateCredentialPermission extends Permission {
* *
* @param obj the object we are testing for equality with this object. * @param obj the object we are testing for equality with this object.
* *
* @return true if obj is a <code>PrivateCredentialPermission</code>, * @return true if obj is a {@code PrivateCredentialPermission},
* has the same credential class as this object, * has the same credential class as this object,
* and has the same Principals as this object. * and has the same Principals as this object.
*/ */
...@@ -311,9 +311,9 @@ public final class PrivateCredentialPermission extends Permission { ...@@ -311,9 +311,9 @@ public final class PrivateCredentialPermission extends Permission {
/** /**
* Return a homogeneous collection of PrivateCredentialPermissions * Return a homogeneous collection of PrivateCredentialPermissions
* in a <code>PermissionCollection</code>. * in a {@code PermissionCollection}.
* No such <code>PermissionCollection</code> is defined, * No such {@code PermissionCollection} is defined,
* so this method always returns <code>null</code>. * so this method always returns {@code null}.
* *
* <p> * <p>
* *
......
/* /*
* Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -26,10 +26,10 @@ ...@@ -26,10 +26,10 @@
package javax.security.auth; package javax.security.auth;
/** /**
* Signals that a <code>refresh</code> operation failed. * Signals that a {@code refresh} operation failed.
* *
* <p> This exception is thrown by credentials implementing * <p> This exception is thrown by credentials implementing
* the <code>Refreshable</code> interface when the <code>refresh</code> * the {@code Refreshable} interface when the {@code refresh}
* method fails. * method fails.
* *
*/ */
......
/* /*
* Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -37,24 +37,24 @@ package javax.security.auth; ...@@ -37,24 +37,24 @@ package javax.security.auth;
public interface Refreshable { public interface Refreshable {
/** /**
* Determine if this <code>Object</code> is current. * Determine if this {@code Object} is current.
* *
* <p> * <p>
* *
* @return true if this <code>Object</code> is currently current, * @return true if this {@code Object} is currently current,
* false otherwise. * false otherwise.
*/ */
boolean isCurrent(); boolean isCurrent();
/** /**
* Update or extend the validity period for this * Update or extend the validity period for this
* <code>Object</code>. * {@code Object}.
* *
* <p> * <p>
* *
* @exception SecurityException if the caller does not have permission * @exception SecurityException if the caller does not have permission
* to update or extend the validity period for this * to update or extend the validity period for this
* <code>Object</code>. <p> * {@code Object}. <p>
* *
* @exception RefreshFailedException if the refresh attempt failed. * @exception RefreshFailedException if the refresh attempt failed.
*/ */
......
/* /*
* Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -39,9 +39,9 @@ import java.util.WeakHashMap; ...@@ -39,9 +39,9 @@ import java.util.WeakHashMap;
import java.lang.ref.WeakReference; import java.lang.ref.WeakReference;
/** /**
* A <code>SubjectDomainCombiner</code> updates ProtectionDomains * A {@code SubjectDomainCombiner} updates ProtectionDomains
* with Principals from the <code>Subject</code> associated with this * with Principals from the {@code Subject} associated with this
* <code>SubjectDomainCombiner</code>. * {@code SubjectDomainCombiner}.
* *
*/ */
public class SubjectDomainCombiner implements java.security.DomainCombiner { public class SubjectDomainCombiner implements java.security.DomainCombiner {
...@@ -66,13 +66,13 @@ public class SubjectDomainCombiner implements java.security.DomainCombiner { ...@@ -66,13 +66,13 @@ public class SubjectDomainCombiner implements java.security.DomainCombiner {
(useJavaxPolicy && cachePolicy()); (useJavaxPolicy && cachePolicy());
/** /**
* Associate the provided <code>Subject</code> with this * Associate the provided {@code Subject} with this
* <code>SubjectDomainCombiner</code>. * {@code SubjectDomainCombiner}.
* *
* <p> * <p>
* *
* @param subject the <code>Subject</code> to be associated with * @param subject the {@code Subject} to be associated with
* with this <code>SubjectDomainCombiner</code>. * with this {@code SubjectDomainCombiner}.
*/ */
public SubjectDomainCombiner(Subject subject) { public SubjectDomainCombiner(Subject subject) {
this.subject = subject; this.subject = subject;
...@@ -85,19 +85,19 @@ public class SubjectDomainCombiner implements java.security.DomainCombiner { ...@@ -85,19 +85,19 @@ public class SubjectDomainCombiner implements java.security.DomainCombiner {
} }
/** /**
* Get the <code>Subject</code> associated with this * Get the {@code Subject} associated with this
* <code>SubjectDomainCombiner</code>. * {@code SubjectDomainCombiner}.
* *
* <p> * <p>
* *
* @return the <code>Subject</code> associated with this * @return the {@code Subject} associated with this
* <code>SubjectDomainCombiner</code>, or <code>null</code> * {@code SubjectDomainCombiner}, or {@code null}
* if no <code>Subject</code> is associated with this * if no {@code Subject} is associated with this
* <code>SubjectDomainCombiner</code>. * {@code SubjectDomainCombiner}.
* *
* @exception SecurityException if the caller does not have permission * @exception SecurityException if the caller does not have permission
* to get the <code>Subject</code> associated with this * to get the {@code Subject} associated with this
* <code>SubjectDomainCombiner</code>. * {@code SubjectDomainCombiner}.
*/ */
public Subject getSubject() { public Subject getSubject() {
java.lang.SecurityManager sm = System.getSecurityManager(); java.lang.SecurityManager sm = System.getSecurityManager();
...@@ -110,18 +110,18 @@ public class SubjectDomainCombiner implements java.security.DomainCombiner { ...@@ -110,18 +110,18 @@ public class SubjectDomainCombiner implements java.security.DomainCombiner {
/** /**
* Update the relevant ProtectionDomains with the Principals * Update the relevant ProtectionDomains with the Principals
* from the <code>Subject</code> associated with this * from the {@code Subject} associated with this
* <code>SubjectDomainCombiner</code>. * {@code SubjectDomainCombiner}.
* *
* <p> A new <code>ProtectionDomain</code> instance is created * <p> A new {@code ProtectionDomain} instance is created
* for each <code>ProtectionDomain</code> in the * for each {@code ProtectionDomain} in the
* <i>currentDomains</i> array. Each new <code>ProtectionDomain</code> * <i>currentDomains</i> array. Each new {@code ProtectionDomain}
* instance is created using the <code>CodeSource</code>, * instance is created using the {@code CodeSource},
* <code>Permission</code>s and <code>ClassLoader</code> * {@code Permission}s and {@code ClassLoader}
* from the corresponding <code>ProtectionDomain</code> in * from the corresponding {@code ProtectionDomain} in
* <i>currentDomains</i>, as well as with the Principals from * <i>currentDomains</i>, as well as with the Principals from
* the <code>Subject</code> associated with this * the {@code Subject} associated with this
* <code>SubjectDomainCombiner</code>. * {@code SubjectDomainCombiner}.
* *
* <p> All of the newly instantiated ProtectionDomains are * <p> All of the newly instantiated ProtectionDomains are
* combined into a new array. The ProtectionDomains from the * combined into a new array. The ProtectionDomains from the
...@@ -136,23 +136,23 @@ public class SubjectDomainCombiner implements java.security.DomainCombiner { ...@@ -136,23 +136,23 @@ public class SubjectDomainCombiner implements java.security.DomainCombiner {
* *
* @param currentDomains the ProtectionDomains associated with the * @param currentDomains the ProtectionDomains associated with the
* current execution Thread, up to the most recent * current execution Thread, up to the most recent
* privileged <code>ProtectionDomain</code>. * privileged {@code ProtectionDomain}.
* The ProtectionDomains are are listed in order of execution, * The ProtectionDomains are are listed in order of execution,
* with the most recently executing <code>ProtectionDomain</code> * with the most recently executing {@code ProtectionDomain}
* residing at the beginning of the array. This parameter may * residing at the beginning of the array. This parameter may
* be <code>null</code> if the current execution Thread * be {@code null} if the current execution Thread
* has no associated ProtectionDomains.<p> * has no associated ProtectionDomains.<p>
* *
* @param assignedDomains the ProtectionDomains inherited from the * @param assignedDomains the ProtectionDomains inherited from the
* parent Thread, or the ProtectionDomains from the * parent Thread, or the ProtectionDomains from the
* privileged <i>context</i>, if a call to * privileged <i>context</i>, if a call to
* AccessController.doPrivileged(..., <i>context</i>) * AccessController.doPrivileged(..., <i>context</i>)
* had occurred This parameter may be <code>null</code> * had occurred This parameter may be {@code null}
* if there were no ProtectionDomains inherited from the * if there were no ProtectionDomains inherited from the
* parent Thread, or from the privileged <i>context</i>. * parent Thread, or from the privileged <i>context</i>.
* *
* @return a new array consisting of the updated ProtectionDomains, * @return a new array consisting of the updated ProtectionDomains,
* or <code>null</code>. * or {@code null}.
*/ */
public ProtectionDomain[] combine(ProtectionDomain[] currentDomains, public ProtectionDomain[] combine(ProtectionDomain[] currentDomains,
ProtectionDomain[] assignedDomains) { ProtectionDomain[] assignedDomains) {
......
/* /*
* Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -28,14 +28,14 @@ package javax.security.auth.callback; ...@@ -28,14 +28,14 @@ package javax.security.auth.callback;
/** /**
* <p> Implementations of this interface are passed to a * <p> Implementations of this interface are passed to a
* <code>CallbackHandler</code>, allowing underlying security services * {@code CallbackHandler}, allowing underlying security services
* the ability to interact with a calling application to retrieve specific * the ability to interact with a calling application to retrieve specific
* authentication data such as usernames and passwords, or to display * authentication data such as usernames and passwords, or to display
* certain information, such as error and warning messages. * certain information, such as error and warning messages.
* *
* <p> <code>Callback</code> implementations do not retrieve or * <p> {@code Callback} implementations do not retrieve or
* display the information requested by underlying security services. * display the information requested by underlying security services.
* <code>Callback</code> implementations simply provide the means * {@code Callback} implementations simply provide the means
* to pass such requests to applications, and for applications, * to pass such requests to applications, and for applications,
* if appropriate, to return requested information back to the * if appropriate, to return requested information back to the
* underlying security services. * underlying security services.
......
/* /*
* Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
package javax.security.auth.callback; package javax.security.auth.callback;
/** /**
* <p> An application implements a <code>CallbackHandler</code> and passes * <p> An application implements a {@code CallbackHandler} and passes
* it to underlying security services so that they may interact with * it to underlying security services so that they may interact with
* the application to retrieve specific authentication data, * the application to retrieve specific authentication data,
* such as usernames and passwords, or to display certain information, * such as usernames and passwords, or to display certain information,
...@@ -40,12 +40,12 @@ package javax.security.auth.callback; ...@@ -40,12 +40,12 @@ package javax.security.auth.callback;
* *
* <p> Underlying security services make requests for different types * <p> Underlying security services make requests for different types
* of information by passing individual Callbacks to the * of information by passing individual Callbacks to the
* <code>CallbackHandler</code>. The <code>CallbackHandler</code> * {@code CallbackHandler}. The {@code CallbackHandler}
* implementation decides how to retrieve and display information * implementation decides how to retrieve and display information
* depending on the Callbacks passed to it. For example, * depending on the Callbacks passed to it. For example,
* if the underlying service needs a username and password to * if the underlying service needs a username and password to
* authenticate a user, it uses a <code>NameCallback</code> and * authenticate a user, it uses a {@code NameCallback} and
* <code>PasswordCallback</code>. The <code>CallbackHandler</code> * {@code PasswordCallback}. The {@code CallbackHandler}
* can then choose to prompt for a username and password serially, * can then choose to prompt for a username and password serially,
* or to prompt for both in a single window. * or to prompt for both in a single window.
* *
...@@ -54,10 +54,10 @@ package javax.security.auth.callback; ...@@ -54,10 +54,10 @@ package javax.security.auth.callback;
* {@code auth.login.defaultCallbackHandler} security property. * {@code auth.login.defaultCallbackHandler} security property.
* *
* <p> If the security property is set to the fully qualified name of a * <p> If the security property is set to the fully qualified name of a
* <code>CallbackHandler</code> implementation class, * {@code CallbackHandler} implementation class,
* then a <code>LoginContext</code> will load the specified * then a {@code LoginContext} will load the specified
* <code>CallbackHandler</code> and pass it to the underlying LoginModules. * {@code CallbackHandler} and pass it to the underlying LoginModules.
* The <code>LoginContext</code> only loads the default handler * The {@code LoginContext} only loads the default handler
* if it was not provided one. * if it was not provided one.
* *
* <p> All default handler implementations must provide a public * <p> All default handler implementations must provide a public
...@@ -71,11 +71,11 @@ public interface CallbackHandler { ...@@ -71,11 +71,11 @@ public interface CallbackHandler {
* <p> Retrieve or display the information requested in the * <p> Retrieve or display the information requested in the
* provided Callbacks. * provided Callbacks.
* *
* <p> The <code>handle</code> method implementation checks the * <p> The {@code handle} method implementation checks the
* instance(s) of the <code>Callback</code> object(s) passed in * instance(s) of the {@code Callback} object(s) passed in
* to retrieve or display the requested information. * to retrieve or display the requested information.
* The following example is provided to help demonstrate what an * The following example is provided to help demonstrate what an
* <code>handle</code> method implementation might look like. * {@code handle} method implementation might look like.
* This example code is for guidance only. Many details, * This example code is for guidance only. Many details,
* including proper error handling, are left out for simplicity. * including proper error handling, are left out for simplicity.
* *
...@@ -135,7 +135,7 @@ public interface CallbackHandler { ...@@ -135,7 +135,7 @@ public interface CallbackHandler {
* } * }
* }</pre> * }</pre>
* *
* @param callbacks an array of <code>Callback</code> objects provided * @param callbacks an array of {@code Callback} objects provided
* by an underlying security service which contains * by an underlying security service which contains
* the information requested to be retrieved or displayed. * the information requested to be retrieved or displayed.
* *
...@@ -143,7 +143,7 @@ public interface CallbackHandler { ...@@ -143,7 +143,7 @@ public interface CallbackHandler {
* *
* @exception UnsupportedCallbackException if the implementation of this * @exception UnsupportedCallbackException if the implementation of this
* method does not support one or more of the Callbacks * method does not support one or more of the Callbacks
* specified in the <code>callbacks</code> parameter. * specified in the {@code callbacks} parameter.
*/ */
void handle(Callback[] callbacks) void handle(Callback[] callbacks)
throws java.io.IOException, UnsupportedCallbackException; throws java.io.IOException, UnsupportedCallbackException;
......
/* /*
* Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -27,8 +27,8 @@ package javax.security.auth.callback; ...@@ -27,8 +27,8 @@ package javax.security.auth.callback;
/** /**
* <p> Underlying security services instantiate and pass a * <p> Underlying security services instantiate and pass a
* <code>ChoiceCallback</code> to the <code>handle</code> * {@code ChoiceCallback} to the {@code handle}
* method of a <code>CallbackHandler</code> to display a list of choices * method of a {@code CallbackHandler} to display a list of choices
* and to retrieve the selected choice(s). * and to retrieve the selected choice(s).
* *
* @see javax.security.auth.callback.CallbackHandler * @see javax.security.auth.callback.CallbackHandler
...@@ -60,13 +60,13 @@ public class ChoiceCallback implements Callback, java.io.Serializable { ...@@ -60,13 +60,13 @@ public class ChoiceCallback implements Callback, java.io.Serializable {
private boolean multipleSelectionsAllowed; private boolean multipleSelectionsAllowed;
/** /**
* @serial the selected choices, represented as indexes into the * @serial the selected choices, represented as indexes into the
* <code>choices</code> list. * {@code choices} list.
* @since 1.4 * @since 1.4
*/ */
private int[] selections; private int[] selections;
/** /**
* Construct a <code>ChoiceCallback</code> with a prompt, * Construct a {@code ChoiceCallback} with a prompt,
* a list of choices, a default choice, and a boolean specifying * a list of choices, a default choice, and a boolean specifying
* whether or not multiple selections from the list of choices are allowed. * whether or not multiple selections from the list of choices are allowed.
* *
...@@ -79,21 +79,21 @@ public class ChoiceCallback implements Callback, java.io.Serializable { ...@@ -79,21 +79,21 @@ public class ChoiceCallback implements Callback, java.io.Serializable {
* @param defaultChoice the choice to be used as the default choice * @param defaultChoice the choice to be used as the default choice
* when the list of choices are displayed. This value * when the list of choices are displayed. This value
* is represented as an index into the * is represented as an index into the
* <code>choices</code> array. <p> * {@code choices} array. <p>
* *
* @param multipleSelectionsAllowed boolean specifying whether or * @param multipleSelectionsAllowed boolean specifying whether or
* not multiple selections can be made from the * not multiple selections can be made from the
* list of choices. * list of choices.
* *
* @exception IllegalArgumentException if <code>prompt</code> is null, * @exception IllegalArgumentException if {@code prompt} is null,
* if <code>prompt</code> has a length of 0, * if {@code prompt} has a length of 0,
* if <code>choices</code> is null, * if {@code choices} is null,
* if <code>choices</code> has a length of 0, * if {@code choices} has a length of 0,
* if any element from <code>choices</code> is null, * if any element from {@code choices} is null,
* if any element from <code>choices</code> * if any element from {@code choices}
* has a length of 0 or if <code>defaultChoice</code> * has a length of 0 or if {@code defaultChoice}
* does not fall within the array boundaries of * does not fall within the array boundaries of
* <code>choices</code>. * {@code choices}.
*/ */
public ChoiceCallback(String prompt, String[] choices, public ChoiceCallback(String prompt, String[] choices,
int defaultChoice, boolean multipleSelectionsAllowed) { int defaultChoice, boolean multipleSelectionsAllowed) {
...@@ -142,7 +142,7 @@ public class ChoiceCallback implements Callback, java.io.Serializable { ...@@ -142,7 +142,7 @@ public class ChoiceCallback implements Callback, java.io.Serializable {
* <p> * <p>
* *
* @return the defaultChoice, represented as an index into * @return the defaultChoice, represented as an index into
* the <code>choices</code> list. * the {@code choices} list.
*/ */
public int getDefaultChoice() { public int getDefaultChoice() {
return defaultChoice; return defaultChoice;
...@@ -150,7 +150,7 @@ public class ChoiceCallback implements Callback, java.io.Serializable { ...@@ -150,7 +150,7 @@ public class ChoiceCallback implements Callback, java.io.Serializable {
/** /**
* Get the boolean determining whether multiple selections from * Get the boolean determining whether multiple selections from
* the <code>choices</code> list are allowed. * the {@code choices} list are allowed.
* *
* <p> * <p>
* *
...@@ -166,7 +166,7 @@ public class ChoiceCallback implements Callback, java.io.Serializable { ...@@ -166,7 +166,7 @@ public class ChoiceCallback implements Callback, java.io.Serializable {
* <p> * <p>
* *
* @param selection the selection represented as an index into the * @param selection the selection represented as an index into the
* <code>choices</code> list. * {@code choices} list.
* *
* @see #getSelectedIndexes * @see #getSelectedIndexes
*/ */
...@@ -181,11 +181,11 @@ public class ChoiceCallback implements Callback, java.io.Serializable { ...@@ -181,11 +181,11 @@ public class ChoiceCallback implements Callback, java.io.Serializable {
* <p> * <p>
* *
* @param selections the selections represented as indexes into the * @param selections the selections represented as indexes into the
* <code>choices</code> list. * {@code choices} list.
* *
* @exception UnsupportedOperationException if multiple selections are * @exception UnsupportedOperationException if multiple selections are
* not allowed, as determined by * not allowed, as determined by
* <code>allowMultipleSelections</code>. * {@code allowMultipleSelections}.
* *
* @see #getSelectedIndexes * @see #getSelectedIndexes
*/ */
...@@ -201,7 +201,7 @@ public class ChoiceCallback implements Callback, java.io.Serializable { ...@@ -201,7 +201,7 @@ public class ChoiceCallback implements Callback, java.io.Serializable {
* <p> * <p>
* *
* @return the selected choices, represented as indexes into the * @return the selected choices, represented as indexes into the
* <code>choices</code> list. * {@code choices} list.
* *
* @see #setSelectedIndexes * @see #setSelectedIndexes
*/ */
......
/* /*
* Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -29,8 +29,8 @@ import java.util.Locale; ...@@ -29,8 +29,8 @@ import java.util.Locale;
/** /**
* <p> Underlying security services instantiate and pass a * <p> Underlying security services instantiate and pass a
* <code>LanguageCallback</code> to the <code>handle</code> * {@code LanguageCallback} to the {@code handle}
* method of a <code>CallbackHandler</code> to retrieve the <code>Locale</code> * method of a {@code CallbackHandler} to retrieve the {@code Locale}
* used for localizing text. * used for localizing text.
* *
* @see javax.security.auth.callback.CallbackHandler * @see javax.security.auth.callback.CallbackHandler
...@@ -46,16 +46,16 @@ public class LanguageCallback implements Callback, java.io.Serializable { ...@@ -46,16 +46,16 @@ public class LanguageCallback implements Callback, java.io.Serializable {
private Locale locale; private Locale locale;
/** /**
* Construct a <code>LanguageCallback</code>. * Construct a {@code LanguageCallback}.
*/ */
public LanguageCallback() { } public LanguageCallback() { }
/** /**
* Set the retrieved <code>Locale</code>. * Set the retrieved {@code Locale}.
* *
* <p> * <p>
* *
* @param locale the retrieved <code>Locale</code>. * @param locale the retrieved {@code Locale}.
* *
* @see #getLocale * @see #getLocale
*/ */
...@@ -64,12 +64,12 @@ public class LanguageCallback implements Callback, java.io.Serializable { ...@@ -64,12 +64,12 @@ public class LanguageCallback implements Callback, java.io.Serializable {
} }
/** /**
* Get the retrieved <code>Locale</code>. * Get the retrieved {@code Locale}.
* *
* <p> * <p>
* *
* @return the retrieved <code>Locale</code>, or null * @return the retrieved {@code Locale}, or null
* if no <code>Locale</code> could be retrieved. * if no {@code Locale} could be retrieved.
* *
* @see #setLocale * @see #setLocale
*/ */
......
/* /*
* Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -27,8 +27,8 @@ package javax.security.auth.callback; ...@@ -27,8 +27,8 @@ package javax.security.auth.callback;
/** /**
* <p> Underlying security services instantiate and pass a * <p> Underlying security services instantiate and pass a
* <code>NameCallback</code> to the <code>handle</code> * {@code NameCallback} to the {@code handle}
* method of a <code>CallbackHandler</code> to retrieve name information. * method of a {@code CallbackHandler} to retrieve name information.
* *
* @see javax.security.auth.callback.CallbackHandler * @see javax.security.auth.callback.CallbackHandler
*/ */
...@@ -53,14 +53,14 @@ public class NameCallback implements Callback, java.io.Serializable { ...@@ -53,14 +53,14 @@ public class NameCallback implements Callback, java.io.Serializable {
private String inputName; private String inputName;
/** /**
* Construct a <code>NameCallback</code> with a prompt. * Construct a {@code NameCallback} with a prompt.
* *
* <p> * <p>
* *
* @param prompt the prompt used to request the name. * @param prompt the prompt used to request the name.
* *
* @exception IllegalArgumentException if <code>prompt</code> is null * @exception IllegalArgumentException if {@code prompt} is null
* or if <code>prompt</code> has a length of 0. * or if {@code prompt} has a length of 0.
*/ */
public NameCallback(String prompt) { public NameCallback(String prompt) {
if (prompt == null || prompt.length() == 0) if (prompt == null || prompt.length() == 0)
...@@ -69,7 +69,7 @@ public class NameCallback implements Callback, java.io.Serializable { ...@@ -69,7 +69,7 @@ public class NameCallback implements Callback, java.io.Serializable {
} }
/** /**
* Construct a <code>NameCallback</code> with a prompt * Construct a {@code NameCallback} with a prompt
* and default name. * and default name.
* *
* <p> * <p>
...@@ -79,10 +79,10 @@ public class NameCallback implements Callback, java.io.Serializable { ...@@ -79,10 +79,10 @@ public class NameCallback implements Callback, java.io.Serializable {
* @param defaultName the name to be used as the default name displayed * @param defaultName the name to be used as the default name displayed
* with the prompt. * with the prompt.
* *
* @exception IllegalArgumentException if <code>prompt</code> is null, * @exception IllegalArgumentException if {@code prompt} is null,
* if <code>prompt</code> has a length of 0, * if {@code prompt} has a length of 0,
* if <code>defaultName</code> is null, * if {@code defaultName} is null,
* or if <code>defaultName</code> has a length of 0. * or if {@code defaultName} has a length of 0.
*/ */
public NameCallback(String prompt, String defaultName) { public NameCallback(String prompt, String defaultName) {
if (prompt == null || prompt.length() == 0 || if (prompt == null || prompt.length() == 0 ||
...@@ -109,8 +109,8 @@ public class NameCallback implements Callback, java.io.Serializable { ...@@ -109,8 +109,8 @@ public class NameCallback implements Callback, java.io.Serializable {
* *
* <p> * <p>
* *
* @return the default name, or null if this <code>NameCallback</code> * @return the default name, or null if this {@code NameCallback}
* was not instantiated with a <code>defaultName</code>. * was not instantiated with a {@code defaultName}.
*/ */
public String getDefaultName() { public String getDefaultName() {
return defaultName; return defaultName;
......
/* /*
* Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -27,8 +27,8 @@ package javax.security.auth.callback; ...@@ -27,8 +27,8 @@ package javax.security.auth.callback;
/** /**
* <p> Underlying security services instantiate and pass a * <p> Underlying security services instantiate and pass a
* <code>PasswordCallback</code> to the <code>handle</code> * {@code PasswordCallback} to the {@code handle}
* method of a <code>CallbackHandler</code> to retrieve password information. * method of a {@code CallbackHandler} to retrieve password information.
* *
* @see javax.security.auth.callback.CallbackHandler * @see javax.security.auth.callback.CallbackHandler
*/ */
...@@ -53,7 +53,7 @@ public class PasswordCallback implements Callback, java.io.Serializable { ...@@ -53,7 +53,7 @@ public class PasswordCallback implements Callback, java.io.Serializable {
private char[] inputPassword; private char[] inputPassword;
/** /**
* Construct a <code>PasswordCallback</code> with a prompt * Construct a {@code PasswordCallback} with a prompt
* and a boolean specifying whether the password should be displayed * and a boolean specifying whether the password should be displayed
* as it is being typed. * as it is being typed.
* *
...@@ -64,8 +64,8 @@ public class PasswordCallback implements Callback, java.io.Serializable { ...@@ -64,8 +64,8 @@ public class PasswordCallback implements Callback, java.io.Serializable {
* @param echoOn true if the password should be displayed * @param echoOn true if the password should be displayed
* as it is being typed. * as it is being typed.
* *
* @exception IllegalArgumentException if <code>prompt</code> is null or * @exception IllegalArgumentException if {@code prompt} is null or
* if <code>prompt</code> has a length of 0. * if {@code prompt} has a length of 0.
*/ */
public PasswordCallback(String prompt, boolean echoOn) { public PasswordCallback(String prompt, boolean echoOn) {
if (prompt == null || prompt.length() == 0) if (prompt == null || prompt.length() == 0)
......
/* /*
* Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -27,8 +27,8 @@ package javax.security.auth.callback; ...@@ -27,8 +27,8 @@ package javax.security.auth.callback;
/** /**
* <p> Underlying security services instantiate and pass a * <p> Underlying security services instantiate and pass a
* <code>TextInputCallback</code> to the <code>handle</code> * {@code TextInputCallback} to the {@code handle}
* method of a <code>CallbackHandler</code> to retrieve generic text * method of a {@code CallbackHandler} to retrieve generic text
* information. * information.
* *
* @see javax.security.auth.callback.CallbackHandler * @see javax.security.auth.callback.CallbackHandler
...@@ -54,14 +54,14 @@ public class TextInputCallback implements Callback, java.io.Serializable { ...@@ -54,14 +54,14 @@ public class TextInputCallback implements Callback, java.io.Serializable {
private String inputText; private String inputText;
/** /**
* Construct a <code>TextInputCallback</code> with a prompt. * Construct a {@code TextInputCallback} with a prompt.
* *
* <p> * <p>
* *
* @param prompt the prompt used to request the information. * @param prompt the prompt used to request the information.
* *
* @exception IllegalArgumentException if <code>prompt</code> is null * @exception IllegalArgumentException if {@code prompt} is null
* or if <code>prompt</code> has a length of 0. * or if {@code prompt} has a length of 0.
*/ */
public TextInputCallback(String prompt) { public TextInputCallback(String prompt) {
if (prompt == null || prompt.length() == 0) if (prompt == null || prompt.length() == 0)
...@@ -70,7 +70,7 @@ public class TextInputCallback implements Callback, java.io.Serializable { ...@@ -70,7 +70,7 @@ public class TextInputCallback implements Callback, java.io.Serializable {
} }
/** /**
* Construct a <code>TextInputCallback</code> with a prompt * Construct a {@code TextInputCallback} with a prompt
* and default input value. * and default input value.
* *
* <p> * <p>
...@@ -80,10 +80,10 @@ public class TextInputCallback implements Callback, java.io.Serializable { ...@@ -80,10 +80,10 @@ public class TextInputCallback implements Callback, java.io.Serializable {
* @param defaultText the text to be used as the default text displayed * @param defaultText the text to be used as the default text displayed
* with the prompt. * with the prompt.
* *
* @exception IllegalArgumentException if <code>prompt</code> is null, * @exception IllegalArgumentException if {@code prompt} is null,
* if <code>prompt</code> has a length of 0, * if {@code prompt} has a length of 0,
* if <code>defaultText</code> is null * if {@code defaultText} is null
* or if <code>defaultText</code> has a length of 0. * or if {@code defaultText} has a length of 0.
*/ */
public TextInputCallback(String prompt, String defaultText) { public TextInputCallback(String prompt, String defaultText) {
if (prompt == null || prompt.length() == 0 || if (prompt == null || prompt.length() == 0 ||
...@@ -110,8 +110,8 @@ public class TextInputCallback implements Callback, java.io.Serializable { ...@@ -110,8 +110,8 @@ public class TextInputCallback implements Callback, java.io.Serializable {
* *
* <p> * <p>
* *
* @return the default text, or null if this <code>TextInputCallback</code> * @return the default text, or null if this {@code TextInputCallback}
* was not instantiated with <code>defaultText</code>. * was not instantiated with {@code defaultText}.
*/ */
public String getDefaultText() { public String getDefaultText() {
return defaultText; return defaultText;
......
/* /*
* Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -27,8 +27,8 @@ package javax.security.auth.callback; ...@@ -27,8 +27,8 @@ package javax.security.auth.callback;
/** /**
* <p> Underlying security services instantiate and pass a * <p> Underlying security services instantiate and pass a
* <code>TextOutputCallback</code> to the <code>handle</code> * {@code TextOutputCallback} to the {@code handle}
* method of a <code>CallbackHandler</code> to display information messages, * method of a {@code CallbackHandler} to display information messages,
* warning messages and error messages. * warning messages and error messages.
* *
* @see javax.security.auth.callback.CallbackHandler * @see javax.security.auth.callback.CallbackHandler
...@@ -61,16 +61,16 @@ public class TextOutputCallback implements Callback, java.io.Serializable { ...@@ -61,16 +61,16 @@ public class TextOutputCallback implements Callback, java.io.Serializable {
* *
* <p> * <p>
* *
* @param messageType the message type (<code>INFORMATION</code>, * @param messageType the message type ({@code INFORMATION},
* <code>WARNING</code> or <code>ERROR</code>). <p> * {@code WARNING} or {@code ERROR}). <p>
* *
* @param message the message to be displayed. <p> * @param message the message to be displayed. <p>
* *
* @exception IllegalArgumentException if <code>messageType</code> * @exception IllegalArgumentException if {@code messageType}
* is not either <code>INFORMATION</code>, * is not either {@code INFORMATION},
* <code>WARNING</code> or <code>ERROR</code>, * {@code WARNING} or {@code ERROR},
* if <code>message</code> is null, * if {@code message} is null,
* or if <code>message</code> has a length of 0. * or if {@code message} has a length of 0.
*/ */
public TextOutputCallback(int messageType, String message) { public TextOutputCallback(int messageType, String message) {
if ((messageType != INFORMATION && if ((messageType != INFORMATION &&
...@@ -87,8 +87,8 @@ public class TextOutputCallback implements Callback, java.io.Serializable { ...@@ -87,8 +87,8 @@ public class TextOutputCallback implements Callback, java.io.Serializable {
* *
* <p> * <p>
* *
* @return the message type (<code>INFORMATION</code>, * @return the message type ({@code INFORMATION},
* <code>WARNING</code> or <code>ERROR</code>). * {@code WARNING} or {@code ERROR}).
*/ */
public int getMessageType() { public int getMessageType() {
return messageType; return messageType;
......
/* /*
* Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -26,8 +26,8 @@ ...@@ -26,8 +26,8 @@
package javax.security.auth.callback; package javax.security.auth.callback;
/** /**
* Signals that a <code>CallbackHandler</code> does not * Signals that a {@code CallbackHandler} does not
* recognize a particular <code>Callback</code>. * recognize a particular {@code Callback}.
* *
*/ */
public class UnsupportedCallbackException extends Exception { public class UnsupportedCallbackException extends Exception {
...@@ -40,12 +40,12 @@ public class UnsupportedCallbackException extends Exception { ...@@ -40,12 +40,12 @@ public class UnsupportedCallbackException extends Exception {
private Callback callback; private Callback callback;
/** /**
* Constructs a <code>UnsupportedCallbackException</code> * Constructs a {@code UnsupportedCallbackException}
* with no detail message. * with no detail message.
* *
* <p> * <p>
* *
* @param callback the unrecognized <code>Callback</code>. * @param callback the unrecognized {@code Callback}.
*/ */
public UnsupportedCallbackException(Callback callback) { public UnsupportedCallbackException(Callback callback) {
super(); super();
...@@ -59,7 +59,7 @@ public class UnsupportedCallbackException extends Exception { ...@@ -59,7 +59,7 @@ public class UnsupportedCallbackException extends Exception {
* *
* <p> * <p>
* *
* @param callback the unrecognized <code>Callback</code>. <p> * @param callback the unrecognized {@code Callback}. <p>
* *
* @param msg the detail message. * @param msg the detail message.
*/ */
...@@ -69,11 +69,11 @@ public class UnsupportedCallbackException extends Exception { ...@@ -69,11 +69,11 @@ public class UnsupportedCallbackException extends Exception {
} }
/** /**
* Get the unrecognized <code>Callback</code>. * Get the unrecognized {@code Callback}.
* *
* <p> * <p>
* *
* @return the unrecognized <code>Callback</code>. * @return the unrecognized {@code Callback}.
*/ */
public Callback getCallback() { public Callback getCallback() {
return callback; return callback;
......
/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/**
* This package provides the classes necessary for services
* to interact with applications in order to retrieve
* information (authentication data including usernames
* or passwords, for example) or to display information
* (error and warning messages, for example).
*
* @since JDK1.4
*/
package javax.security.auth.callback;
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!--
Copyright (c) 2000, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 2 only, as
published by the Free Software Foundation. Oracle designates this
particular file as subject to the "Classpath" exception as provided
by Oracle in the LICENSE file that accompanied this code.
This code is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
version 2 for more details (a copy is included in the LICENSE file that
accompanied this code).
You should have received a copy of the GNU General Public License version
2 along with this work; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
or visit www.oracle.com if you need additional information or have any
questions.
-->
</head>
<body bgcolor="white">
This package provides the classes necessary for services
to interact with applications in order to retrieve
information (authentication data including usernames
or passwords, for example) or to display information
(error and warning messages, for example).
<!--
<h2>Package Specification</h2>
##### FILL IN ANY SPECS NEEDED BY JAVA COMPATIBILITY KIT #####
<ul>
<li><a href="">##### REFER TO ANY FRAMEMAKER SPECIFICATION HERE #####</a>
</ul>
<h2>Related Documentation</h2>
For overviews, tutorials, examples, guides, and tool documentation, please see:
<ul>
<li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
</ul>
-->
@since JDK1.4
</body>
</html>
/* /*
* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -38,7 +38,7 @@ import java.io.IOException; ...@@ -38,7 +38,7 @@ import java.io.IOException;
* This class is used to restrict the usage of the Kerberos * This class is used to restrict the usage of the Kerberos
* delegation model, ie: forwardable and proxiable tickets. * delegation model, ie: forwardable and proxiable tickets.
* <p> * <p>
* The target name of this <code>Permission</code> specifies a pair of * The target name of this {@code Permission} specifies a pair of
* kerberos service principals. The first is the subordinate service principal * kerberos service principals. The first is the subordinate service principal
* being entrusted to use the TGT. The second service principal designates * being entrusted to use the TGT. The second service principal designates
* the target service the subordinate service principal is to * the target service the subordinate service principal is to
...@@ -71,15 +71,15 @@ public final class DelegationPermission extends BasicPermission ...@@ -71,15 +71,15 @@ public final class DelegationPermission extends BasicPermission
private transient String subordinate, service; private transient String subordinate, service;
/** /**
* Create a new <code>DelegationPermission</code> * Create a new {@code DelegationPermission}
* with the specified subordinate and target principals. * with the specified subordinate and target principals.
* *
* <p> * <p>
* *
* @param principals the name of the subordinate and target principals * @param principals the name of the subordinate and target principals
* *
* @throws NullPointerException if <code>principals</code> is <code>null</code>. * @throws NullPointerException if {@code principals} is {@code null}.
* @throws IllegalArgumentException if <code>principals</code> is empty. * @throws IllegalArgumentException if {@code principals} is empty.
*/ */
public DelegationPermission(String principals) { public DelegationPermission(String principals) {
super(principals); super(principals);
...@@ -87,7 +87,7 @@ public final class DelegationPermission extends BasicPermission ...@@ -87,7 +87,7 @@ public final class DelegationPermission extends BasicPermission
} }
/** /**
* Create a new <code>DelegationPermission</code> * Create a new {@code DelegationPermission}
* with the specified subordinate and target principals. * with the specified subordinate and target principals.
* <p> * <p>
* *
...@@ -95,8 +95,8 @@ public final class DelegationPermission extends BasicPermission ...@@ -95,8 +95,8 @@ public final class DelegationPermission extends BasicPermission
* <p> * <p>
* @param actions should be null. * @param actions should be null.
* *
* @throws NullPointerException if <code>principals</code> is <code>null</code>. * @throws NullPointerException if {@code principals} is {@code null}.
* @throws IllegalArgumentException if <code>principals</code> is empty. * @throws IllegalArgumentException if {@code principals} is empty.
*/ */
public DelegationPermission(String principals, String actions) { public DelegationPermission(String principals, String actions) {
super(principals, actions); super(principals, actions);
...@@ -134,7 +134,7 @@ public final class DelegationPermission extends BasicPermission ...@@ -134,7 +134,7 @@ public final class DelegationPermission extends BasicPermission
* Checks if this Kerberos delegation permission object "implies" the * Checks if this Kerberos delegation permission object "implies" the
* specified permission. * specified permission.
* <P> * <P>
* If none of the above are true, <code>implies</code> returns false. * If none of the above are true, {@code implies} returns false.
* @param p the permission to check against. * @param p the permission to check against.
* *
* @return true if the specified permission is implied by this object, * @return true if the specified permission is implied by this object,
......
/* /*
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -76,7 +76,7 @@ public class KerberosKey implements SecretKey, Destroyable { ...@@ -76,7 +76,7 @@ public class KerberosKey implements SecretKey, Destroyable {
private int versionNum; private int versionNum;
/** /**
* <code>KeyImpl</code> is serialized by writing out the ASN1 Encoded bytes * {@code KeyImpl} is serialized by writing out the ASN1 Encoded bytes
* of the encryption key. * of the encryption key.
* The ASN1 encoding is defined in RFC4120 and as follows: * The ASN1 encoding is defined in RFC4120 and as follows:
* <pre> * <pre>
...@@ -241,7 +241,7 @@ public class KerberosKey implements SecretKey, Destroyable { ...@@ -241,7 +241,7 @@ public class KerberosKey implements SecretKey, Destroyable {
/** /**
* Returns a hashcode for this KerberosKey. * Returns a hashcode for this KerberosKey.
* *
* @return a hashCode() for the <code>KerberosKey</code> * @return a hashCode() for the {@code KerberosKey}
* @since 1.6 * @since 1.6
*/ */
public int hashCode() { public int hashCode() {
...@@ -260,8 +260,8 @@ public class KerberosKey implements SecretKey, Destroyable { ...@@ -260,8 +260,8 @@ public class KerberosKey implements SecretKey, Destroyable {
/** /**
* Compares the specified Object with this KerberosKey for equality. * Compares the specified Object with this KerberosKey for equality.
* Returns true if the given object is also a * Returns true if the given object is also a
* <code>KerberosKey</code> and the two * {@code KerberosKey} and the two
* <code>KerberosKey</code> instances are equivalent. * {@code KerberosKey} instances are equivalent.
* *
* @param other the Object to compare to * @param other the Object to compare to
* @return true if the specified object is equal to this KerberosKey, * @return true if the specified object is equal to this KerberosKey,
......
/* /*
* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -181,11 +181,11 @@ public final class KerberosPrincipal ...@@ -181,11 +181,11 @@ public final class KerberosPrincipal
/** /**
* Returns a hashcode for this principal. The hash code is defined to * Returns a hashcode for this principal. The hash code is defined to
* be the result of the following calculation: * be the result of the following calculation:
* <pre><code> * <pre>{@code
* hashCode = getName().hashCode(); * hashCode = getName().hashCode();
* </code></pre> * }</pre>
* *
* @return a hashCode() for the <code>KerberosPrincipal</code> * @return a hashCode() for the {@code KerberosPrincipal}
*/ */
public int hashCode() { public int hashCode() {
return getName().hashCode(); return getName().hashCode();
...@@ -194,11 +194,11 @@ public final class KerberosPrincipal ...@@ -194,11 +194,11 @@ public final class KerberosPrincipal
/** /**
* Compares the specified Object with this Principal for equality. * Compares the specified Object with this Principal for equality.
* Returns true if the given object is also a * Returns true if the given object is also a
* <code>KerberosPrincipal</code> and the two * {@code KerberosPrincipal} and the two
* <code>KerberosPrincipal</code> instances are equivalent. * {@code KerberosPrincipal} instances are equivalent.
* More formally two <code>KerberosPrincipal</code> instances are equal * More formally two {@code KerberosPrincipal} instances are equal
* if the values returned by <code>getName()</code> are equal and the * if the values returned by {@code getName()} are equal and the
* values returned by <code>getNameType()</code> are equal. * values returned by {@code getNameType()} are equal.
* *
* @param other the Object to compare to * @param other the Object to compare to
* @return true if the Object passed in represents the same principal * @return true if the Object passed in represents the same principal
...@@ -225,7 +225,7 @@ public final class KerberosPrincipal ...@@ -225,7 +225,7 @@ public final class KerberosPrincipal
/** /**
* Save the KerberosPrincipal object to a stream * Save the KerberosPrincipal object to a stream
* *
* @serialData this <code>KerberosPrincipal</code> is serialized * @serialData this {@code KerberosPrincipal} is serialized
* by writing out the PrincipalName and the * by writing out the PrincipalName and the
* realm in their DER-encoded form as specified in Section 5.2.2 of * realm in their DER-encoded form as specified in Section 5.2.2 of
* <a href=http://www.ietf.org/rfc/rfc4120.txt> RFC4120</a>. * <a href=http://www.ietf.org/rfc/rfc4120.txt> RFC4120</a>.
......
/* /*
* Copyright (c) 2000, 2008, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -103,7 +103,7 @@ public class KerberosTicket implements Destroyable, Refreshable, ...@@ -103,7 +103,7 @@ public class KerberosTicket implements Destroyable, Refreshable,
private byte[] asn1Encoding; private byte[] asn1Encoding;
/** /**
*<code>KeyImpl</code> is serialized by writing out the ASN1 Encoded bytes *{@code KeyImpl} is serialized by writing out the ASN1 Encoded bytes
* of the encryption key. The ASN1 encoding is defined in RFC4120 and as * of the encryption key. The ASN1 encoding is defined in RFC4120 and as
* follows: * follows:
* <pre> * <pre>
...@@ -667,7 +667,7 @@ public class KerberosTicket implements Destroyable, Refreshable, ...@@ -667,7 +667,7 @@ public class KerberosTicket implements Destroyable, Refreshable,
/** /**
* Returns a hashcode for this KerberosTicket. * Returns a hashcode for this KerberosTicket.
* *
* @return a hashCode() for the <code>KerberosTicket</code> * @return a hashCode() for the {@code KerberosTicket}
* @since 1.6 * @since 1.6
*/ */
public int hashCode() { public int hashCode() {
...@@ -704,8 +704,8 @@ public class KerberosTicket implements Destroyable, Refreshable, ...@@ -704,8 +704,8 @@ public class KerberosTicket implements Destroyable, Refreshable,
/** /**
* Compares the specified Object with this KerberosTicket for equality. * Compares the specified Object with this KerberosTicket for equality.
* Returns true if the given object is also a * Returns true if the given object is also a
* <code>KerberosTicket</code> and the two * {@code KerberosTicket} and the two
* <code>KerberosTicket</code> instances are equivalent. * {@code KerberosTicket} instances are equivalent.
* *
* @param other the Object to compare to * @param other the Object to compare to
* @return true if the specified object is equal to this KerberosTicket, * @return true if the specified object is equal to this KerberosTicket,
......
/* /*
* Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -166,7 +166,7 @@ class KeyImpl implements SecretKey, Destroyable, Serializable { ...@@ -166,7 +166,7 @@ class KeyImpl implements SecretKey, Destroyable, Serializable {
} }
/** /**
* @serialData this <code>KeyImpl</code> is serialized by * @serialData this {@code KeyImpl} is serialized by
* writing out the ASN1 Encoded bytes of the encryption key. * writing out the ASN1 Encoded bytes of the encryption key.
* The ASN1 encoding is defined in RFC4120 and as follows: * The ASN1 encoding is defined in RFC4120 and as follows:
* EncryptionKey ::= SEQUENCE { * EncryptionKey ::= SEQUENCE {
......
/* /*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -312,7 +312,7 @@ public final class KeyTab { ...@@ -312,7 +312,7 @@ public final class KeyTab {
/** /**
* Returns a hashcode for this KeyTab. * Returns a hashcode for this KeyTab.
* *
* @return a hashCode() for the <code>KeyTab</code> * @return a hashCode() for the {@code KeyTab}
*/ */
public int hashCode() { public int hashCode() {
return Objects.hash(file, princ, bound); return Objects.hash(file, princ, bound);
...@@ -321,8 +321,8 @@ public final class KeyTab { ...@@ -321,8 +321,8 @@ public final class KeyTab {
/** /**
* Compares the specified Object with this KeyTab for equality. * Compares the specified Object with this KeyTab for equality.
* Returns true if the given object is also a * Returns true if the given object is also a
* <code>KeyTab</code> and the two * {@code KeyTab} and the two
* <code>KeyTab</code> instances are equivalent. * {@code KeyTab} instances are equivalent.
* *
* @param other the Object to compare to * @param other the Object to compare to
* @return true if the specified object is equal to this KeyTab * @return true if the specified object is equal to this KeyTab
......
/* /*
* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -50,7 +50,7 @@ import java.io.IOException; ...@@ -50,7 +50,7 @@ import java.io.IOException;
* used within. * used within.
* <p> * <p>
* The service principal name is the canonical name of the * The service principal name is the canonical name of the
* <code>KereberosPrincipal</code> supplying the service, that is * {@code KereberosPrincipal} supplying the service, that is
* the KerberosPrincipal represents a Kerberos service * the KerberosPrincipal represents a Kerberos service
* principal. This name is treated in a case sensitive manner. * principal. This name is treated in a case sensitive manner.
* An asterisk may appear by itself, to signify any service principal. * An asterisk may appear by itself, to signify any service principal.
...@@ -135,9 +135,9 @@ public final class ServicePermission extends Permission ...@@ -135,9 +135,9 @@ public final class ServicePermission extends Permission
// created and re-used in the getAction function. // created and re-used in the getAction function.
/** /**
* Create a new <code>ServicePermission</code> * Create a new {@code ServicePermission}
* with the specified <code>servicePrincipal</code> * with the specified {@code servicePrincipal}
* and <code>action</code>. * and {@code action}.
* *
* @param servicePrincipal the name of the service principal. * @param servicePrincipal the name of the service principal.
* An asterisk may appear by itself, to signify any service principal. * An asterisk may appear by itself, to signify any service principal.
...@@ -169,7 +169,7 @@ public final class ServicePermission extends Permission ...@@ -169,7 +169,7 @@ public final class ServicePermission extends Permission
* Checks if this Kerberos service permission object "implies" the * Checks if this Kerberos service permission object "implies" the
* specified permission. * specified permission.
* <P> * <P>
* If none of the above are true, <code>implies</code> returns false. * If none of the above are true, {@code implies} returns false.
* @param p the permission to check against. * @param p the permission to check against.
* *
* @return true if the specified permission is implied by this object, * @return true if the specified permission is implied by this object,
......
/*
* Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/**
* This package contains utility classes related to the Kerberos network
* authentication protocol. They do not provide much Kerberos support
* themselves.<p>
*
* The Kerberos network authentication protocol is defined in
* <a href=http://www.ietf.org/rfc/rfc4120.txt>RFC 4120</a>. The Java
* platform contains support for the client side of Kerberos via the
* {@link org.ietf.jgss} package. There might also be
* a login module that implements
* {@link javax.security.auth.spi.LoginModule LoginModule} to authenticate
* Kerberos principals.<p>
*
* You can provide the name of your default realm and Key Distribution
* Center (KDC) host for that realm using the system properties
* {@code java.security.krb5.realm} and {@code java.security.krb5.kdc}.
* Both properties must be set.
* Alternatively, the {@code java.security.krb5.conf} system property can
* be set to the location of an MIT style {@code krb5.conf} configuration
* file. If none of these system properties are set, the {@code krb5.conf}
* file is searched for in an implementation-specific manner. Typically,
* an implementation will first look for a {@code krb5.conf} file in
* {@code <java-home>/lib/security} and failing that, in an OS-specific
* location.<p>
*
* @since JDK1.4
*/
package javax.security.auth.kerberos;
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!--
Copyright (c) 2001, 2006, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 2 only, as
published by the Free Software Foundation. Oracle designates this
particular file as subject to the "Classpath" exception as provided
by Oracle in the LICENSE file that accompanied this code.
This code is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
version 2 for more details (a copy is included in the LICENSE file that
accompanied this code).
You should have received a copy of the GNU General Public License version
2 along with this work; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
or visit www.oracle.com if you need additional information or have any
questions.
-->
</head>
<body bgcolor="white">
This package contains utility classes related to the Kerberos network
authentication protocol. They do not provide much Kerberos support
themselves.<p>
The Kerberos network authentication protocol is defined in
<a href=http://www.ietf.org/rfc/rfc4120.txt>RFC 4120</a>. The Java
platform contains support for the client side of Kerberos via the
{@link org.ietf.jgss} package. There might also be
a login module that implements
{@link javax.security.auth.spi.LoginModule LoginModule} to authenticate
Kerberos principals.<p>
You can provide the name of your default realm and Key Distribution
Center (KDC) host for that realm using the system properties
{@code java.security.krb5.realm} and {@code java.security.krb5.kdc}.
Both properties must be set.
Alternatively, the {@code java.security.krb5.conf} system property can
be set to the location of an MIT style {@code krb5.conf} configuration
file. If none of these system properties are set, the {@code krb5.conf}
file is searched for in an implementation-specific manner. Typically,
an implementation will first look for a {@code krb5.conf} file in
{@code <java-home>/lib/security} and failing that, in an OS-specific
location.<p>
<!--
<h2>Package Specification</h2>
##### FILL IN ANY SPECS NEEDED BY JAVA COMPATIBILITY KIT #####
<ul>
<li><a href="">##### REFER TO ANY FRAMEMAKER SPECIFICATION HERE #####</a>
</ul>
<h2>Related Documentation</h2>
For overviews, tutorials, examples, guides, and tool documentation, please see:
<ul>
<li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
</ul>
-->
@since JDK1.4
</body>
</html>
/* /*
* Copyright (c) 1998, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -29,9 +29,9 @@ package javax.security.auth.login; ...@@ -29,9 +29,9 @@ package javax.security.auth.login;
* Signals that a user account has expired. * Signals that a user account has expired.
* *
* <p> This exception is thrown by LoginModules when they determine * <p> This exception is thrown by LoginModules when they determine
* that an account has expired. For example, a <code>LoginModule</code>, * that an account has expired. For example, a {@code LoginModule},
* after successfully authenticating a user, may determine that the * after successfully authenticating a user, may determine that the
* user's account has expired. In this case the <code>LoginModule</code> * user's account has expired. In this case the {@code LoginModule}
* throws this exception to notify the application. The application can * throws this exception to notify the application. The application can
* then take the appropriate steps to notify the user. * then take the appropriate steps to notify the user.
* *
......
/* /*
* Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -29,14 +29,14 @@ import java.util.Map; ...@@ -29,14 +29,14 @@ import java.util.Map;
import java.util.Collections; import java.util.Collections;
/** /**
* This class represents a single <code>LoginModule</code> entry * This class represents a single {@code LoginModule} entry
* configured for the application specified in the * configured for the application specified in the
* <code>getAppConfigurationEntry(String appName)</code> * {@code getAppConfigurationEntry(String appName)}
* method in the <code>Configuration</code> class. Each respective * method in the {@code Configuration} class. Each respective
* <code>AppConfigurationEntry</code> contains a <code>LoginModule</code> name, * {@code AppConfigurationEntry} contains a {@code LoginModule} name,
* a control flag (specifying whether this <code>LoginModule</code> is * a control flag (specifying whether this {@code LoginModule} is
* REQUIRED, REQUISITE, SUFFICIENT, or OPTIONAL), and LoginModule-specific * REQUIRED, REQUISITE, SUFFICIENT, or OPTIONAL), and LoginModule-specific
* options. Please refer to the <code>Configuration</code> class for * options. Please refer to the {@code Configuration} class for
* more information on the different control flags and their semantics. * more information on the different control flags and their semantics.
* *
* @see javax.security.auth.login.Configuration * @see javax.security.auth.login.Configuration
...@@ -50,25 +50,25 @@ public class AppConfigurationEntry { ...@@ -50,25 +50,25 @@ public class AppConfigurationEntry {
/** /**
* Default constructor for this class. * Default constructor for this class.
* *
* <p> This entry represents a single <code>LoginModule</code> * <p> This entry represents a single {@code LoginModule}
* entry configured for the application specified in the * entry configured for the application specified in the
* <code>getAppConfigurationEntry(String appName)</code> * {@code getAppConfigurationEntry(String appName)}
* method from the <code>Configuration</code> class. * method from the {@code Configuration} class.
* *
* @param loginModuleName String representing the class name of the * @param loginModuleName String representing the class name of the
* <code>LoginModule</code> configured for the * {@code LoginModule} configured for the
* specified application. <p> * specified application. <p>
* *
* @param controlFlag either REQUIRED, REQUISITE, SUFFICIENT, * @param controlFlag either REQUIRED, REQUISITE, SUFFICIENT,
* or OPTIONAL. <p> * or OPTIONAL. <p>
* *
* @param options the options configured for this <code>LoginModule</code>. * @param options the options configured for this {@code LoginModule}.
* *
* @exception IllegalArgumentException if <code>loginModuleName</code> * @exception IllegalArgumentException if {@code loginModuleName}
* is null, if <code>LoginModuleName</code> * is null, if {@code LoginModuleName}
* has a length of 0, if <code>controlFlag</code> * has a length of 0, if {@code controlFlag}
* is not either REQUIRED, REQUISITE, SUFFICIENT * is not either REQUIRED, REQUISITE, SUFFICIENT
* or OPTIONAL, or if <code>options</code> is null. * or OPTIONAL, or if {@code options} is null.
*/ */
public AppConfigurationEntry(String loginModuleName, public AppConfigurationEntry(String loginModuleName,
LoginModuleControlFlag controlFlag, LoginModuleControlFlag controlFlag,
...@@ -88,9 +88,9 @@ public class AppConfigurationEntry { ...@@ -88,9 +88,9 @@ public class AppConfigurationEntry {
} }
/** /**
* Get the class name of the configured <code>LoginModule</code>. * Get the class name of the configured {@code LoginModule}.
* *
* @return the class name of the configured <code>LoginModule</code> as * @return the class name of the configured {@code LoginModule} as
* a String. * a String.
*/ */
public String getLoginModuleName() { public String getLoginModuleName() {
...@@ -100,28 +100,28 @@ public class AppConfigurationEntry { ...@@ -100,28 +100,28 @@ public class AppConfigurationEntry {
/** /**
* Return the controlFlag * Return the controlFlag
* (either REQUIRED, REQUISITE, SUFFICIENT, or OPTIONAL) * (either REQUIRED, REQUISITE, SUFFICIENT, or OPTIONAL)
* for this <code>LoginModule</code>. * for this {@code LoginModule}.
* *
* @return the controlFlag * @return the controlFlag
* (either REQUIRED, REQUISITE, SUFFICIENT, or OPTIONAL) * (either REQUIRED, REQUISITE, SUFFICIENT, or OPTIONAL)
* for this <code>LoginModule</code>. * for this {@code LoginModule}.
*/ */
public LoginModuleControlFlag getControlFlag() { public LoginModuleControlFlag getControlFlag() {
return controlFlag; return controlFlag;
} }
/** /**
* Get the options configured for this <code>LoginModule</code>. * Get the options configured for this {@code LoginModule}.
* *
* @return the options configured for this <code>LoginModule</code> * @return the options configured for this {@code LoginModule}
* as an unmodifiable <code>Map</code>. * as an unmodifiable {@code Map}.
*/ */
public Map<String,?> getOptions() { public Map<String,?> getOptions() {
return options; return options;
} }
/** /**
* This class represents whether or not a <code>LoginModule</code> * This class represents whether or not a {@code LoginModule}
* is REQUIRED, REQUISITE, SUFFICIENT or OPTIONAL. * is REQUIRED, REQUISITE, SUFFICIENT or OPTIONAL.
*/ */
public static class LoginModuleControlFlag { public static class LoginModuleControlFlag {
...@@ -129,25 +129,25 @@ public class AppConfigurationEntry { ...@@ -129,25 +129,25 @@ public class AppConfigurationEntry {
private String controlFlag; private String controlFlag;
/** /**
* Required <code>LoginModule</code>. * Required {@code LoginModule}.
*/ */
public static final LoginModuleControlFlag REQUIRED = public static final LoginModuleControlFlag REQUIRED =
new LoginModuleControlFlag("required"); new LoginModuleControlFlag("required");
/** /**
* Requisite <code>LoginModule</code>. * Requisite {@code LoginModule}.
*/ */
public static final LoginModuleControlFlag REQUISITE = public static final LoginModuleControlFlag REQUISITE =
new LoginModuleControlFlag("requisite"); new LoginModuleControlFlag("requisite");
/** /**
* Sufficient <code>LoginModule</code>. * Sufficient {@code LoginModule}.
*/ */
public static final LoginModuleControlFlag SUFFICIENT = public static final LoginModuleControlFlag SUFFICIENT =
new LoginModuleControlFlag("sufficient"); new LoginModuleControlFlag("sufficient");
/** /**
* Optional <code>LoginModule</code>. * Optional {@code LoginModule}.
*/ */
public static final LoginModuleControlFlag OPTIONAL = public static final LoginModuleControlFlag OPTIONAL =
new LoginModuleControlFlag("optional"); new LoginModuleControlFlag("optional");
......
/* /*
* Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -49,9 +49,9 @@ import sun.security.jca.GetInstance; ...@@ -49,9 +49,9 @@ import sun.security.jca.GetInstance;
* *
* <p> A login configuration contains the following information. * <p> A login configuration contains the following information.
* Note that this example only represents the default syntax for the * Note that this example only represents the default syntax for the
* <code>Configuration</code>. Subclass implementations of this class * {@code Configuration}. Subclass implementations of this class
* may implement alternative syntaxes and may retrieve the * may implement alternative syntaxes and may retrieve the
* <code>Configuration</code> from any source such as files, databases, * {@code Configuration} from any source such as files, databases,
* or servers. * or servers.
* *
* <pre> * <pre>
...@@ -70,9 +70,9 @@ import sun.security.jca.GetInstance; ...@@ -70,9 +70,9 @@ import sun.security.jca.GetInstance;
* }; * };
* </pre> * </pre>
* *
* <p> Each entry in the <code>Configuration</code> is indexed via an * <p> Each entry in the {@code Configuration} is indexed via an
* application name, <i>Name</i>, and contains a list of * application name, <i>Name</i>, and contains a list of
* LoginModules configured for that application. Each <code>LoginModule</code> * LoginModules configured for that application. Each {@code LoginModule}
* is specified via its fully qualified class name. * is specified via its fully qualified class name.
* Authentication proceeds down the module list in the exact order specified. * Authentication proceeds down the module list in the exact order specified.
* If an application does not have specific entry, * If an application does not have specific entry,
...@@ -83,55 +83,55 @@ import sun.security.jca.GetInstance; ...@@ -83,55 +83,55 @@ import sun.security.jca.GetInstance;
* valid values for <i>Flag</i> and their respective semantics: * valid values for <i>Flag</i> and their respective semantics:
* *
* <pre> * <pre>
* 1) Required - The <code>LoginModule</code> is required to succeed. * 1) Required - The {@code LoginModule} is required to succeed.
* If it succeeds or fails, authentication still continues * If it succeeds or fails, authentication still continues
* to proceed down the <code>LoginModule</code> list. * to proceed down the {@code LoginModule} list.
* *
* 2) Requisite - The <code>LoginModule</code> is required to succeed. * 2) Requisite - The {@code LoginModule} is required to succeed.
* If it succeeds, authentication continues down the * If it succeeds, authentication continues down the
* <code>LoginModule</code> list. If it fails, * {@code LoginModule} list. If it fails,
* control immediately returns to the application * control immediately returns to the application
* (authentication does not proceed down the * (authentication does not proceed down the
* <code>LoginModule</code> list). * {@code LoginModule} list).
* *
* 3) Sufficient - The <code>LoginModule</code> is not required to * 3) Sufficient - The {@code LoginModule} is not required to
* succeed. If it does succeed, control immediately * succeed. If it does succeed, control immediately
* returns to the application (authentication does not * returns to the application (authentication does not
* proceed down the <code>LoginModule</code> list). * proceed down the {@code LoginModule} list).
* If it fails, authentication continues down the * If it fails, authentication continues down the
* <code>LoginModule</code> list. * {@code LoginModule} list.
* *
* 4) Optional - The <code>LoginModule</code> is not required to * 4) Optional - The {@code LoginModule} is not required to
* succeed. If it succeeds or fails, * succeed. If it succeeds or fails,
* authentication still continues to proceed down the * authentication still continues to proceed down the
* <code>LoginModule</code> list. * {@code LoginModule} list.
* </pre> * </pre>
* *
* <p> The overall authentication succeeds only if all <i>Required</i> and * <p> The overall authentication succeeds only if all <i>Required</i> and
* <i>Requisite</i> LoginModules succeed. If a <i>Sufficient</i> * <i>Requisite</i> LoginModules succeed. If a <i>Sufficient</i>
* <code>LoginModule</code> is configured and succeeds, * {@code LoginModule} is configured and succeeds,
* then only the <i>Required</i> and <i>Requisite</i> LoginModules prior to * then only the <i>Required</i> and <i>Requisite</i> LoginModules prior to
* that <i>Sufficient</i> <code>LoginModule</code> need to have succeeded for * that <i>Sufficient</i> {@code LoginModule} need to have succeeded for
* the overall authentication to succeed. If no <i>Required</i> or * the overall authentication to succeed. If no <i>Required</i> or
* <i>Requisite</i> LoginModules are configured for an application, * <i>Requisite</i> LoginModules are configured for an application,
* then at least one <i>Sufficient</i> or <i>Optional</i> * then at least one <i>Sufficient</i> or <i>Optional</i>
* <code>LoginModule</code> must succeed. * {@code LoginModule} must succeed.
* *
* <p> <i>ModuleOptions</i> is a space separated list of * <p> <i>ModuleOptions</i> is a space separated list of
* <code>LoginModule</code>-specific values which are passed directly to * {@code LoginModule}-specific values which are passed directly to
* the underlying LoginModules. Options are defined by the * the underlying LoginModules. Options are defined by the
* <code>LoginModule</code> itself, and control the behavior within it. * {@code LoginModule} itself, and control the behavior within it.
* For example, a <code>LoginModule</code> may define options to support * For example, a {@code LoginModule} may define options to support
* debugging/testing capabilities. The correct way to specify options in the * debugging/testing capabilities. The correct way to specify options in the
* <code>Configuration</code> is by using the following key-value pairing: * {@code Configuration} is by using the following key-value pairing:
* <i>debug="true"</i>. The key and value should be separated by an * <i>debug="true"</i>. The key and value should be separated by an
* 'equals' symbol, and the value should be surrounded by double quotes. * 'equals' symbol, and the value should be surrounded by double quotes.
* If a String in the form, ${system.property}, occurs in the value, * If a String in the form, ${system.property}, occurs in the value,
* it will be expanded to the value of the system property. * it will be expanded to the value of the system property.
* Note that there is no limit to the number of * Note that there is no limit to the number of
* options a <code>LoginModule</code> may define. * options a {@code LoginModule} may define.
* *
* <p> The following represents an example <code>Configuration</code> entry * <p> The following represents an example {@code Configuration} entry
* based on the syntax above: * based on the syntax above:
* *
* <pre> * <pre>
...@@ -143,7 +143,7 @@ import sun.security.jca.GetInstance; ...@@ -143,7 +143,7 @@ import sun.security.jca.GetInstance;
* }; * };
* </pre> * </pre>
* *
* <p> This <code>Configuration</code> specifies that an application named, * <p> This {@code Configuration} specifies that an application named,
* "Login", requires users to first authenticate to the * "Login", requires users to first authenticate to the
* <i>com.sun.security.auth.module.UnixLoginModule</i>, which is * <i>com.sun.security.auth.module.UnixLoginModule</i>, which is
* required to succeed. Even if the <i>UnixLoginModule</i> * required to succeed. Even if the <i>UnixLoginModule</i>
...@@ -165,11 +165,11 @@ import sun.security.jca.GetInstance; ...@@ -165,11 +165,11 @@ import sun.security.jca.GetInstance;
* *
* <p> There is only one Configuration object installed in the runtime at any * <p> There is only one Configuration object installed in the runtime at any
* given time. A Configuration object can be installed by calling the * given time. A Configuration object can be installed by calling the
* <code>setConfiguration</code> method. The installed Configuration object * {@code setConfiguration} method. The installed Configuration object
* can be obtained by calling the <code>getConfiguration</code> method. * can be obtained by calling the {@code getConfiguration} method.
* *
* <p> If no Configuration object has been installed in the runtime, a call to * <p> If no Configuration object has been installed in the runtime, a call to
* <code>getConfiguration</code> installs an instance of the default * {@code getConfiguration} installs an instance of the default
* Configuration implementation (a default subclass implementation of this * Configuration implementation (a default subclass implementation of this
* abstract class). * abstract class).
* The default Configuration implementation can be changed by setting the value * The default Configuration implementation can be changed by setting the value
...@@ -178,7 +178,7 @@ import sun.security.jca.GetInstance; ...@@ -178,7 +178,7 @@ import sun.security.jca.GetInstance;
* *
* <p> Application code can directly subclass Configuration to provide a custom * <p> Application code can directly subclass Configuration to provide a custom
* implementation. In addition, an instance of a Configuration object can be * implementation. In addition, an instance of a Configuration object can be
* constructed by invoking one of the <code>getInstance</code> factory methods * constructed by invoking one of the {@code getInstance} factory methods
* with a standard type. The default policy type is "JavaLoginConfig". * with a standard type. The default policy type is "JavaLoginConfig".
* See the Configuration section in the <a href= * See the Configuration section in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Configuration"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#Configuration">
...@@ -222,7 +222,7 @@ public abstract class Configuration { ...@@ -222,7 +222,7 @@ public abstract class Configuration {
* <p> * <p>
* *
* @return the login Configuration. If a Configuration object was set * @return the login Configuration. If a Configuration object was set
* via the <code>Configuration.setConfiguration</code> method, * via the {@code Configuration.setConfiguration} method,
* then that object is returned. Otherwise, a default * then that object is returned. Otherwise, a default
* Configuration object is returned. * Configuration object is returned.
* *
...@@ -286,14 +286,14 @@ public abstract class Configuration { ...@@ -286,14 +286,14 @@ public abstract class Configuration {
} }
/** /**
* Set the login <code>Configuration</code>. * Set the login {@code Configuration}.
* *
* <p> * <p>
* *
* @param configuration the new <code>Configuration</code> * @param configuration the new {@code Configuration}
* *
* @exception SecurityException if the current thread does not have * @exception SecurityException if the current thread does not have
* Permission to set the <code>Configuration</code>. * Permission to set the {@code Configuration}.
* *
* @see #getConfiguration * @see #getConfiguration
*/ */
...@@ -505,7 +505,7 @@ public abstract class Configuration { ...@@ -505,7 +505,7 @@ public abstract class Configuration {
* Return the Provider of this Configuration. * Return the Provider of this Configuration.
* *
* <p> This Configuration instance will only have a Provider if it * <p> This Configuration instance will only have a Provider if it
* was obtained via a call to <code>Configuration.getInstance</code>. * was obtained via a call to {@code Configuration.getInstance}.
* Otherwise this method returns null. * Otherwise this method returns null.
* *
* @return the Provider of this Configuration, or null. * @return the Provider of this Configuration, or null.
...@@ -520,7 +520,7 @@ public abstract class Configuration { ...@@ -520,7 +520,7 @@ public abstract class Configuration {
* Return the type of this Configuration. * Return the type of this Configuration.
* *
* <p> This Configuration instance will only have a type if it * <p> This Configuration instance will only have a type if it
* was obtained via a call to <code>Configuration.getInstance</code>. * was obtained via a call to {@code Configuration.getInstance}.
* Otherwise this method returns null. * Otherwise this method returns null.
* *
* @return the type of this Configuration, or null. * @return the type of this Configuration, or null.
...@@ -535,7 +535,7 @@ public abstract class Configuration { ...@@ -535,7 +535,7 @@ public abstract class Configuration {
* Return Configuration parameters. * Return Configuration parameters.
* *
* <p> This Configuration instance will only have parameters if it * <p> This Configuration instance will only have parameters if it
* was obtained via a call to <code>Configuration.getInstance</code>. * was obtained via a call to {@code Configuration.getInstance}.
* Otherwise this method returns null. * Otherwise this method returns null.
* *
* @return Configuration parameters, or null. * @return Configuration parameters, or null.
...@@ -567,7 +567,7 @@ public abstract class Configuration { ...@@ -567,7 +567,7 @@ public abstract class Configuration {
* <p> This method causes this Configuration object to refresh/reload its * <p> This method causes this Configuration object to refresh/reload its
* contents in an implementation-dependent manner. * contents in an implementation-dependent manner.
* For example, if this Configuration object stores its entries in a file, * For example, if this Configuration object stores its entries in a file,
* calling <code>refresh</code> may cause the file to be re-read. * calling {@code refresh} may cause the file to be re-read.
* *
* <p> The default implementation of this method does nothing. * <p> The default implementation of this method does nothing.
* This method should be overridden if a refresh operation is supported * This method should be overridden if a refresh operation is supported
......
/* /*
* Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -28,15 +28,15 @@ package javax.security.auth.login; ...@@ -28,15 +28,15 @@ package javax.security.auth.login;
/** /**
* This class defines the <i>Service Provider Interface</i> (<b>SPI</b>) * This class defines the <i>Service Provider Interface</i> (<b>SPI</b>)
* for the <code>Configuration</code> class. * for the {@code Configuration} class.
* All the abstract methods in this class must be implemented by each * All the abstract methods in this class must be implemented by each
* service provider who wishes to supply a Configuration implementation. * service provider who wishes to supply a Configuration implementation.
* *
* <p> Subclass implementations of this abstract class must provide * <p> Subclass implementations of this abstract class must provide
* a public constructor that takes a <code>Configuration.Parameters</code> * a public constructor that takes a {@code Configuration.Parameters}
* object as an input parameter. This constructor also must throw * object as an input parameter. This constructor also must throw
* an IllegalArgumentException if it does not understand the * an IllegalArgumentException if it does not understand the
* <code>Configuration.Parameters</code> input. * {@code Configuration.Parameters} input.
* *
* *
* @since 1.6 * @since 1.6
...@@ -62,7 +62,7 @@ public abstract class ConfigurationSpi { ...@@ -62,7 +62,7 @@ public abstract class ConfigurationSpi {
* <p> This method causes this Configuration object to refresh/reload its * <p> This method causes this Configuration object to refresh/reload its
* contents in an implementation-dependent manner. * contents in an implementation-dependent manner.
* For example, if this Configuration object stores its entries in a file, * For example, if this Configuration object stores its entries in a file,
* calling <code>refresh</code> may cause the file to be re-read. * calling {@code refresh} may cause the file to be re-read.
* *
* <p> The default implementation of this method does nothing. * <p> The default implementation of this method does nothing.
* This method should be overridden if a refresh operation is supported * This method should be overridden if a refresh operation is supported
......
/* /*
* Copyright (c) 1998, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -26,14 +26,14 @@ ...@@ -26,14 +26,14 @@
package javax.security.auth.login; package javax.security.auth.login;
/** /**
* Signals that a <code>Credential</code> has expired. * Signals that a {@code Credential} has expired.
* *
* <p> This exception is thrown by LoginModules when they determine * <p> This exception is thrown by LoginModules when they determine
* that a <code>Credential</code> has expired. * that a {@code Credential} has expired.
* For example, a <code>LoginModule</code> authenticating a user * For example, a {@code LoginModule} authenticating a user
* in its <code>login</code> method may determine that the user's * in its {@code login} method may determine that the user's
* password, although entered correctly, has expired. In this case * password, although entered correctly, has expired. In this case
* the <code>LoginModule</code> throws this exception to notify * the {@code LoginModule} throws this exception to notify
* the application. The application can then take the appropriate * the application. The application can then take the appropriate
* steps to assist the user in updating the password. * steps to assist the user in updating the password.
* *
......
/* /*
* Copyright (c) 1998, 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -29,7 +29,7 @@ package javax.security.auth.login; ...@@ -29,7 +29,7 @@ package javax.security.auth.login;
* Signals that user authentication failed. * Signals that user authentication failed.
* *
* <p> This exception is thrown by LoginModules if authentication failed. * <p> This exception is thrown by LoginModules if authentication failed.
* For example, a <code>LoginModule</code> throws this exception if * For example, a {@code LoginModule} throws this exception if
* the user entered an incorrect password. * the user entered an incorrect password.
* *
*/ */
......
/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/**
* This package provides a pluggable authentication framework.
* <h2>Package Specification</h2>
*
* <ul>
* <li><a href="{@docRoot}/../technotes/guides/security/StandardNames.html">
* <b>Java&trade;
* Cryptography Architecture Standard Algorithm Name
* Documentation</b></a></li>
* </ul>
*
* @since 1.4
*/
package javax.security.auth.login;
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!--
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 2 only, as
published by the Free Software Foundation. Oracle designates this
particular file as subject to the "Classpath" exception as provided
by Oracle in the LICENSE file that accompanied this code.
This code is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
version 2 for more details (a copy is included in the LICENSE file that
accompanied this code).
You should have received a copy of the GNU General Public License version
2 along with this work; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
or visit www.oracle.com if you need additional information or have any
questions.
-->
</head>
<body bgcolor="white">
This package provides a pluggable authentication framework.
<h2>Package Specification</h2>
<ul>
<li><a href="{@docRoot}/../technotes/guides/security/StandardNames.html">
<b>Java<FONT SIZE=-2><SUP>TM</SUP></FONT>
Cryptography Architecture Standard Algorithm Name
Documentation</b></a></li>
</ul>
<!--
<h2>Related Documentation</h2>
For overviews, tutorials, examples, guides, and tool documentation, please see:
<ul>
<li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
</ul>
-->
@since 1.4
</body>
</html>
/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/**
* This package provides a framework for authentication and
* authorization. The framework allows
* authentication to be performed in pluggable fashion. Different
* authentication modules can be plugged under an application without
* requiring modifications to the application itself. The
* authorization component allows specification of access controls
* based on code location, code signers and code executors
* (Subjects).
*
* @since JDK1.4
*/
package javax.security.auth;
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!--
Copyright (c) 2000, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 2 only, as
published by the Free Software Foundation. Oracle designates this
particular file as subject to the "Classpath" exception as provided
by Oracle in the LICENSE file that accompanied this code.
This code is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
version 2 for more details (a copy is included in the LICENSE file that
accompanied this code).
You should have received a copy of the GNU General Public License version
2 along with this work; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
or visit www.oracle.com if you need additional information or have any
questions.
-->
</head>
<body bgcolor="white">
This package provides a framework for authentication and
authorization. The framework allows
authentication to be performed in pluggable fashion. Different
authentication modules can be plugged under an application without
requiring modifications to the application itself. The
authorization component allows specification of access controls
based on code location, code signers and code executors
(Subjects).
<!--
<h2>Package Specification</h2>
##### FILL IN ANY SPECS NEEDED BY JAVA COMPATIBILITY KIT #####
<ul>
<li><a href="">##### REFER TO ANY FRAMEMAKER SPECIFICATION HERE #####</a>
</ul>
<h2>Related Documentation</h2>
For overviews, tutorials, examples, guides, and tool documentation, please see:
<ul>
<li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
</ul>
-->
@since JDK1.4
</body>
</html>
/* /*
* Copyright (c) 1998, 2004, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -32,95 +32,95 @@ import javax.security.auth.login.*; ...@@ -32,95 +32,95 @@ import javax.security.auth.login.*;
import java.util.Map; import java.util.Map;
/** /**
* <p> <code>LoginModule</code> describes the interface * <p> {@code LoginModule} describes the interface
* implemented by authentication technology providers. LoginModules * implemented by authentication technology providers. LoginModules
* are plugged in under applications to provide a particular type of * are plugged in under applications to provide a particular type of
* authentication. * authentication.
* *
* <p> While applications write to the <code>LoginContext</code> API, * <p> While applications write to the {@code LoginContext} API,
* authentication technology providers implement the * authentication technology providers implement the
* <code>LoginModule</code> interface. * {@code LoginModule} interface.
* A <code>Configuration</code> specifies the LoginModule(s) * A {@code Configuration} specifies the LoginModule(s)
* to be used with a particular login application. Therefore different * to be used with a particular login application. Therefore different
* LoginModules can be plugged in under the application without * LoginModules can be plugged in under the application without
* requiring any modifications to the application itself. * requiring any modifications to the application itself.
* *
* <p> The <code>LoginContext</code> is responsible for reading the * <p> The {@code LoginContext} is responsible for reading the
* <code>Configuration</code> and instantiating the appropriate * {@code Configuration} and instantiating the appropriate
* LoginModules. Each <code>LoginModule</code> is initialized with * LoginModules. Each {@code LoginModule} is initialized with
* a <code>Subject</code>, a <code>CallbackHandler</code>, shared * a {@code Subject}, a {@code CallbackHandler}, shared
* <code>LoginModule</code> state, and LoginModule-specific options. * {@code LoginModule} state, and LoginModule-specific options.
* *
* The <code>Subject</code> represents the * The {@code Subject} represents the
* <code>Subject</code> currently being authenticated and is updated * {@code Subject} currently being authenticated and is updated
* with relevant Credentials if authentication succeeds. * with relevant Credentials if authentication succeeds.
* LoginModules use the <code>CallbackHandler</code> to * LoginModules use the {@code CallbackHandler} to
* communicate with users. The <code>CallbackHandler</code> may be * communicate with users. The {@code CallbackHandler} may be
* used to prompt for usernames and passwords, for example. * used to prompt for usernames and passwords, for example.
* Note that the <code>CallbackHandler</code> may be null. LoginModules * Note that the {@code CallbackHandler} may be null. LoginModules
* which absolutely require a <code>CallbackHandler</code> to authenticate * which absolutely require a {@code CallbackHandler} to authenticate
* the <code>Subject</code> may throw a <code>LoginException</code>. * the {@code Subject} may throw a {@code LoginException}.
* LoginModules optionally use the shared state to share information * LoginModules optionally use the shared state to share information
* or data among themselves. * or data among themselves.
* *
* <p> The LoginModule-specific options represent the options * <p> The LoginModule-specific options represent the options
* configured for this <code>LoginModule</code> by an administrator or user * configured for this {@code LoginModule} by an administrator or user
* in the login <code>Configuration</code>. * in the login {@code Configuration}.
* The options are defined by the <code>LoginModule</code> itself * The options are defined by the {@code LoginModule} itself
* and control the behavior within it. For example, a * and control the behavior within it. For example, a
* <code>LoginModule</code> may define options to support debugging/testing * {@code LoginModule} may define options to support debugging/testing
* capabilities. Options are defined using a key-value syntax, * capabilities. Options are defined using a key-value syntax,
* such as <i>debug=true</i>. The <code>LoginModule</code> * such as <i>debug=true</i>. The {@code LoginModule}
* stores the options as a <code>Map</code> so that the values may * stores the options as a {@code Map} so that the values may
* be retrieved using the key. Note that there is no limit to the number * be retrieved using the key. Note that there is no limit to the number
* of options a <code>LoginModule</code> chooses to define. * of options a {@code LoginModule} chooses to define.
* *
* <p> The calling application sees the authentication process as a single * <p> The calling application sees the authentication process as a single
* operation. However, the authentication process within the * operation. However, the authentication process within the
* <code>LoginModule</code> proceeds in two distinct phases. * {@code LoginModule} proceeds in two distinct phases.
* In the first phase, the LoginModule's * In the first phase, the LoginModule's
* <code>login</code> method gets invoked by the LoginContext's * {@code login} method gets invoked by the LoginContext's
* <code>login</code> method. The <code>login</code> * {@code login} method. The {@code login}
* method for the <code>LoginModule</code> then performs * method for the {@code LoginModule} then performs
* the actual authentication (prompt for and verify a password for example) * the actual authentication (prompt for and verify a password for example)
* and saves its authentication status as private state * and saves its authentication status as private state
* information. Once finished, the LoginModule's <code>login</code> * information. Once finished, the LoginModule's {@code login}
* method either returns <code>true</code> (if it succeeded) or * method either returns {@code true} (if it succeeded) or
* <code>false</code> (if it should be ignored), or throws a * {@code false} (if it should be ignored), or throws a
* <code>LoginException</code> to specify a failure. * {@code LoginException} to specify a failure.
* In the failure case, the <code>LoginModule</code> must not retry the * In the failure case, the {@code LoginModule} must not retry the
* authentication or introduce delays. The responsibility of such tasks * authentication or introduce delays. The responsibility of such tasks
* belongs to the application. If the application attempts to retry * belongs to the application. If the application attempts to retry
* the authentication, the LoginModule's <code>login</code> method will be * the authentication, the LoginModule's {@code login} method will be
* called again. * called again.
* *
* <p> In the second phase, if the LoginContext's overall authentication * <p> In the second phase, if the LoginContext's overall authentication
* succeeded (the relevant REQUIRED, REQUISITE, SUFFICIENT and OPTIONAL * succeeded (the relevant REQUIRED, REQUISITE, SUFFICIENT and OPTIONAL
* LoginModules succeeded), then the <code>commit</code> * LoginModules succeeded), then the {@code commit}
* method for the <code>LoginModule</code> gets invoked. * method for the {@code LoginModule} gets invoked.
* The <code>commit</code> method for a <code>LoginModule</code> checks its * The {@code commit} method for a {@code LoginModule} checks its
* privately saved state to see if its own authentication succeeded. * privately saved state to see if its own authentication succeeded.
* If the overall <code>LoginContext</code> authentication succeeded * If the overall {@code LoginContext} authentication succeeded
* and the LoginModule's own authentication succeeded, then the * and the LoginModule's own authentication succeeded, then the
* <code>commit</code> method associates the relevant * {@code commit} method associates the relevant
* Principals (authenticated identities) and Credentials (authentication data * Principals (authenticated identities) and Credentials (authentication data
* such as cryptographic keys) with the <code>Subject</code> * such as cryptographic keys) with the {@code Subject}
* located within the <code>LoginModule</code>. * located within the {@code LoginModule}.
* *
* <p> If the LoginContext's overall authentication failed (the relevant * <p> If the LoginContext's overall authentication failed (the relevant
* REQUIRED, REQUISITE, SUFFICIENT and OPTIONAL LoginModules did not succeed), * REQUIRED, REQUISITE, SUFFICIENT and OPTIONAL LoginModules did not succeed),
* then the <code>abort</code> method for each <code>LoginModule</code> * then the {@code abort} method for each {@code LoginModule}
* gets invoked. In this case, the <code>LoginModule</code> removes/destroys * gets invoked. In this case, the {@code LoginModule} removes/destroys
* any authentication state originally saved. * any authentication state originally saved.
* *
* <p> Logging out a <code>Subject</code> involves only one phase. * <p> Logging out a {@code Subject} involves only one phase.
* The <code>LoginContext</code> invokes the LoginModule's <code>logout</code> * The {@code LoginContext} invokes the LoginModule's {@code logout}
* method. The <code>logout</code> method for the <code>LoginModule</code> * method. The {@code logout} method for the {@code LoginModule}
* then performs the logout procedures, such as removing Principals or * then performs the logout procedures, such as removing Principals or
* Credentials from the <code>Subject</code> or logging session information. * Credentials from the {@code Subject} or logging session information.
* *
* <p> A <code>LoginModule</code> implementation must have a constructor with * <p> A {@code LoginModule} implementation must have a constructor with
* no arguments. This allows classes which load the <code>LoginModule</code> * no arguments. This allows classes which load the {@code LoginModule}
* to instantiate it. * to instantiate it.
* *
* @see javax.security.auth.login.LoginContext * @see javax.security.auth.login.LoginContext
...@@ -131,38 +131,38 @@ public interface LoginModule { ...@@ -131,38 +131,38 @@ public interface LoginModule {
/** /**
* Initialize this LoginModule. * Initialize this LoginModule.
* *
* <p> This method is called by the <code>LoginContext</code> * <p> This method is called by the {@code LoginContext}
* after this <code>LoginModule</code> has been instantiated. * after this {@code LoginModule} has been instantiated.
* The purpose of this method is to initialize this * The purpose of this method is to initialize this
* <code>LoginModule</code> with the relevant information. * {@code LoginModule} with the relevant information.
* If this <code>LoginModule</code> does not understand * If this {@code LoginModule} does not understand
* any of the data stored in <code>sharedState</code> or * any of the data stored in {@code sharedState} or
* <code>options</code> parameters, they can be ignored. * {@code options} parameters, they can be ignored.
* *
* <p> * <p>
* *
* @param subject the <code>Subject</code> to be authenticated. <p> * @param subject the {@code Subject} to be authenticated. <p>
* *
* @param callbackHandler a <code>CallbackHandler</code> for communicating * @param callbackHandler a {@code CallbackHandler} for communicating
* with the end user (prompting for usernames and * with the end user (prompting for usernames and
* passwords, for example). <p> * passwords, for example). <p>
* *
* @param sharedState state shared with other configured LoginModules. <p> * @param sharedState state shared with other configured LoginModules. <p>
* *
* @param options options specified in the login * @param options options specified in the login
* <code>Configuration</code> for this particular * {@code Configuration} for this particular
* <code>LoginModule</code>. * {@code LoginModule}.
*/ */
void initialize(Subject subject, CallbackHandler callbackHandler, void initialize(Subject subject, CallbackHandler callbackHandler,
Map<String,?> sharedState, Map<String,?> sharedState,
Map<String,?> options); Map<String,?> options);
/** /**
* Method to authenticate a <code>Subject</code> (phase 1). * Method to authenticate a {@code Subject} (phase 1).
* *
* <p> The implementation of this method authenticates * <p> The implementation of this method authenticates
* a <code>Subject</code>. For example, it may prompt for * a {@code Subject}. For example, it may prompt for
* <code>Subject</code> information such * {@code Subject} information such
* as a username and password and then attempt to verify the password. * as a username and password and then attempt to verify the password.
* This method saves the result of the authentication attempt * This method saves the result of the authentication attempt
* as private state within the LoginModule. * as private state within the LoginModule.
...@@ -172,7 +172,7 @@ public interface LoginModule { ...@@ -172,7 +172,7 @@ public interface LoginModule {
* @exception LoginException if the authentication fails * @exception LoginException if the authentication fails
* *
* @return true if the authentication succeeded, or false if this * @return true if the authentication succeeded, or false if this
* <code>LoginModule</code> should be ignored. * {@code LoginModule} should be ignored.
*/ */
boolean login() throws LoginException; boolean login() throws LoginException;
...@@ -186,9 +186,9 @@ public interface LoginModule { ...@@ -186,9 +186,9 @@ public interface LoginModule {
* *
* <p> If this LoginModule's own authentication attempt * <p> If this LoginModule's own authentication attempt
* succeeded (checked by retrieving the private state saved by the * succeeded (checked by retrieving the private state saved by the
* <code>login</code> method), then this method associates relevant * {@code login} method), then this method associates relevant
* Principals and Credentials with the <code>Subject</code> located in the * Principals and Credentials with the {@code Subject} located in the
* <code>LoginModule</code>. If this LoginModule's own * {@code LoginModule}. If this LoginModule's own
* authentication attempted failed, then this method removes/destroys * authentication attempted failed, then this method removes/destroys
* any state that was originally saved. * any state that was originally saved.
* *
...@@ -197,7 +197,7 @@ public interface LoginModule { ...@@ -197,7 +197,7 @@ public interface LoginModule {
* @exception LoginException if the commit fails * @exception LoginException if the commit fails
* *
* @return true if this method succeeded, or false if this * @return true if this method succeeded, or false if this
* <code>LoginModule</code> should be ignored. * {@code LoginModule} should be ignored.
*/ */
boolean commit() throws LoginException; boolean commit() throws LoginException;
...@@ -211,7 +211,7 @@ public interface LoginModule { ...@@ -211,7 +211,7 @@ public interface LoginModule {
* *
* <p> If this LoginModule's own authentication attempt * <p> If this LoginModule's own authentication attempt
* succeeded (checked by retrieving the private state saved by the * succeeded (checked by retrieving the private state saved by the
* <code>login</code> method), then this method cleans up any state * {@code login} method), then this method cleans up any state
* that was originally saved. * that was originally saved.
* *
* <p> * <p>
...@@ -219,12 +219,12 @@ public interface LoginModule { ...@@ -219,12 +219,12 @@ public interface LoginModule {
* @exception LoginException if the abort fails * @exception LoginException if the abort fails
* *
* @return true if this method succeeded, or false if this * @return true if this method succeeded, or false if this
* <code>LoginModule</code> should be ignored. * {@code LoginModule} should be ignored.
*/ */
boolean abort() throws LoginException; boolean abort() throws LoginException;
/** /**
* Method which logs out a <code>Subject</code>. * Method which logs out a {@code Subject}.
* *
* <p>An implementation of this method might remove/destroy a Subject's * <p>An implementation of this method might remove/destroy a Subject's
* Principals and Credentials. * Principals and Credentials.
...@@ -234,7 +234,7 @@ public interface LoginModule { ...@@ -234,7 +234,7 @@ public interface LoginModule {
* @exception LoginException if the logout fails * @exception LoginException if the logout fails
* *
* @return true if this method succeeded, or false if this * @return true if this method succeeded, or false if this
* <code>LoginModule</code> should be ignored. * {@code LoginModule} should be ignored.
*/ */
boolean logout() throws LoginException; boolean logout() throws LoginException;
} }
/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/**
* This package provides the interface to be used for
* implementing pluggable authentication modules.
*
* @since JDK1.4
*/
package javax.security.auth.spi;
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!--
Copyright (c) 2000, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 2 only, as
published by the Free Software Foundation. Oracle designates this
particular file as subject to the "Classpath" exception as provided
by Oracle in the LICENSE file that accompanied this code.
This code is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
version 2 for more details (a copy is included in the LICENSE file that
accompanied this code).
You should have received a copy of the GNU General Public License version
2 along with this work; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
or visit www.oracle.com if you need additional information or have any
questions.
-->
</head>
<body bgcolor="white">
This package provides the interface to be used for
implementing pluggable authentication modules.
<!--
<h2>Package Specification</h2>
##### FILL IN ANY SPECS NEEDED BY JAVA COMPATIBILITY KIT #####
<ul>
<li><a href="">##### REFER TO ANY FRAMEMAKER SPECIFICATION HERE #####</a>
</ul>
<h2>Related Documentation</h2>
For overviews, tutorials, examples, guides, and tool documentation, please see:
<ul>
<li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
</ul>
-->
@since JDK1.4
</body>
</html>
/* /*
* Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -33,8 +33,8 @@ import sun.security.x509.X500Name; ...@@ -33,8 +33,8 @@ import sun.security.x509.X500Name;
import sun.security.util.*; import sun.security.util.*;
/** /**
* <p> This class represents an X.500 <code>Principal</code>. * <p> This class represents an X.500 {@code Principal}.
* <code>X500Principal</code>s are represented by distinguished names such as * {@code X500Principal}s are represented by distinguished names such as
* "CN=Duke, OU=JavaSoft, O=Sun Microsystems, C=US". * "CN=Duke, OU=JavaSoft, O=Sun Microsystems, C=US".
* *
* <p> This class can be instantiated by using a string representation * <p> This class can be instantiated by using a string representation
...@@ -50,12 +50,12 @@ import sun.security.util.*; ...@@ -50,12 +50,12 @@ import sun.security.util.*;
* <a href="http://www.ietf.org/rfc/rfc3280.txt">RFC 3280: Internet X.509 * <a href="http://www.ietf.org/rfc/rfc3280.txt">RFC 3280: Internet X.509
* Public Key Infrastructure Certificate and CRL Profile</a>. * Public Key Infrastructure Certificate and CRL Profile</a>.
* *
* <p> The string representation for this <code>X500Principal</code> * <p> The string representation for this {@code X500Principal}
* can be obtained by calling the <code>getName</code> methods. * can be obtained by calling the {@code getName} methods.
* *
* <p> Note that the <code>getSubjectX500Principal</code> and * <p> Note that the {@code getSubjectX500Principal} and
* <code>getIssuerX500Principal</code> methods of * {@code getIssuerX500Principal} methods of
* <code>X509Certificate</code> return X500Principals representing the * {@code X509Certificate} return X500Principals representing the
* issuer and subject fields of the certificate. * issuer and subject fields of the certificate.
* *
* @see java.security.cert.X509Certificate * @see java.security.cert.X509Certificate
...@@ -97,7 +97,7 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -97,7 +97,7 @@ public final class X500Principal implements Principal, java.io.Serializable {
} }
/** /**
* Creates an <code>X500Principal</code> from a string representation of * Creates an {@code X500Principal} from a string representation of
* an X.500 distinguished name (ex: * an X.500 distinguished name (ex:
* "CN=Duke, OU=JavaSoft, O=Sun Microsystems, C=US"). * "CN=Duke, OU=JavaSoft, O=Sun Microsystems, C=US").
* The distinguished name must be specified using the grammar defined in * The distinguished name must be specified using the grammar defined in
...@@ -119,9 +119,9 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -119,9 +119,9 @@ public final class X500Principal implements Principal, java.io.Serializable {
* <p>{@code numericoid = number 1*( DOT number ) } * <p>{@code numericoid = number 1*( DOT number ) }
* *
* @param name an X.500 distinguished name in RFC 1779 or RFC 2253 format * @param name an X.500 distinguished name in RFC 1779 or RFC 2253 format
* @exception NullPointerException if the <code>name</code> * @exception NullPointerException if the {@code name}
* is <code>null</code> * is {@code null}
* @exception IllegalArgumentException if the <code>name</code> * @exception IllegalArgumentException if the {@code name}
* is improperly specified * is improperly specified
*/ */
public X500Principal(String name) { public X500Principal(String name) {
...@@ -129,7 +129,7 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -129,7 +129,7 @@ public final class X500Principal implements Principal, java.io.Serializable {
} }
/** /**
* Creates an <code>X500Principal</code> from a string representation of * Creates an {@code X500Principal} from a string representation of
* an X.500 distinguished name (ex: * an X.500 distinguished name (ex:
* "CN=Duke, OU=JavaSoft, O=Sun Microsystems, C=US"). * "CN=Duke, OU=JavaSoft, O=Sun Microsystems, C=US").
* The distinguished name must be specified using the grammar defined in * The distinguished name must be specified using the grammar defined in
...@@ -137,13 +137,13 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -137,13 +137,13 @@ public final class X500Principal implements Principal, java.io.Serializable {
* *
* <p> This constructor recognizes the attribute type keywords specified * <p> This constructor recognizes the attribute type keywords specified
* in {@link #X500Principal(String)} and also recognizes additional * in {@link #X500Principal(String)} and also recognizes additional
* keywords that have entries in the <code>keywordMap</code> parameter. * keywords that have entries in the {@code keywordMap} parameter.
* Keyword entries in the keywordMap take precedence over the default * Keyword entries in the keywordMap take precedence over the default
* keywords recognized by <code>X500Principal(String)</code>. Keywords * keywords recognized by {@code X500Principal(String)}. Keywords
* MUST be specified in all upper-case, otherwise they will be ignored. * MUST be specified in all upper-case, otherwise they will be ignored.
* Improperly specified keywords are ignored; however if a keyword in the * Improperly specified keywords are ignored; however if a keyword in the
* name maps to an improperly specified Object Identifier (OID), an * name maps to an improperly specified Object Identifier (OID), an
* <code>IllegalArgumentException</code> is thrown. It is permissible to * {@code IllegalArgumentException} is thrown. It is permissible to
* have 2 different keywords that map to the same OID. * have 2 different keywords that map to the same OID.
* *
* <p>This implementation enforces a more restrictive OID syntax than * <p>This implementation enforces a more restrictive OID syntax than
...@@ -157,11 +157,11 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -157,11 +157,11 @@ public final class X500Principal implements Principal, java.io.Serializable {
* @param keywordMap an attribute type keyword map, where each key is a * @param keywordMap an attribute type keyword map, where each key is a
* keyword String that maps to a corresponding object identifier in String * keyword String that maps to a corresponding object identifier in String
* form (a sequence of nonnegative integers separated by periods). The map * form (a sequence of nonnegative integers separated by periods). The map
* may be empty but never <code>null</code>. * may be empty but never {@code null}.
* @exception NullPointerException if <code>name</code> or * @exception NullPointerException if {@code name} or
* <code>keywordMap</code> is <code>null</code> * {@code keywordMap} is {@code null}
* @exception IllegalArgumentException if the <code>name</code> is * @exception IllegalArgumentException if the {@code name} is
* improperly specified or a keyword in the <code>name</code> maps to an * improperly specified or a keyword in the {@code name} maps to an
* OID that is not in the correct form * OID that is not in the correct form
* @since 1.6 * @since 1.6
*/ */
...@@ -188,10 +188,10 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -188,10 +188,10 @@ public final class X500Principal implements Principal, java.io.Serializable {
} }
/** /**
* Creates an <code>X500Principal</code> from a distinguished name in * Creates an {@code X500Principal} from a distinguished name in
* ASN.1 DER encoded form. The ASN.1 notation for this structure is as * ASN.1 DER encoded form. The ASN.1 notation for this structure is as
* follows. * follows.
* <pre><code> * <pre>{@code
* Name ::= CHOICE { * Name ::= CHOICE {
* RDNSequence } * RDNSequence }
* *
...@@ -214,7 +214,7 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -214,7 +214,7 @@ public final class X500Principal implements Principal, java.io.Serializable {
* universalString UniversalString (SIZE (1..MAX)), * universalString UniversalString (SIZE (1..MAX)),
* utf8String UTF8String (SIZE (1.. MAX)), * utf8String UTF8String (SIZE (1.. MAX)),
* bmpString BMPString (SIZE (1..MAX)) } * bmpString BMPString (SIZE (1..MAX)) }
* </code></pre> * }</pre>
* *
* @param name a byte array containing the distinguished name in ASN.1 * @param name a byte array containing the distinguished name in ASN.1
* DER encoded form * DER encoded form
...@@ -233,7 +233,7 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -233,7 +233,7 @@ public final class X500Principal implements Principal, java.io.Serializable {
} }
/** /**
* Creates an <code>X500Principal</code> from an <code>InputStream</code> * Creates an {@code X500Principal} from an {@code InputStream}
* containing the distinguished name in ASN.1 DER encoded form. * containing the distinguished name in ASN.1 DER encoded form.
* The ASN.1 notation for this structure is supplied in the * The ASN.1 notation for this structure is supplied in the
* documentation for * documentation for
...@@ -242,11 +242,11 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -242,11 +242,11 @@ public final class X500Principal implements Principal, java.io.Serializable {
* <p> The read position of the input stream is positioned * <p> The read position of the input stream is positioned
* to the next available byte after the encoded distinguished name. * to the next available byte after the encoded distinguished name.
* *
* @param is an <code>InputStream</code> containing the distinguished * @param is an {@code InputStream} containing the distinguished
* name in ASN.1 DER encoded form * name in ASN.1 DER encoded form
* *
* @exception NullPointerException if the <code>InputStream</code> * @exception NullPointerException if the {@code InputStream}
* is <code>null</code> * is {@code null}
* @exception IllegalArgumentException if an encoding error occurs * @exception IllegalArgumentException if an encoding error occurs
* (incorrect form for DN) * (incorrect form for DN)
*/ */
...@@ -284,9 +284,9 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -284,9 +284,9 @@ public final class X500Principal implements Principal, java.io.Serializable {
* the format defined in RFC 2253. * the format defined in RFC 2253.
* *
* <p>This method is equivalent to calling * <p>This method is equivalent to calling
* <code>getName(X500Principal.RFC2253)</code>. * {@code getName(X500Principal.RFC2253)}.
* *
* @return the distinguished name of this <code>X500Principal</code> * @return the distinguished name of this {@code X500Principal}
*/ */
public String getName() { public String getName() {
return getName(X500Principal.RFC2253); return getName(X500Principal.RFC2253);
...@@ -338,9 +338,9 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -338,9 +338,9 @@ public final class X500Principal implements Principal, java.io.Serializable {
* those which section 2.4 of RFC 2253 states must be escaped * those which section 2.4 of RFC 2253 states must be escaped
* (they are escaped using a preceding backslash character) * (they are escaped using a preceding backslash character)
* <li> The entire name is converted to upper case * <li> The entire name is converted to upper case
* using <code>String.toUpperCase(Locale.US)</code> * using {@code String.toUpperCase(Locale.US)}
* <li> The entire name is converted to lower case * <li> The entire name is converted to lower case
* using <code>String.toLowerCase(Locale.US)</code> * using {@code String.toLowerCase(Locale.US)}
* <li> The name is finally normalized using normalization form KD, * <li> The name is finally normalized using normalization form KD,
* as described in the Unicode Standard and UAX #15 * as described in the Unicode Standard and UAX #15
* </ol> * </ol>
...@@ -349,7 +349,7 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -349,7 +349,7 @@ public final class X500Principal implements Principal, java.io.Serializable {
* *
* @param format the format to use * @param format the format to use
* *
* @return a string representation of this <code>X500Principal</code> * @return a string representation of this {@code X500Principal}
* using the specified format * using the specified format
* @throws IllegalArgumentException if the specified format is invalid * @throws IllegalArgumentException if the specified format is invalid
* or null * or null
...@@ -371,16 +371,16 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -371,16 +371,16 @@ public final class X500Principal implements Principal, java.io.Serializable {
* Returns a string representation of the X.500 distinguished name * Returns a string representation of the X.500 distinguished name
* using the specified format. Valid values for the format are * using the specified format. Valid values for the format are
* "RFC1779" and "RFC2253" (case insensitive). "CANONICAL" is not * "RFC1779" and "RFC2253" (case insensitive). "CANONICAL" is not
* permitted and an <code>IllegalArgumentException</code> will be thrown. * permitted and an {@code IllegalArgumentException} will be thrown.
* *
* <p>This method returns Strings in the format as specified in * <p>This method returns Strings in the format as specified in
* {@link #getName(String)} and also emits additional attribute type * {@link #getName(String)} and also emits additional attribute type
* keywords for OIDs that have entries in the <code>oidMap</code> * keywords for OIDs that have entries in the {@code oidMap}
* parameter. OID entries in the oidMap take precedence over the default * parameter. OID entries in the oidMap take precedence over the default
* OIDs recognized by <code>getName(String)</code>. * OIDs recognized by {@code getName(String)}.
* Improperly specified OIDs are ignored; however if an OID * Improperly specified OIDs are ignored; however if an OID
* in the name maps to an improperly specified keyword, an * in the name maps to an improperly specified keyword, an
* <code>IllegalArgumentException</code> is thrown. * {@code IllegalArgumentException} is thrown.
* *
* <p> Additional standard formats may be introduced in the future. * <p> Additional standard formats may be introduced in the future.
* *
...@@ -393,12 +393,12 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -393,12 +393,12 @@ public final class X500Principal implements Principal, java.io.Serializable {
* @param oidMap an OID map, where each key is an object identifier in * @param oidMap an OID map, where each key is an object identifier in
* String form (a sequence of nonnegative integers separated by periods) * String form (a sequence of nonnegative integers separated by periods)
* that maps to a corresponding attribute type keyword String. * that maps to a corresponding attribute type keyword String.
* The map may be empty but never <code>null</code>. * The map may be empty but never {@code null}.
* @return a string representation of this <code>X500Principal</code> * @return a string representation of this {@code X500Principal}
* using the specified format * using the specified format
* @throws IllegalArgumentException if the specified format is invalid, * @throws IllegalArgumentException if the specified format is invalid,
* null, or an OID in the name maps to an improperly specified keyword * null, or an OID in the name maps to an improperly specified keyword
* @throws NullPointerException if <code>oidMap</code> is <code>null</code> * @throws NullPointerException if {@code oidMap} is {@code null}
* @since 1.6 * @since 1.6
*/ */
public String getName(String format, Map<String, String> oidMap) { public String getName(String format, Map<String, String> oidMap) {
...@@ -438,31 +438,31 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -438,31 +438,31 @@ public final class X500Principal implements Principal, java.io.Serializable {
/** /**
* Return a user-friendly string representation of this * Return a user-friendly string representation of this
* <code>X500Principal</code>. * {@code X500Principal}.
* *
* @return a string representation of this <code>X500Principal</code> * @return a string representation of this {@code X500Principal}
*/ */
public String toString() { public String toString() {
return thisX500Name.toString(); return thisX500Name.toString();
} }
/** /**
* Compares the specified <code>Object</code> with this * Compares the specified {@code Object} with this
* <code>X500Principal</code> for equality. * {@code X500Principal} for equality.
* *
* <p> Specifically, this method returns <code>true</code> if * <p> Specifically, this method returns {@code true} if
* the <code>Object</code> <i>o</i> is an <code>X500Principal</code> * the {@code Object} <i>o</i> is an {@code X500Principal}
* and if the respective canonical string representations * and if the respective canonical string representations
* (obtained via the <code>getName(X500Principal.CANONICAL)</code> method) * (obtained via the {@code getName(X500Principal.CANONICAL)} method)
* of this object and <i>o</i> are equal. * of this object and <i>o</i> are equal.
* *
* <p> This implementation is compliant with the requirements of RFC 3280. * <p> This implementation is compliant with the requirements of RFC 3280.
* *
* @param o Object to be compared for equality with this * @param o Object to be compared for equality with this
* <code>X500Principal</code> * {@code X500Principal}
* *
* @return <code>true</code> if the specified <code>Object</code> is equal * @return {@code true} if the specified {@code Object} is equal
* to this <code>X500Principal</code>, <code>false</code> otherwise * to this {@code X500Principal}, {@code false} otherwise
*/ */
public boolean equals(Object o) { public boolean equals(Object o) {
if (this == o) { if (this == o) {
...@@ -476,12 +476,12 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -476,12 +476,12 @@ public final class X500Principal implements Principal, java.io.Serializable {
} }
/** /**
* Return a hash code for this <code>X500Principal</code>. * Return a hash code for this {@code X500Principal}.
* *
* <p> The hash code is calculated via: * <p> The hash code is calculated via:
* <code>getName(X500Principal.CANONICAL).hashCode()</code> * {@code getName(X500Principal.CANONICAL).hashCode()}
* *
* @return a hash code for this <code>X500Principal</code> * @return a hash code for this {@code X500Principal}
*/ */
public int hashCode() { public int hashCode() {
return thisX500Name.hashCode(); return thisX500Name.hashCode();
...@@ -490,9 +490,9 @@ public final class X500Principal implements Principal, java.io.Serializable { ...@@ -490,9 +490,9 @@ public final class X500Principal implements Principal, java.io.Serializable {
/** /**
* Save the X500Principal object to a stream. * Save the X500Principal object to a stream.
* *
* @serialData this <code>X500Principal</code> is serialized * @serialData this {@code X500Principal} is serialized
* by writing out its DER-encoded form * by writing out its DER-encoded form
* (the value of <code>getEncoded</code> is serialized). * (the value of {@code getEncoded} is serialized).
*/ */
private void writeObject(java.io.ObjectOutputStream s) private void writeObject(java.io.ObjectOutputStream s)
throws IOException { throws IOException {
......
/* /*
* Copyright (c) 2000, 2001, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -30,7 +30,7 @@ import java.security.cert.X509Certificate; ...@@ -30,7 +30,7 @@ import java.security.cert.X509Certificate;
import javax.security.auth.Destroyable; import javax.security.auth.Destroyable;
/** /**
* <p> This class represents an <code>X500PrivateCredential</code>. * <p> This class represents an {@code X500PrivateCredential}.
* It associates an X.509 certificate, corresponding private key and the * It associates an X.509 certificate, corresponding private key and the
* KeyStore alias used to reference that exact key pair in the KeyStore. * KeyStore alias used to reference that exact key pair in the KeyStore.
* This enables looking up the private credentials for an X.500 principal * This enables looking up the private credentials for an X.500 principal
...@@ -48,8 +48,8 @@ public final class X500PrivateCredential implements Destroyable { ...@@ -48,8 +48,8 @@ public final class X500PrivateCredential implements Destroyable {
* <p> * <p>
* @param cert X509Certificate * @param cert X509Certificate
* @param key PrivateKey for the certificate * @param key PrivateKey for the certificate
* @exception IllegalArgumentException if either <code>cert</code> or * @exception IllegalArgumentException if either {@code cert} or
* <code>key</code> is null * {@code key} is null
* *
*/ */
...@@ -68,8 +68,8 @@ public final class X500PrivateCredential implements Destroyable { ...@@ -68,8 +68,8 @@ public final class X500PrivateCredential implements Destroyable {
* @param cert X509Certificate * @param cert X509Certificate
* @param key PrivateKey for the certificate * @param key PrivateKey for the certificate
* @param alias KeyStore alias * @param alias KeyStore alias
* @exception IllegalArgumentException if either <code>cert</code>, * @exception IllegalArgumentException if either {@code cert},
* <code>key</code> or <code>alias</code> is null * {@code key} or {@code alias} is null
* *
*/ */
public X500PrivateCredential(X509Certificate cert, PrivateKey key, public X500PrivateCredential(X509Certificate cert, PrivateKey key,
......
/*
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/**
* This package contains the classes that should be used to store
* X500 Principal and X500 Private Credentials in a
* <i>Subject</i>.
*
* <h2>Package Specification</h2>
*
* <ul>
* <li><a href="http://www.ietf.org/rfc/rfc1779.txt">
* RFC 1779: A String Representation of Distinguished Names</a></li>
* <li><a href="http://www.ietf.org/rfc/rfc2253.txt">
* RFC 2253: Lightweight Directory Access Protocol (v3):
* UTF-8 String Representation of Distinguished Names</a></li>
* <li><a href="http://www.ietf.org/rfc/rfc3280.txt">
* RFC 3280: Internet X.509 Public Key Infrastructure
* Certificate and Certificate Revocation List (CRL) Profile</a></li>
* <li><a href="http://www.ietf.org/rfc/rfc4512.txt">
* RFC 4512: Lightweight Directory Access Protocol (LDAP):
* Directory Information Models</a></li>
* </ul>
*
* @since JDK1.4
*/
package javax.security.auth.x500;
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!--
Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
This code is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 2 only, as
published by the Free Software Foundation. Oracle designates this
particular file as subject to the "Classpath" exception as provided
by Oracle in the LICENSE file that accompanied this code.
This code is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
version 2 for more details (a copy is included in the LICENSE file that
accompanied this code).
You should have received a copy of the GNU General Public License version
2 along with this work; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
or visit www.oracle.com if you need additional information or have any
questions.
-->
</head>
<body bgcolor="white">
This package contains the classes that should be used to store
X500 Principal and X500 Private Credentials in a
<i>Subject</i>.
<h2>Package Specification</h2>
<ul>
<li><a href="http://www.ietf.org/rfc/rfc1779.txt">
RFC 1779: A String Representation of Distinguished Names</a></li>
<li><a href="http://www.ietf.org/rfc/rfc2253.txt">
RFC 2253: Lightweight Directory Access Protocol (v3):
UTF-8 String Representation of Distinguished Names</a></li>
<li><a href="http://www.ietf.org/rfc/rfc3280.txt">
RFC 3280: Internet X.509 Public Key Infrastructure
Certificate and Certificate Revocation List (CRL) Profile</a></li>
<li><a href="http://www.ietf.org/rfc/rfc4512.txt">
RFC 4512: Lightweight Directory Access Protocol (LDAP):
Directory Information Models</a></li>
</ul>
<!--
<h2>Related Documentation</h2>
For overviews, tutorials, examples, guides, and tool documentation, please see:
<ul>
<li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
</ul>
-->
@since JDK1.4
</body>
</html>
/* /*
* Copyright (c) 1997, 2006, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -49,11 +49,11 @@ import java.security.SignatureException; ...@@ -49,11 +49,11 @@ import java.security.SignatureException;
* sets of information, and they store and retrieve the information in * sets of information, and they store and retrieve the information in
* different ways. * different ways.
* *
* <p><em>Note: The classes in the package <code>javax.security.cert</code> * <p><em>Note: The classes in the package {@code javax.security.cert}
* exist for compatibility with earlier versions of the * exist for compatibility with earlier versions of the
* Java Secure Sockets Extension (JSSE). New applications should instead * Java Secure Sockets Extension (JSSE). New applications should instead
* use the standard Java SE certificate classes located in * use the standard Java SE certificate classes located in
* <code>java.security.cert</code>.</em></p> * {@code java.security.cert}.</em></p>
* *
* @since 1.4 * @since 1.4
* @see X509Certificate * @see X509Certificate
...@@ -64,8 +64,8 @@ public abstract class Certificate { ...@@ -64,8 +64,8 @@ public abstract class Certificate {
/** /**
* Compares this certificate for equality with the specified * Compares this certificate for equality with the specified
* object. If the <code>other</code> object is an * object. If the {@code other} object is an
* <code>instanceof</code> <code>Certificate</code>, then * {@code instanceof} {@code Certificate}, then
* its encoded form is retrieved and compared with the * its encoded form is retrieved and compared with the
* encoded form of this certificate. * encoded form of this certificate.
* *
......
/* /*
* Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -30,11 +30,11 @@ package javax.security.cert; ...@@ -30,11 +30,11 @@ package javax.security.cert;
* Certificate Encoding Exception. This is thrown whenever an error * Certificate Encoding Exception. This is thrown whenever an error
* occurs whilst attempting to encode a certificate. * occurs whilst attempting to encode a certificate.
* *
* <p><em>Note: The classes in the package <code>javax.security.cert</code> * <p><em>Note: The classes in the package {@code javax.security.cert}
* exist for compatibility with earlier versions of the * exist for compatibility with earlier versions of the
* Java Secure Sockets Extension (JSSE). New applications should instead * Java Secure Sockets Extension (JSSE). New applications should instead
* use the standard Java SE certificate classes located in * use the standard Java SE certificate classes located in
* <code>java.security.cert</code>.</em></p> * {@code java.security.cert}.</em></p>
* *
* @since 1.4 * @since 1.4
* @author Hemma Prafullchandra * @author Hemma Prafullchandra
......
/* /*
* Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -29,11 +29,11 @@ package javax.security.cert; ...@@ -29,11 +29,11 @@ package javax.security.cert;
/** /**
* This exception indicates one of a variety of certificate problems. * This exception indicates one of a variety of certificate problems.
* *
* <p><em>Note: The classes in the package <code>javax.security.cert</code> * <p><em>Note: The classes in the package {@code javax.security.cert}
* exist for compatibility with earlier versions of the * exist for compatibility with earlier versions of the
* Java Secure Sockets Extension (JSSE). New applications should instead * Java Secure Sockets Extension (JSSE). New applications should instead
* use the standard Java SE certificate classes located in * use the standard Java SE certificate classes located in
* <code>java.security.cert</code>.</em></p> * {@code java.security.cert}.</em></p>
* *
* @author Hemma Prafullchandra * @author Hemma Prafullchandra
* @since 1.4 * @since 1.4
......
/* /*
* Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -28,15 +28,15 @@ package javax.security.cert; ...@@ -28,15 +28,15 @@ package javax.security.cert;
/** /**
* Certificate Expired Exception. This is thrown whenever the current * Certificate Expired Exception. This is thrown whenever the current
* <code>Date</code> or the specified <code>Date</code> is after the * {@code Date} or the specified {@code Date} is after the
* <code>notAfter</code> date/time specified in the validity period * {@code notAfter} date/time specified in the validity period
* of the certificate. * of the certificate.
* *
* <p><em>Note: The classes in the package <code>javax.security.cert</code> * <p><em>Note: The classes in the package {@code javax.security.cert}
* exist for compatibility with earlier versions of the * exist for compatibility with earlier versions of the
* Java Secure Sockets Extension (JSSE). New applications should instead * Java Secure Sockets Extension (JSSE). New applications should instead
* use the standard Java SE certificate classes located in * use the standard Java SE certificate classes located in
* <code>java.security.cert</code>.</em></p> * {@code java.security.cert}.</em></p>
* *
* @since 1.4 * @since 1.4
* @author Hemma Prafullchandra * @author Hemma Prafullchandra
......
/* /*
* Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -28,15 +28,15 @@ package javax.security.cert; ...@@ -28,15 +28,15 @@ package javax.security.cert;
/** /**
* Certificate is not yet valid exception. This is thrown whenever * Certificate is not yet valid exception. This is thrown whenever
* the current <code>Date</code> or the specified <code>Date</code> * the current {@code Date} or the specified {@code Date}
* is before the <code>notBefore</code> date/time in the Certificate * is before the {@code notBefore} date/time in the Certificate
* validity period. * validity period.
* *
* <p><em>Note: The classes in the package <code>javax.security.cert</code> * <p><em>Note: The classes in the package {@code javax.security.cert}
* exist for compatibility with earlier versions of the * exist for compatibility with earlier versions of the
* Java Secure Sockets Extension (JSSE). New applications should instead * Java Secure Sockets Extension (JSSE). New applications should instead
* use the standard Java SE certificate classes located in * use the standard Java SE certificate classes located in
* <code>java.security.cert</code>.</em></p> * {@code java.security.cert}.</em></p>
* *
* @since 1.4 * @since 1.4
* @author Hemma Prafullchandra * @author Hemma Prafullchandra
......
/* /*
* Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -31,11 +31,11 @@ package javax.security.cert; ...@@ -31,11 +31,11 @@ package javax.security.cert;
* invalid DER encoded certificate is parsed or unsupported DER features * invalid DER encoded certificate is parsed or unsupported DER features
* are found in the Certificate. * are found in the Certificate.
* *
* <p><em>Note: The classes in the package <code>javax.security.cert</code> * <p><em>Note: The classes in the package {@code javax.security.cert}
* exist for compatibility with earlier versions of the * exist for compatibility with earlier versions of the
* Java Secure Sockets Extension (JSSE). New applications should instead * Java Secure Sockets Extension (JSSE). New applications should instead
* use the standard Java SE certificate classes located in * use the standard Java SE certificate classes located in
* <code>java.security.cert</code>.</em></p> * {@code java.security.cert}.</em></p>
* *
* @since 1.4 * @since 1.4
* @author Hemma Prafullchandra * @author Hemma Prafullchandra
......
...@@ -70,7 +70,7 @@ import java.util.Date; ...@@ -70,7 +70,7 @@ import java.util.Date;
* CA certificates are either signed by themselves, or by some other * CA certificates are either signed by themselves, or by some other
* CA such as a "root" CA. * CA such as a "root" CA.
* <p> * <p>
* The ASN.1 definition of <code>tbsCertificate</code> is: * The ASN.1 definition of {@code tbsCertificate} is:
* <pre> * <pre>
* TBSCertificate ::= SEQUENCE { * TBSCertificate ::= SEQUENCE {
* version [0] EXPLICIT Version DEFAULT v1, * version [0] EXPLICIT Version DEFAULT v1,
...@@ -113,11 +113,11 @@ import java.util.Date; ...@@ -113,11 +113,11 @@ import java.util.Date;
* initialization time and will fallback on a default implementation if * initialization time and will fallback on a default implementation if
* the Security property is not accessible. * the Security property is not accessible.
* *
* <p><em>Note: The classes in the package <code>javax.security.cert</code> * <p><em>Note: The classes in the package {@code javax.security.cert}
* exist for compatibility with earlier versions of the * exist for compatibility with earlier versions of the
* Java Secure Sockets Extension (JSSE). New applications should instead * Java Secure Sockets Extension (JSSE). New applications should instead
* use the standard Java SE certificate classes located in * use the standard Java SE certificate classes located in
* <code>java.security.cert</code>.</em></p> * {@code java.security.cert}.</em></p>
* *
* @author Hemma Prafullchandra * @author Hemma Prafullchandra
* @since 1.4 * @since 1.4
...@@ -150,7 +150,7 @@ public abstract class X509Certificate extends Certificate { ...@@ -150,7 +150,7 @@ public abstract class X509Certificate extends Certificate {
/** /**
* Instantiates an X509Certificate object, and initializes it with * Instantiates an X509Certificate object, and initializes it with
* the data read from the input stream <code>inStream</code>. * the data read from the input stream {@code inStream}.
* The implementation (X509Certificate is an abstract class) is * The implementation (X509Certificate is an abstract class) is
* provided by the class specified as the value of the * provided by the class specified as the value of the
* {@code cert.provider.x509v1} security property. * {@code cert.provider.x509v1} security property.
...@@ -191,7 +191,7 @@ public abstract class X509Certificate extends Certificate { ...@@ -191,7 +191,7 @@ public abstract class X509Certificate extends Certificate {
* @param certData a byte array containing the DER-encoded * @param certData a byte array containing the DER-encoded
* certificate. * certificate.
* @return an X509Certificate object initialized with the data * @return an X509Certificate object initialized with the data
* from <code>certData</code>. * from {@code certData}.
* @exception CertificateException if a class initialization * @exception CertificateException if a class initialization
* or certificate parsing error occurs. * or certificate parsing error occurs.
*/ */
...@@ -281,16 +281,16 @@ public abstract class X509Certificate extends Certificate { ...@@ -281,16 +281,16 @@ public abstract class X509Certificate extends Certificate {
* @param date the Date to check against to see if this certificate * @param date the Date to check against to see if this certificate
* is valid at that date/time. * is valid at that date/time.
* @exception CertificateExpiredException if the certificate has expired * @exception CertificateExpiredException if the certificate has expired
* with respect to the <code>date</code> supplied. * with respect to the {@code date} supplied.
* @exception CertificateNotYetValidException if the certificate is not * @exception CertificateNotYetValidException if the certificate is not
* yet valid with respect to the <code>date</code> supplied. * yet valid with respect to the {@code date} supplied.
* @see #checkValidity() * @see #checkValidity()
*/ */
public abstract void checkValidity(Date date) public abstract void checkValidity(Date date)
throws CertificateExpiredException, CertificateNotYetValidException; throws CertificateExpiredException, CertificateNotYetValidException;
/** /**
* Gets the <code>version</code> (version number) value from the * Gets the {@code version} (version number) value from the
* certificate. The ASN.1 definition for this is: * certificate. The ASN.1 definition for this is:
* <pre> * <pre>
* version [0] EXPLICIT Version DEFAULT v1 * version [0] EXPLICIT Version DEFAULT v1
...@@ -303,7 +303,7 @@ public abstract class X509Certificate extends Certificate { ...@@ -303,7 +303,7 @@ public abstract class X509Certificate extends Certificate {
public abstract int getVersion(); public abstract int getVersion();
/** /**
* Gets the <code>serialNumber</code> value from the certificate. * Gets the {@code serialNumber} value from the certificate.
* The serial number is an integer assigned by the certification * The serial number is an integer assigned by the certification
* authority to each certificate. It must be unique for each * authority to each certificate. It must be unique for each
* certificate issued by a given CA (i.e., the issuer name and * certificate issued by a given CA (i.e., the issuer name and
...@@ -320,7 +320,7 @@ public abstract class X509Certificate extends Certificate { ...@@ -320,7 +320,7 @@ public abstract class X509Certificate extends Certificate {
public abstract BigInteger getSerialNumber(); public abstract BigInteger getSerialNumber();
/** /**
* Gets the <code>issuer</code> (issuer distinguished name) value from * Gets the {@code issuer} (issuer distinguished name) value from
* the certificate. The issuer name identifies the entity that signed (and * the certificate. The issuer name identifies the entity that signed (and
* issued) the certificate. * issued) the certificate.
* *
...@@ -341,27 +341,27 @@ public abstract class X509Certificate extends Certificate { ...@@ -341,27 +341,27 @@ public abstract class X509Certificate extends Certificate {
* AttributeType ::= OBJECT IDENTIFIER * AttributeType ::= OBJECT IDENTIFIER
* AttributeValue ::= ANY * AttributeValue ::= ANY
* </pre> * </pre>
* The <code>Name</code> describes a hierarchical name composed of * The {@code Name} describes a hierarchical name composed of
* attributes, such as country name, and corresponding values, such as US. * attributes, such as country name, and corresponding values, such as US.
* The type of the <code>AttributeValue</code> component is determined by * The type of the {@code AttributeValue} component is determined by
* the <code>AttributeType</code>; in general it will be a * the {@code AttributeType}; in general it will be a
* <code>directoryString</code>. A <code>directoryString</code> is usually * {@code directoryString}. A {@code directoryString} is usually
* one of <code>PrintableString</code>, * one of {@code PrintableString},
* <code>TeletexString</code> or <code>UniversalString</code>. * {@code TeletexString} or {@code UniversalString}.
* *
* @return a Principal whose name is the issuer distinguished name. * @return a Principal whose name is the issuer distinguished name.
*/ */
public abstract Principal getIssuerDN(); public abstract Principal getIssuerDN();
/** /**
* Gets the <code>subject</code> (subject distinguished name) value * Gets the {@code subject} (subject distinguished name) value
* from the certificate. * from the certificate.
* The ASN.1 definition for this is: * The ASN.1 definition for this is:
* <pre> * <pre>
* subject Name * subject Name
* </pre> * </pre>
* *
* <p>See {@link #getIssuerDN() getIssuerDN} for <code>Name</code> * <p>See {@link #getIssuerDN() getIssuerDN} for {@code Name}
* and other relevant definitions. * and other relevant definitions.
* *
* @return a Principal whose name is the subject name. * @return a Principal whose name is the subject name.
...@@ -370,7 +370,7 @@ public abstract class X509Certificate extends Certificate { ...@@ -370,7 +370,7 @@ public abstract class X509Certificate extends Certificate {
public abstract Principal getSubjectDN(); public abstract Principal getSubjectDN();
/** /**
* Gets the <code>notBefore</code> date from the validity period of * Gets the {@code notBefore} date from the validity period of
* the certificate. * the certificate.
* The relevant ASN.1 definitions are: * The relevant ASN.1 definitions are:
* <pre> * <pre>
...@@ -391,7 +391,7 @@ public abstract class X509Certificate extends Certificate { ...@@ -391,7 +391,7 @@ public abstract class X509Certificate extends Certificate {
public abstract Date getNotBefore(); public abstract Date getNotBefore();
/** /**
* Gets the <code>notAfter</code> date from the validity period of * Gets the {@code notAfter} date from the validity period of
* the certificate. See {@link #getNotBefore() getNotBefore} * the certificate. See {@link #getNotBefore() getNotBefore}
* for relevant ASN.1 definitions. * for relevant ASN.1 definitions.
* *
...@@ -415,7 +415,7 @@ public abstract class X509Certificate extends Certificate { ...@@ -415,7 +415,7 @@ public abstract class X509Certificate extends Certificate {
* -- algorithm object identifier value * -- algorithm object identifier value
* </pre> * </pre>
* *
* <p>The algorithm name is determined from the <code>algorithm</code> * <p>The algorithm name is determined from the {@code algorithm}
* OID string. * OID string.
* *
* @return the signature algorithm name. * @return the signature algorithm name.
......
此差异已折叠。
/* /*
* Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -45,7 +45,7 @@ package javax.security.sasl; ...@@ -45,7 +45,7 @@ package javax.security.sasl;
*/ */
public class AuthenticationException extends SaslException { public class AuthenticationException extends SaslException {
/** /**
* Constructs a new instance of <tt>AuthenticationException</tt>. * Constructs a new instance of {@code AuthenticationException}.
* The root exception and the detailed message are null. * The root exception and the detailed message are null.
*/ */
public AuthenticationException () { public AuthenticationException () {
...@@ -53,7 +53,7 @@ public class AuthenticationException extends SaslException { ...@@ -53,7 +53,7 @@ public class AuthenticationException extends SaslException {
} }
/** /**
* Constructs a new instance of <tt>AuthenticationException</tt> * Constructs a new instance of {@code AuthenticationException}
* with a detailed message. * with a detailed message.
* The root exception is null. * The root exception is null.
* @param detail A possibly null string containing details of the exception. * @param detail A possibly null string containing details of the exception.
...@@ -65,7 +65,7 @@ public class AuthenticationException extends SaslException { ...@@ -65,7 +65,7 @@ public class AuthenticationException extends SaslException {
} }
/** /**
* Constructs a new instance of <tt>AuthenticationException</tt> with a detailed message * Constructs a new instance of {@code AuthenticationException} with a detailed message
* and a root exception. * and a root exception.
* *
* @param detail A possibly null string containing details of the exception. * @param detail A possibly null string containing details of the exception.
......
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册