提交 fe6c9f2d 编写于 作者: J juh

8019360: Cleanup of the javadoc <code> tag in java.security.*

Summary: Convert to {@code ...} tags. convert package.html to package-info.java.
Reviewed-by: darcy
上级 09d88156
...@@ -36,10 +36,10 @@ import sun.security.util.SecurityConstants; ...@@ -36,10 +36,10 @@ import sun.security.util.SecurityConstants;
* based on the context it encapsulates. * based on the context it encapsulates.
* *
* <p>More specifically, it encapsulates a context and * <p>More specifically, it encapsulates a context and
* has a single method, <code>checkPermission</code>, * has a single method, {@code checkPermission},
* that is equivalent to the <code>checkPermission</code> method * that is equivalent to the {@code checkPermission} method
* in the AccessController class, with one difference: The AccessControlContext * in the AccessController class, with one difference: The AccessControlContext
* <code>checkPermission</code> method makes access decisions based on the * {@code checkPermission} method makes access decisions based on the
* context it encapsulates, * context it encapsulates,
* rather than that of the current execution thread. * rather than that of the current execution thread.
* *
...@@ -49,8 +49,8 @@ import sun.security.util.SecurityConstants; ...@@ -49,8 +49,8 @@ import sun.security.util.SecurityConstants;
* <i>different</i> context (for example, from within a worker thread). * <i>different</i> context (for example, from within a worker thread).
* *
* <p> An AccessControlContext is created by calling the * <p> An AccessControlContext is created by calling the
* <code>AccessController.getContext</code> method. * {@code AccessController.getContext} method.
* The <code>getContext</code> method takes a "snapshot" * The {@code getContext} method takes a "snapshot"
* of the current calling context, and places * of the current calling context, and places
* it in an AccessControlContext object, which it returns. A sample call is * it in an AccessControlContext object, which it returns. A sample call is
* the following: * the following:
...@@ -61,7 +61,7 @@ import sun.security.util.SecurityConstants; ...@@ -61,7 +61,7 @@ import sun.security.util.SecurityConstants;
* *
* <p> * <p>
* Code within a different context can subsequently call the * Code within a different context can subsequently call the
* <code>checkPermission</code> method on the * {@code checkPermission} method on the
* previously-saved AccessControlContext object. A sample call is the * previously-saved AccessControlContext object. A sample call is the
* following: * following:
* *
...@@ -121,7 +121,7 @@ public final class AccessControlContext { ...@@ -121,7 +121,7 @@ public final class AccessControlContext {
* @param context the ProtectionDomains associated with this context. * @param context the ProtectionDomains associated with this context.
* The non-duplicate domains are copied from the array. Subsequent * The non-duplicate domains are copied from the array. Subsequent
* changes to the array will not affect this AccessControlContext. * changes to the array will not affect this AccessControlContext.
* @throws NullPointerException if <code>context</code> is <code>null</code> * @throws NullPointerException if {@code context} is {@code null}
*/ */
public AccessControlContext(ProtectionDomain context[]) public AccessControlContext(ProtectionDomain context[])
{ {
...@@ -147,22 +147,22 @@ public final class AccessControlContext { ...@@ -147,22 +147,22 @@ public final class AccessControlContext {
} }
/** /**
* Create a new <code>AccessControlContext</code> with the given * Create a new {@code AccessControlContext} with the given
* <code>AccessControlContext</code> and <code>DomainCombiner</code>. * {@code AccessControlContext} and {@code DomainCombiner}.
* This constructor associates the provided * This constructor associates the provided
* <code>DomainCombiner</code> with the provided * {@code DomainCombiner} with the provided
* <code>AccessControlContext</code>. * {@code AccessControlContext}.
* *
* <p> * <p>
* *
* @param acc the <code>AccessControlContext</code> associated * @param acc the {@code AccessControlContext} associated
* with the provided <code>DomainCombiner</code>. * with the provided {@code DomainCombiner}.
* *
* @param combiner the <code>DomainCombiner</code> to be associated * @param combiner the {@code DomainCombiner} to be associated
* with the provided <code>AccessControlContext</code>. * with the provided {@code AccessControlContext}.
* *
* @exception NullPointerException if the provided * @exception NullPointerException if the provided
* <code>context</code> is <code>null</code>. * {@code context} is {@code null}.
* *
* @exception SecurityException if a security manager is installed and the * @exception SecurityException if a security manager is installed and the
* caller does not have the "createAccessControlContext" * caller does not have the "createAccessControlContext"
...@@ -320,13 +320,13 @@ public final class AccessControlContext { ...@@ -320,13 +320,13 @@ public final class AccessControlContext {
} }
/** /**
* Get the <code>DomainCombiner</code> associated with this * Get the {@code DomainCombiner} associated with this
* <code>AccessControlContext</code>. * {@code AccessControlContext}.
* *
* <p> * <p>
* *
* @return the <code>DomainCombiner</code> associated with this * @return the {@code DomainCombiner} associated with this
* <code>AccessControlContext</code>, or <code>null</code> * {@code AccessControlContext}, or {@code null}
* if there is none. * if there is none.
* *
* @exception SecurityException if a security manager is installed and * @exception SecurityException if a security manager is installed and
......
/* /*
* Copyright (c) 1997, 2003, 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
...@@ -48,7 +48,7 @@ public class AccessControlException extends SecurityException { ...@@ -48,7 +48,7 @@ public class AccessControlException extends SecurityException {
private Permission perm; private Permission perm;
/** /**
* Constructs an <code>AccessControlException</code> with the * Constructs an {@code AccessControlException} with the
* specified, detailed message. * specified, detailed message.
* *
* @param s the detail message. * @param s the detail message.
...@@ -58,7 +58,7 @@ public class AccessControlException extends SecurityException { ...@@ -58,7 +58,7 @@ public class AccessControlException extends SecurityException {
} }
/** /**
* Constructs an <code>AccessControlException</code> with the * Constructs an {@code AccessControlException} with the
* specified, detailed message, and the requested permission that caused * specified, detailed message, and the requested permission that caused
* the exception. * the exception.
* *
......
...@@ -49,7 +49,7 @@ import sun.reflect.Reflection; ...@@ -49,7 +49,7 @@ import sun.reflect.Reflection;
* <p> The {@link #checkPermission(Permission) checkPermission} method * <p> The {@link #checkPermission(Permission) checkPermission} method
* determines whether the access request indicated by a specified * determines whether the access request indicated by a specified
* permission should be granted or denied. A sample call appears * permission should be granted or denied. A sample call appears
* below. In this example, <code>checkPermission</code> will determine * below. In this example, {@code checkPermission} will determine
* whether or not to grant "read" access to the file named "testFile" in * whether or not to grant "read" access to the file named "testFile" in
* the "/temp" directory. * the "/temp" directory.
* *
...@@ -61,7 +61,7 @@ import sun.reflect.Reflection; ...@@ -61,7 +61,7 @@ import sun.reflect.Reflection;
* </pre> * </pre>
* *
* <p> If a requested access is allowed, * <p> If a requested access is allowed,
* <code>checkPermission</code> returns quietly. If denied, an * {@code checkPermission} returns quietly. If denied, an
* AccessControlException is * AccessControlException is
* thrown. AccessControlException can also be thrown if the requested * thrown. AccessControlException can also be thrown if the requested
* permission is of an incorrect type or contains an invalid value. * permission is of an incorrect type or contains an invalid value.
...@@ -69,8 +69,8 @@ import sun.reflect.Reflection; ...@@ -69,8 +69,8 @@ import sun.reflect.Reflection;
* *
* Suppose the current thread traversed m callers, in the order of caller 1 * Suppose the current thread traversed m callers, in the order of caller 1
* to caller 2 to caller m. Then caller m invoked the * to caller 2 to caller m. Then caller m invoked the
* <code>checkPermission</code> method. * {@code checkPermission} method.
* The <code>checkPermission </code>method determines whether access * The {@code checkPermission} method determines whether access
* is granted or denied based on the following algorithm: * is granted or denied based on the following algorithm:
* *
* <pre> {@code * <pre> {@code
...@@ -102,20 +102,20 @@ import sun.reflect.Reflection; ...@@ -102,20 +102,20 @@ import sun.reflect.Reflection;
* *
* <p> A caller can be marked as being "privileged" * <p> A caller can be marked as being "privileged"
* (see {@link #doPrivileged(PrivilegedAction) doPrivileged} and below). * (see {@link #doPrivileged(PrivilegedAction) doPrivileged} and below).
* When making access control decisions, the <code>checkPermission</code> * When making access control decisions, the {@code checkPermission}
* method stops checking if it reaches a caller that * method stops checking if it reaches a caller that
* was marked as "privileged" via a <code>doPrivileged</code> * was marked as "privileged" via a {@code doPrivileged}
* call without a context argument (see below for information about a * call without a context argument (see below for information about a
* context argument). If that caller's domain has the * context argument). If that caller's domain has the
* specified permission and at least one limiting permission argument (if any) * specified permission and at least one limiting permission argument (if any)
* implies the requested permission, no further checking is done and * implies the requested permission, no further checking is done and
* <code>checkPermission</code> * {@code checkPermission}
* returns quietly, indicating that the requested access is allowed. * returns quietly, indicating that the requested access is allowed.
* If that domain does not have the specified permission, an exception * If that domain does not have the specified permission, an exception
* is thrown, as usual. If the caller's domain had the specified permission * is thrown, as usual. If the caller's domain had the specified permission
* but it was not implied by any limiting permission arguments given in the call * but it was not implied by any limiting permission arguments given in the call
* to <code>doPrivileged</code> then the permission checking continues * to {@code doPrivileged} then the permission checking continues
* until there are no more callers or another <code>doPrivileged</code> * until there are no more callers or another {@code doPrivileged}
* call matches the requested permission and returns normally. * call matches the requested permission and returns normally.
* *
* <p> The normal use of the "privileged" feature is as follows. If you * <p> The normal use of the "privileged" feature is as follows. If you
...@@ -137,17 +137,17 @@ import sun.reflect.Reflection; ...@@ -137,17 +137,17 @@ import sun.reflect.Reflection;
* *
* <p> * <p>
* PrivilegedAction is an interface with a single method, named * PrivilegedAction is an interface with a single method, named
* <code>run</code>. * {@code run}.
* The above example shows creation of an implementation * The above example shows creation of an implementation
* of that interface; a concrete implementation of the * of that interface; a concrete implementation of the
* <code>run</code> method is supplied. * {@code run} method is supplied.
* When the call to <code>doPrivileged</code> is made, an * When the call to {@code doPrivileged} is made, an
* instance of the PrivilegedAction implementation is passed * instance of the PrivilegedAction implementation is passed
* to it. The <code>doPrivileged</code> method calls the * to it. The {@code doPrivileged} method calls the
* <code>run</code> method from the PrivilegedAction * {@code run} method from the PrivilegedAction
* implementation after enabling privileges, and returns the * implementation after enabling privileges, and returns the
* <code>run</code> method's return value as the * {@code run} method's return value as the
* <code>doPrivileged</code> return value (which is * {@code doPrivileged} return value (which is
* ignored in this example). * ignored in this example).
* *
* <p> If you need to return a value, you can do something like the following: * <p> If you need to return a value, you can do something like the following:
...@@ -164,11 +164,11 @@ import sun.reflect.Reflection; ...@@ -164,11 +164,11 @@ import sun.reflect.Reflection;
* ...normal code here... * ...normal code here...
* }}</pre> * }}</pre>
* *
* <p>If the action performed in your <code>run</code> method could * <p>If the action performed in your {@code run} method could
* throw a "checked" exception (those listed in the <code>throws</code> clause * throw a "checked" exception (those listed in the {@code throws} clause
* of a method), then you need to use the * of a method), then you need to use the
* <code>PrivilegedExceptionAction</code> interface instead of the * {@code PrivilegedExceptionAction} interface instead of the
* <code>PrivilegedAction</code> interface: * {@code PrivilegedAction} interface:
* *
* <pre> {@code * <pre> {@code
* somemethod() throws FileNotFoundException { * somemethod() throws FileNotFoundException {
...@@ -191,18 +191,18 @@ import sun.reflect.Reflection; ...@@ -191,18 +191,18 @@ import sun.reflect.Reflection;
* *
* <p> Be *very* careful in your use of the "privileged" construct, and * <p> Be *very* careful in your use of the "privileged" construct, and
* always remember to make the privileged code section as small as possible. * always remember to make the privileged code section as small as possible.
* You can pass <code>Permission</code> arguments to further limit the * You can pass {@code Permission} arguments to further limit the
* scope of the "privilege" (see below). * scope of the "privilege" (see below).
* *
* *
* <p> Note that <code>checkPermission</code> always performs security checks * <p> Note that {@code checkPermission} always performs security checks
* within the context of the currently executing thread. * within the context of the currently executing thread.
* Sometimes a security check that should be made within a given context * Sometimes a security check that should be made within a given context
* will actually need to be done from within a * will actually need to be done from within a
* <i>different</i> context (for example, from within a worker thread). * <i>different</i> context (for example, from within a worker thread).
* The {@link #getContext() getContext} method and * The {@link #getContext() getContext} method and
* AccessControlContext class are provided * AccessControlContext class are provided
* for this situation. The <code>getContext</code> method takes a "snapshot" * for this situation. The {@code getContext} method takes a "snapshot"
* of the current calling context, and places * of the current calling context, and places
* it in an AccessControlContext object, which it returns. A sample call is * it in an AccessControlContext object, which it returns. A sample call is
* the following: * the following:
...@@ -214,7 +214,7 @@ import sun.reflect.Reflection; ...@@ -214,7 +214,7 @@ import sun.reflect.Reflection;
* </pre> * </pre>
* *
* <p> * <p>
* AccessControlContext itself has a <code>checkPermission</code> method * AccessControlContext itself has a {@code checkPermission} method
* that makes access decisions based on the context <i>it</i> encapsulates, * that makes access decisions based on the context <i>it</i> encapsulates,
* rather than that of the current execution thread. * rather than that of the current execution thread.
* Code within a different context can thus call that method on the * Code within a different context can thus call that method on the
...@@ -230,7 +230,7 @@ import sun.reflect.Reflection; ...@@ -230,7 +230,7 @@ import sun.reflect.Reflection;
* <p> There are also times where you don't know a priori which permissions * <p> There are also times where you don't know a priori which permissions
* to check the context against. In these cases you can use the * to check the context against. In these cases you can use the
* doPrivileged method that takes a context. You can also limit the scope * doPrivileged method that takes a context. You can also limit the scope
* of the privileged code by passing additional <code>Permission</code> * of the privileged code by passing additional {@code Permission}
* parameters. * parameters.
* *
* <pre> {@code * <pre> {@code
...@@ -248,12 +248,12 @@ import sun.reflect.Reflection; ...@@ -248,12 +248,12 @@ import sun.reflect.Reflection;
* }, acc, new FilePermission("/temp/*", read)); * }, acc, new FilePermission("/temp/*", read));
* ...normal code here... * ...normal code here...
* }}</pre> * }}</pre>
* <p> Passing a limiting <code>Permission</code> argument of an instance of * <p> Passing a limiting {@code Permission} argument of an instance of
* <code>AllPermission</code> is equivalent to calling the equivalent * {@code AllPermission} is equivalent to calling the equivalent
* <code>doPrivileged</code> method without limiting <code>Permission</code> * {@code doPrivileged} method without limiting {@code Permission}
* arguments. Passing a zero length array of <code>Permission</code> disables * arguments. Passing a zero length array of {@code Permission} disables
* the code privileges so that checking always continues beyond the caller of * the code privileges so that checking always continues beyond the caller of
* that <code>doPrivileged</code> method. * that {@code doPrivileged} method.
* *
* @see AccessControlContext * @see AccessControlContext
* *
...@@ -269,11 +269,11 @@ public final class AccessController { ...@@ -269,11 +269,11 @@ public final class AccessController {
private AccessController() { } private AccessController() { }
/** /**
* Performs the specified <code>PrivilegedAction</code> with privileges * Performs the specified {@code PrivilegedAction} with privileges
* enabled. The action is performed with <i>all</i> of the permissions * enabled. The action is performed with <i>all</i> of the permissions
* possessed by the caller's protection domain. * possessed by the caller's protection domain.
* *
* <p> If the action's <code>run</code> method throws an (unchecked) * <p> If the action's {@code run} method throws an (unchecked)
* exception, it will propagate through this method. * exception, it will propagate through this method.
* *
* <p> Note that any DomainCombiner associated with the current * <p> Note that any DomainCombiner associated with the current
...@@ -281,9 +281,9 @@ public final class AccessController { ...@@ -281,9 +281,9 @@ public final class AccessController {
* *
* @param action the action to be performed. * @param action the action to be performed.
* *
* @return the value returned by the action's <code>run</code> method. * @return the value returned by the action's {@code run} method.
* *
* @exception NullPointerException if the action is <code>null</code> * @exception NullPointerException if the action is {@code null}
* *
* @see #doPrivileged(PrivilegedAction,AccessControlContext) * @see #doPrivileged(PrivilegedAction,AccessControlContext)
* @see #doPrivileged(PrivilegedExceptionAction) * @see #doPrivileged(PrivilegedExceptionAction)
...@@ -295,11 +295,11 @@ public final class AccessController { ...@@ -295,11 +295,11 @@ public final class AccessController {
public static native <T> T doPrivileged(PrivilegedAction<T> action); public static native <T> T doPrivileged(PrivilegedAction<T> action);
/** /**
* Performs the specified <code>PrivilegedAction</code> with privileges * Performs the specified {@code PrivilegedAction} with privileges
* enabled. The action is performed with <i>all</i> of the permissions * enabled. The action is performed with <i>all</i> of the permissions
* possessed by the caller's protection domain. * possessed by the caller's protection domain.
* *
* <p> If the action's <code>run</code> method throws an (unchecked) * <p> If the action's {@code run} method throws an (unchecked)
* exception, it will propagate through this method. * exception, it will propagate through this method.
* *
* <p> This method preserves the current AccessControlContext's * <p> This method preserves the current AccessControlContext's
...@@ -307,9 +307,9 @@ public final class AccessController { ...@@ -307,9 +307,9 @@ public final class AccessController {
* *
* @param action the action to be performed. * @param action the action to be performed.
* *
* @return the value returned by the action's <code>run</code> method. * @return the value returned by the action's {@code run} method.
* *
* @exception NullPointerException if the action is <code>null</code> * @exception NullPointerException if the action is {@code null}
* *
* @see #doPrivileged(PrivilegedAction) * @see #doPrivileged(PrivilegedAction)
* @see java.security.DomainCombiner * @see java.security.DomainCombiner
...@@ -364,17 +364,17 @@ public final class AccessController { ...@@ -364,17 +364,17 @@ public final class AccessController {
/** /**
* Performs the specified <code>PrivilegedAction</code> with privileges * Performs the specified {@code PrivilegedAction} with privileges
* enabled and restricted by the specified * enabled and restricted by the specified
* <code>AccessControlContext</code> and with a privilege scope limited * {@code AccessControlContext} and with a privilege scope limited
* by specified <code>Permission</code> arguments. * by specified {@code Permission} arguments.
* *
* The action is performed with the intersection of the permissions * The action is performed with the intersection of the permissions
* possessed by the caller's protection domain, and those possessed * possessed by the caller's protection domain, and those possessed
* by the domains represented by the specified * by the domains represented by the specified
* <code>AccessControlContext</code>. * {@code AccessControlContext}.
* <p> * <p>
* If the action's <code>run</code> method throws an (unchecked) exception, * If the action's {@code run} method throws an (unchecked) exception,
* it will propagate through this method. * it will propagate through this method.
* *
* @param action the action to be performed. * @param action the action to be performed.
...@@ -382,16 +382,16 @@ public final class AccessController { ...@@ -382,16 +382,16 @@ public final class AccessController {
* representing the restriction to be applied to the * representing the restriction to be applied to the
* caller's domain's privileges before performing * caller's domain's privileges before performing
* the specified action. If the context is * the specified action. If the context is
* <code>null</code>, * {@code null},
* then no additional restriction is applied. * then no additional restriction is applied.
* @param perms the <code>Permission</code> arguments which limit the * @param perms the {@code Permission} arguments which limit the
* scope of the caller's privileges. The number of arguments * scope of the caller's privileges. The number of arguments
* is variable. * is variable.
* *
* @return the value returned by the action's <code>run</code> method. * @return the value returned by the action's {@code run} method.
* *
* @throws NullPointerException if action or perms or any element of * @throws NullPointerException if action or perms or any element of
* perms is <code>null</code> * perms is {@code null}
* *
* @see #doPrivileged(PrivilegedAction) * @see #doPrivileged(PrivilegedAction)
* @see #doPrivileged(PrivilegedExceptionAction,AccessControlContext) * @see #doPrivileged(PrivilegedExceptionAction,AccessControlContext)
...@@ -413,17 +413,17 @@ public final class AccessController { ...@@ -413,17 +413,17 @@ public final class AccessController {
/** /**
* Performs the specified <code>PrivilegedAction</code> with privileges * Performs the specified {@code PrivilegedAction} with privileges
* enabled and restricted by the specified * enabled and restricted by the specified
* <code>AccessControlContext</code> and with a privilege scope limited * {@code AccessControlContext} and with a privilege scope limited
* by specified <code>Permission</code> arguments. * by specified {@code Permission} arguments.
* *
* The action is performed with the intersection of the permissions * The action is performed with the intersection of the permissions
* possessed by the caller's protection domain, and those possessed * possessed by the caller's protection domain, and those possessed
* by the domains represented by the specified * by the domains represented by the specified
* <code>AccessControlContext</code>. * {@code AccessControlContext}.
* <p> * <p>
* If the action's <code>run</code> method throws an (unchecked) exception, * If the action's {@code run} method throws an (unchecked) exception,
* it will propagate through this method. * it will propagate through this method.
* *
* <p> This method preserves the current AccessControlContext's * <p> This method preserves the current AccessControlContext's
...@@ -434,16 +434,16 @@ public final class AccessController { ...@@ -434,16 +434,16 @@ public final class AccessController {
* representing the restriction to be applied to the * representing the restriction to be applied to the
* caller's domain's privileges before performing * caller's domain's privileges before performing
* the specified action. If the context is * the specified action. If the context is
* <code>null</code>, * {@code null},
* then no additional restriction is applied. * then no additional restriction is applied.
* @param perms the <code>Permission</code> arguments which limit the * @param perms the {@code Permission} arguments which limit the
* scope of the caller's privileges. The number of arguments * scope of the caller's privileges. The number of arguments
* is variable. * is variable.
* *
* @return the value returned by the action's <code>run</code> method. * @return the value returned by the action's {@code run} method.
* *
* @throws NullPointerException if action or perms or any element of * @throws NullPointerException if action or perms or any element of
* perms is <code>null</code> * perms is {@code null}
* *
* @see #doPrivileged(PrivilegedAction) * @see #doPrivileged(PrivilegedAction)
* @see #doPrivileged(PrivilegedExceptionAction,AccessControlContext) * @see #doPrivileged(PrivilegedExceptionAction,AccessControlContext)
...@@ -469,11 +469,11 @@ public final class AccessController { ...@@ -469,11 +469,11 @@ public final class AccessController {
} }
/** /**
* Performs the specified <code>PrivilegedExceptionAction</code> with * Performs the specified {@code PrivilegedExceptionAction} with
* privileges enabled. The action is performed with <i>all</i> of the * privileges enabled. The action is performed with <i>all</i> of the
* permissions possessed by the caller's protection domain. * permissions possessed by the caller's protection domain.
* *
* <p> If the action's <code>run</code> method throws an <i>unchecked</i> * <p> If the action's {@code run} method throws an <i>unchecked</i>
* exception, it will propagate through this method. * exception, it will propagate through this method.
* *
* <p> Note that any DomainCombiner associated with the current * <p> Note that any DomainCombiner associated with the current
...@@ -481,11 +481,11 @@ public final class AccessController { ...@@ -481,11 +481,11 @@ public final class AccessController {
* *
* @param action the action to be performed * @param action the action to be performed
* *
* @return the value returned by the action's <code>run</code> method * @return the value returned by the action's {@code run} method
* *
* @exception PrivilegedActionException if the specified action's * @exception PrivilegedActionException if the specified action's
* <code>run</code> method threw a <i>checked</i> exception * {@code run} method threw a <i>checked</i> exception
* @exception NullPointerException if the action is <code>null</code> * @exception NullPointerException if the action is {@code null}
* *
* @see #doPrivileged(PrivilegedAction) * @see #doPrivileged(PrivilegedAction)
* @see #doPrivileged(PrivilegedExceptionAction,AccessControlContext) * @see #doPrivileged(PrivilegedExceptionAction,AccessControlContext)
...@@ -499,11 +499,11 @@ public final class AccessController { ...@@ -499,11 +499,11 @@ public final class AccessController {
/** /**
* Performs the specified <code>PrivilegedExceptionAction</code> with * Performs the specified {@code PrivilegedExceptionAction} with
* privileges enabled. The action is performed with <i>all</i> of the * privileges enabled. The action is performed with <i>all</i> of the
* permissions possessed by the caller's protection domain. * permissions possessed by the caller's protection domain.
* *
* <p> If the action's <code>run</code> method throws an <i>unchecked</i> * <p> If the action's {@code run} method throws an <i>unchecked</i>
* exception, it will propagate through this method. * exception, it will propagate through this method.
* *
* <p> This method preserves the current AccessControlContext's * <p> This method preserves the current AccessControlContext's
...@@ -511,11 +511,11 @@ public final class AccessController { ...@@ -511,11 +511,11 @@ public final class AccessController {
* *
* @param action the action to be performed. * @param action the action to be performed.
* *
* @return the value returned by the action's <code>run</code> method * @return the value returned by the action's {@code run} method
* *
* @exception PrivilegedActionException if the specified action's * @exception PrivilegedActionException if the specified action's
* <code>run</code> method threw a <i>checked</i> exception * {@code run} method threw a <i>checked</i> exception
* @exception NullPointerException if the action is <code>null</code> * @exception NullPointerException if the action is {@code null}
* *
* @see #doPrivileged(PrivilegedAction) * @see #doPrivileged(PrivilegedAction)
* @see #doPrivileged(PrivilegedExceptionAction,AccessControlContext) * @see #doPrivileged(PrivilegedExceptionAction,AccessControlContext)
...@@ -609,17 +609,17 @@ public final class AccessController { ...@@ -609,17 +609,17 @@ public final class AccessController {
/** /**
* Performs the specified <code>PrivilegedExceptionAction</code> with * Performs the specified {@code PrivilegedExceptionAction} with
* privileges enabled and restricted by the specified * privileges enabled and restricted by the specified
* <code>AccessControlContext</code> and with a privilege scope limited by * {@code AccessControlContext} and with a privilege scope limited by
* specified <code>Permission</code> arguments. * specified {@code Permission} arguments.
* *
* The action is performed with the intersection of the permissions * The action is performed with the intersection of the permissions
* possessed by the caller's protection domain, and those possessed * possessed by the caller's protection domain, and those possessed
* by the domains represented by the specified * by the domains represented by the specified
* <code>AccessControlContext</code>. * {@code AccessControlContext}.
* <p> * <p>
* If the action's <code>run</code> method throws an (unchecked) exception, * If the action's {@code run} method throws an (unchecked) exception,
* it will propagate through this method. * it will propagate through this method.
* *
* @param action the action to be performed. * @param action the action to be performed.
...@@ -627,18 +627,18 @@ public final class AccessController { ...@@ -627,18 +627,18 @@ public final class AccessController {
* representing the restriction to be applied to the * representing the restriction to be applied to the
* caller's domain's privileges before performing * caller's domain's privileges before performing
* the specified action. If the context is * the specified action. If the context is
* <code>null</code>, * {@code null},
* then no additional restriction is applied. * then no additional restriction is applied.
* @param perms the <code>Permission</code> arguments which limit the * @param perms the {@code Permission} arguments which limit the
* scope of the caller's privileges. The number of arguments * scope of the caller's privileges. The number of arguments
* is variable. * is variable.
* *
* @return the value returned by the action's <code>run</code> method. * @return the value returned by the action's {@code run} method.
* *
* @throws PrivilegedActionException if the specified action's * @throws PrivilegedActionException if the specified action's
* <code>run</code> method threw a <i>checked</i> exception * {@code run} method threw a <i>checked</i> exception
* @throws NullPointerException if action or perms or any element of * @throws NullPointerException if action or perms or any element of
* perms is <code>null</code> * perms is {@code null}
* *
* @see #doPrivileged(PrivilegedAction) * @see #doPrivileged(PrivilegedAction)
* @see #doPrivileged(PrivilegedAction,AccessControlContext) * @see #doPrivileged(PrivilegedAction,AccessControlContext)
...@@ -660,17 +660,17 @@ public final class AccessController { ...@@ -660,17 +660,17 @@ public final class AccessController {
/** /**
* Performs the specified <code>PrivilegedExceptionAction</code> with * Performs the specified {@code PrivilegedExceptionAction} with
* privileges enabled and restricted by the specified * privileges enabled and restricted by the specified
* <code>AccessControlContext</code> and with a privilege scope limited by * {@code AccessControlContext} and with a privilege scope limited by
* specified <code>Permission</code> arguments. * specified {@code Permission} arguments.
* *
* The action is performed with the intersection of the permissions * The action is performed with the intersection of the permissions
* possessed by the caller's protection domain, and those possessed * possessed by the caller's protection domain, and those possessed
* by the domains represented by the specified * by the domains represented by the specified
* <code>AccessControlContext</code>. * {@code AccessControlContext}.
* <p> * <p>
* If the action's <code>run</code> method throws an (unchecked) exception, * If the action's {@code run} method throws an (unchecked) exception,
* it will propagate through this method. * it will propagate through this method.
* *
* <p> This method preserves the current AccessControlContext's * <p> This method preserves the current AccessControlContext's
...@@ -681,18 +681,18 @@ public final class AccessController { ...@@ -681,18 +681,18 @@ public final class AccessController {
* representing the restriction to be applied to the * representing the restriction to be applied to the
* caller's domain's privileges before performing * caller's domain's privileges before performing
* the specified action. If the context is * the specified action. If the context is
* <code>null</code>, * {@code null},
* then no additional restriction is applied. * then no additional restriction is applied.
* @param perms the <code>Permission</code> arguments which limit the * @param perms the {@code Permission} arguments which limit the
* scope of the caller's privileges. The number of arguments * scope of the caller's privileges. The number of arguments
* is variable. * is variable.
* *
* @return the value returned by the action's <code>run</code> method. * @return the value returned by the action's {@code run} method.
* *
* @throws PrivilegedActionException if the specified action's * @throws PrivilegedActionException if the specified action's
* <code>run</code> method threw a <i>checked</i> exception * {@code run} method threw a <i>checked</i> exception
* @throws NullPointerException if action or perms or any element of * @throws NullPointerException if action or perms or any element of
* perms is <code>null</code> * perms is {@code null}
* *
* @see #doPrivileged(PrivilegedAction) * @see #doPrivileged(PrivilegedAction)
* @see #doPrivileged(PrivilegedAction,AccessControlContext) * @see #doPrivileged(PrivilegedAction,AccessControlContext)
...@@ -770,14 +770,14 @@ public final class AccessController { ...@@ -770,14 +770,14 @@ public final class AccessController {
* This method quietly returns if the access request * This method quietly returns if the access request
* is permitted, or throws an AccessControlException otherwise. The * is permitted, or throws an AccessControlException otherwise. The
* getPermission method of the AccessControlException returns the * getPermission method of the AccessControlException returns the
* <code>perm</code> Permission object instance. * {@code perm} Permission object instance.
* *
* @param perm the requested permission. * @param perm the requested permission.
* *
* @exception AccessControlException if the specified permission * @exception AccessControlException if the specified permission
* is not permitted, based on the current security policy. * is not permitted, based on the current security policy.
* @exception NullPointerException if the specified permission * @exception NullPointerException if the specified permission
* is <code>null</code> and is checked based on the * is {@code null} and is checked based on the
* security policy currently in effect. * security policy currently in effect.
*/ */
......
/* /*
* 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,10 +28,10 @@ package java.security; ...@@ -28,10 +28,10 @@ package java.security;
import java.security.spec.AlgorithmParameterSpec; import java.security.spec.AlgorithmParameterSpec;
/** /**
* The <code>AlgorithmParameterGenerator</code> class is used to generate a * The {@code AlgorithmParameterGenerator} class is used to generate a
* set of * set of
* parameters to be used with a certain algorithm. Parameter generators * parameters to be used with a certain algorithm. Parameter generators
* are constructed using the <code>getInstance</code> factory methods * are constructed using the {@code getInstance} factory methods
* (static methods that return instances of a given class). * (static methods that return instances of a given class).
* *
* <P>The object that will generate the parameters can be initialized * <P>The object that will generate the parameters can be initialized
...@@ -61,17 +61,17 @@ import java.security.spec.AlgorithmParameterSpec; ...@@ -61,17 +61,17 @@ import java.security.spec.AlgorithmParameterSpec;
* *
* <P>In case the client does not explicitly initialize the * <P>In case the client does not explicitly initialize the
* AlgorithmParameterGenerator * AlgorithmParameterGenerator
* (via a call to an <code>init</code> method), each provider must supply (and * (via a call to an {@code init} method), each provider must supply (and
* document) a default initialization. For example, the Sun provider uses a * document) a default initialization. For example, the Sun provider uses a
* default modulus prime size of 1024 bits for the generation of DSA * default modulus prime size of 1024 bits for the generation of DSA
* parameters. * parameters.
* *
* <p> Every implementation of the Java platform is required to support the * <p> Every implementation of the Java platform is required to support the
* following standard <code>AlgorithmParameterGenerator</code> algorithms and * following standard {@code AlgorithmParameterGenerator} algorithms and
* keysizes in parentheses: * keysizes in parentheses:
* <ul> * <ul>
* <li><tt>DiffieHellman</tt> (1024)</li> * <li>{@code DiffieHellman} (1024)</li>
* <li><tt>DSA</tt> (1024)</li> * <li>{@code DSA} (1024)</li>
* </ul> * </ul>
* These algorithms are described in the <a href= * These algorithms are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#AlgorithmParameterGenerator"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#AlgorithmParameterGenerator">
...@@ -272,11 +272,11 @@ public class AlgorithmParameterGenerator { ...@@ -272,11 +272,11 @@ public class AlgorithmParameterGenerator {
/** /**
* Initializes this parameter generator for a certain size. * Initializes this parameter generator for a certain size.
* To create the parameters, the <code>SecureRandom</code> * To create the parameters, the {@code SecureRandom}
* implementation of the highest-priority installed provider is used as * implementation of the highest-priority installed provider is used as
* the source of randomness. * the source of randomness.
* (If none of the installed providers supply an implementation of * (If none of the installed providers supply an implementation of
* <code>SecureRandom</code>, a system-provided source of randomness is * {@code SecureRandom}, a system-provided source of randomness is
* used.) * used.)
* *
* @param size the size (number of bits). * @param size the size (number of bits).
...@@ -299,11 +299,11 @@ public class AlgorithmParameterGenerator { ...@@ -299,11 +299,11 @@ public class AlgorithmParameterGenerator {
/** /**
* Initializes this parameter generator with a set of algorithm-specific * Initializes this parameter generator with a set of algorithm-specific
* parameter generation values. * parameter generation values.
* To generate the parameters, the <code>SecureRandom</code> * To generate the parameters, the {@code SecureRandom}
* implementation of the highest-priority installed provider is used as * implementation of the highest-priority installed provider is used as
* the source of randomness. * the source of randomness.
* (If none of the installed providers supply an implementation of * (If none of the installed providers supply an implementation of
* <code>SecureRandom</code>, a system-provided source of randomness is * {@code SecureRandom}, a system-provided source of randomness is
* used.) * used.)
* *
* @param genParamSpec the set of algorithm-specific parameter generation values. * @param genParamSpec the set of algorithm-specific parameter generation values.
......
/* /*
* Copyright (c) 1997, 1999, 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
...@@ -29,7 +29,7 @@ import java.security.spec.AlgorithmParameterSpec; ...@@ -29,7 +29,7 @@ import java.security.spec.AlgorithmParameterSpec;
/** /**
* 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>AlgorithmParameterGenerator</code> class, which * for the {@code AlgorithmParameterGenerator} class, which
* is used to generate a set of parameters to be used with a certain algorithm. * is used to generate a set of parameters to be used with a certain algorithm.
* *
* <p> All the abstract methods in this class must be implemented by each * <p> All the abstract methods in this class must be implemented by each
...@@ -37,7 +37,7 @@ import java.security.spec.AlgorithmParameterSpec; ...@@ -37,7 +37,7 @@ import java.security.spec.AlgorithmParameterSpec;
* of a parameter generator for a particular algorithm. * of a parameter generator for a particular algorithm.
* *
* <p> In case the client does not explicitly initialize the * <p> In case the client does not explicitly initialize the
* AlgorithmParameterGenerator (via a call to an <code>engineInit</code> * AlgorithmParameterGenerator (via a call to an {@code engineInit}
* method), each provider must supply (and document) a default initialization. * method), each provider must supply (and document) a default initialization.
* For example, the Sun provider uses a default modulus prime size of 1024 * For example, the Sun provider uses a default modulus prime size of 1024
* bits for the generation of DSA parameters. * bits for the generation of DSA parameters.
......
/* /*
* 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
...@@ -32,28 +32,28 @@ import java.security.spec.InvalidParameterSpecException; ...@@ -32,28 +32,28 @@ import java.security.spec.InvalidParameterSpecException;
/** /**
* This class is used as an opaque representation of cryptographic parameters. * This class is used as an opaque representation of cryptographic parameters.
* *
* <p>An <code>AlgorithmParameters</code> object for managing the parameters * <p>An {@code AlgorithmParameters} object for managing the parameters
* for a particular algorithm can be obtained by * for a particular algorithm can be obtained by
* calling one of the <code>getInstance</code> factory methods * calling one of the {@code getInstance} factory methods
* (static methods that return instances of a given class). * (static methods that return instances of a given class).
* *
* <p>Once an <code>AlgorithmParameters</code> object is obtained, it must be * <p>Once an {@code AlgorithmParameters} object is obtained, it must be
* initialized via a call to <code>init</code>, using an appropriate parameter * initialized via a call to {@code init}, using an appropriate parameter
* specification or parameter encoding. * specification or parameter encoding.
* *
* <p>A transparent parameter specification is obtained from an * <p>A transparent parameter specification is obtained from an
* <code>AlgorithmParameters</code> object via a call to * {@code AlgorithmParameters} object via a call to
* <code>getParameterSpec</code>, and a byte encoding of the parameters is * {@code getParameterSpec}, and a byte encoding of the parameters is
* obtained via a call to <code>getEncoded</code>. * obtained via a call to {@code getEncoded}.
* *
* <p> Every implementation of the Java platform is required to support the * <p> Every implementation of the Java platform is required to support the
* following standard <code>AlgorithmParameters</code> algorithms: * following standard {@code AlgorithmParameters} algorithms:
* <ul> * <ul>
* <li><tt>AES</tt></li> * <li>{@code AES}</li>
* <li><tt>DES</tt></li> * <li>{@code DES}</li>
* <li><tt>DESede</tt></li> * <li>{@code DESede}</li>
* <li><tt>DiffieHellman</tt></li> * <li>{@code DiffieHellman}</li>
* <li><tt>DSA</tt></li> * <li>{@code DSA}</li>
* </ul> * </ul>
* These algorithms are described in the <a href= * These algorithms are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#AlgorithmParameters"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#AlgorithmParameters">
...@@ -123,7 +123,7 @@ public class AlgorithmParameters { ...@@ -123,7 +123,7 @@ public class AlgorithmParameters {
* the {@link Security#getProviders() Security.getProviders()} method. * the {@link Security#getProviders() Security.getProviders()} method.
* *
* <p> The returned parameter object must be initialized via a call to * <p> The returned parameter object must be initialized via a call to
* <code>init</code>, using an appropriate parameter specification or * {@code init}, using an appropriate parameter specification or
* parameter encoding. * parameter encoding.
* *
* @param algorithm the name of the algorithm requested. * @param algorithm the name of the algorithm requested.
...@@ -165,7 +165,7 @@ public class AlgorithmParameters { ...@@ -165,7 +165,7 @@ public class AlgorithmParameters {
* the {@link Security#getProviders() Security.getProviders()} method. * the {@link Security#getProviders() Security.getProviders()} method.
* *
* <p>The returned parameter object must be initialized via a call to * <p>The returned parameter object must be initialized via a call to
* <code>init</code>, using an appropriate parameter specification or * {@code init}, using an appropriate parameter specification or
* parameter encoding. * parameter encoding.
* *
* @param algorithm the name of the algorithm requested. * @param algorithm the name of the algorithm requested.
...@@ -212,7 +212,7 @@ public class AlgorithmParameters { ...@@ -212,7 +212,7 @@ public class AlgorithmParameters {
* does not have to be registered in the provider list. * does not have to be registered in the provider list.
* *
* <p>The returned parameter object must be initialized via a call to * <p>The returned parameter object must be initialized via a call to
* <code>init</code>, using an appropriate parameter specification or * {@code init}, using an appropriate parameter specification or
* parameter encoding. * parameter encoding.
* *
* @param algorithm the name of the algorithm requested. * @param algorithm the name of the algorithm requested.
...@@ -259,7 +259,7 @@ public class AlgorithmParameters { ...@@ -259,7 +259,7 @@ public class AlgorithmParameters {
/** /**
* Initializes this parameter object using the parameters * Initializes this parameter object using the parameters
* specified in <code>paramSpec</code>. * specified in {@code paramSpec}.
* *
* @param paramSpec the parameter specification. * @param paramSpec the parameter specification.
* *
...@@ -295,9 +295,9 @@ public class AlgorithmParameters { ...@@ -295,9 +295,9 @@ public class AlgorithmParameters {
} }
/** /**
* Imports the parameters from <code>params</code> and decodes them * Imports the parameters from {@code params} and decodes them
* according to the specified decoding scheme. * according to the specified decoding scheme.
* If <code>format</code> is null, the * If {@code format} is null, the
* primary decoding format for parameters is used. The primary decoding * primary decoding format for parameters is used. The primary decoding
* format is ASN.1, if an ASN.1 specification for these parameters * format is ASN.1, if an ASN.1 specification for these parameters
* exists. * exists.
...@@ -318,11 +318,11 @@ public class AlgorithmParameters { ...@@ -318,11 +318,11 @@ public class AlgorithmParameters {
/** /**
* Returns a (transparent) specification of this parameter object. * Returns a (transparent) specification of this parameter object.
* <code>paramSpec</code> identifies the specification class in which * {@code paramSpec} identifies the specification class in which
* the parameters should be returned. It could, for example, be * the parameters should be returned. It could, for example, be
* <code>DSAParameterSpec.class</code>, to indicate that the * {@code DSAParameterSpec.class}, to indicate that the
* parameters should be returned in an instance of the * parameters should be returned in an instance of the
* <code>DSAParameterSpec</code> class. * {@code DSAParameterSpec} class.
* *
* @param paramSpec the specification class in which * @param paramSpec the specification class in which
* the parameters should be returned. * the parameters should be returned.
...@@ -363,7 +363,7 @@ public class AlgorithmParameters { ...@@ -363,7 +363,7 @@ public class AlgorithmParameters {
/** /**
* Returns the parameters encoded in the specified scheme. * Returns the parameters encoded in the specified scheme.
* If <code>format</code> is null, the * If {@code format} is null, the
* primary encoding format for parameters is used. The primary encoding * primary encoding format for parameters is used. The primary encoding
* format is ASN.1, if an ASN.1 specification for these parameters * format is ASN.1, if an ASN.1 specification for these parameters
* exists. * exists.
......
/* /*
* Copyright (c) 1997, 2004, 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,7 +31,7 @@ import java.security.spec.InvalidParameterSpecException; ...@@ -31,7 +31,7 @@ import java.security.spec.InvalidParameterSpecException;
/** /**
* 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>AlgorithmParameters</code> class, which is used to manage * for the {@code AlgorithmParameters} class, which is used to manage
* algorithm parameters. * algorithm parameters.
* *
* <p> All the abstract methods in this class must be implemented by each * <p> All the abstract methods in this class must be implemented by each
...@@ -52,7 +52,7 @@ public abstract class AlgorithmParametersSpi { ...@@ -52,7 +52,7 @@ public abstract class AlgorithmParametersSpi {
/** /**
* Initializes this parameters object using the parameters * Initializes this parameters object using the parameters
* specified in <code>paramSpec</code>. * specified in {@code paramSpec}.
* *
* @param paramSpec the parameter specification. * @param paramSpec the parameter specification.
* *
...@@ -77,9 +77,9 @@ public abstract class AlgorithmParametersSpi { ...@@ -77,9 +77,9 @@ public abstract class AlgorithmParametersSpi {
throws IOException; throws IOException;
/** /**
* Imports the parameters from <code>params</code> and * Imports the parameters from {@code params} and
* decodes them according to the specified decoding format. * decodes them according to the specified decoding format.
* If <code>format</code> is null, the * If {@code format} is null, the
* primary decoding format for parameters is used. The primary decoding * primary decoding format for parameters is used. The primary decoding
* format is ASN.1, if an ASN.1 specification for these parameters * format is ASN.1, if an ASN.1 specification for these parameters
* exists. * exists.
...@@ -96,11 +96,11 @@ public abstract class AlgorithmParametersSpi { ...@@ -96,11 +96,11 @@ public abstract class AlgorithmParametersSpi {
/** /**
* Returns a (transparent) specification of this parameters * Returns a (transparent) specification of this parameters
* object. * object.
* <code>paramSpec</code> identifies the specification class in which * {@code paramSpec} identifies the specification class in which
* the parameters should be returned. It could, for example, be * the parameters should be returned. It could, for example, be
* <code>DSAParameterSpec.class</code>, to indicate that the * {@code DSAParameterSpec.class}, to indicate that the
* parameters should be returned in an instance of the * parameters should be returned in an instance of the
* <code>DSAParameterSpec</code> class. * {@code DSAParameterSpec} class.
* *
* @param paramSpec the specification class in which * @param paramSpec the specification class in which
* the parameters should be returned. * the parameters should be returned.
...@@ -128,7 +128,7 @@ public abstract class AlgorithmParametersSpi { ...@@ -128,7 +128,7 @@ public abstract class AlgorithmParametersSpi {
/** /**
* Returns the parameters encoded in the specified format. * Returns the parameters encoded in the specified format.
* If <code>format</code> is null, the * If {@code format} is null, the
* primary encoding format for parameters is used. The primary encoding * primary encoding format for parameters is used. The primary encoding
* format is ASN.1, if an ASN.1 specification for these parameters * format is ASN.1, if an ASN.1 specification for these parameters
* exists. * exists.
......
/* /*
* 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
...@@ -69,7 +69,7 @@ public final class AllPermission extends Permission { ...@@ -69,7 +69,7 @@ public final class AllPermission extends Permission {
/** /**
* Creates a new AllPermission object. This * Creates a new AllPermission object. This
* constructor exists for use by the <code>Policy</code> object * constructor exists for use by the {@code Policy} object
* to instantiate new Permission objects. * to instantiate new Permission objects.
* *
* @param name ignored * @param name ignored
......
/* /*
* Copyright (c) 2003, 2004, 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
...@@ -32,8 +32,8 @@ import javax.security.auth.callback.CallbackHandler; ...@@ -32,8 +32,8 @@ import javax.security.auth.callback.CallbackHandler;
/** /**
* This class defines login and logout methods for a provider. * This class defines login and logout methods for a provider.
* *
* <p> While callers may invoke <code>login</code> directly, * <p> While callers may invoke {@code login} directly,
* the provider may also invoke <code>login</code> on behalf of callers * the provider may also invoke {@code login} on behalf of callers
* if it determines that a login must be performed * if it determines that a login must be performed
* prior to certain operations. * prior to certain operations.
* *
...@@ -56,11 +56,11 @@ public abstract class AuthProvider extends Provider { ...@@ -56,11 +56,11 @@ public abstract class AuthProvider extends Provider {
/** /**
* Log in to this provider. * Log in to this provider.
* *
* <p> The provider relies on a <code>CallbackHandler</code> * <p> The provider relies on a {@code CallbackHandler}
* to obtain authentication information from the caller * to obtain authentication information from the caller
* (a PIN, for example). If the caller passes a <code>null</code> * (a PIN, for example). If the caller passes a {@code null}
* handler to this method, the provider uses the handler set in the * handler to this method, the provider uses the handler set in the
* <code>setCallbackHandler</code> method. * {@code setCallbackHandler} method.
* If no handler was set in that method, the provider queries the * If no handler was set in that method, the provider queries the
* <i>auth.login.defaultCallbackHandler</i> security property * <i>auth.login.defaultCallbackHandler</i> security property
* for the fully qualified class name of a default handler implementation. * for the fully qualified class name of a default handler implementation.
...@@ -68,21 +68,21 @@ public abstract class AuthProvider extends Provider { ...@@ -68,21 +68,21 @@ public abstract class AuthProvider extends Provider {
* the provider is assumed to have alternative means * the provider is assumed to have alternative means
* for obtaining authentication information. * for obtaining authentication information.
* *
* @param subject the <code>Subject</code> which may contain * @param subject the {@code Subject} which may contain
* principals/credentials used for authentication, * principals/credentials used for authentication,
* or may be populated with additional principals/credentials * or may be populated with additional principals/credentials
* after successful authentication has completed. * after successful authentication has completed.
* This parameter may be <code>null</code>. * This parameter may be {@code null}.
* @param handler the <code>CallbackHandler</code> used by * @param handler the {@code CallbackHandler} used by
* this provider to obtain authentication information * this provider to obtain authentication information
* from the caller, which may be <code>null</code> * from the caller, which may be {@code null}
* *
* @exception LoginException if the login operation fails * @exception LoginException if the login operation fails
* @exception SecurityException if the caller does not pass a * @exception SecurityException if the caller does not pass a
* security check for * security check for
* <code>SecurityPermission("authProvider.<i>name</i>")</code>, * {@code SecurityPermission("authProvider.name")},
* where <i>name</i> is the value returned by * where {@code name} is the value returned by
* this provider's <code>getName</code> method * this provider's {@code getName} method
*/ */
public abstract void login(Subject subject, CallbackHandler handler) public abstract void login(Subject subject, CallbackHandler handler)
throws LoginException; throws LoginException;
...@@ -93,18 +93,18 @@ public abstract class AuthProvider extends Provider { ...@@ -93,18 +93,18 @@ public abstract class AuthProvider extends Provider {
* @exception LoginException if the logout operation fails * @exception LoginException if the logout operation fails
* @exception SecurityException if the caller does not pass a * @exception SecurityException if the caller does not pass a
* security check for * security check for
* <code>SecurityPermission("authProvider.<i>name</i>")</code>, * {@code SecurityPermission("authProvider.name")},
* where <i>name</i> is the value returned by * where {@code name} is the value returned by
* this provider's <code>getName</code> method * this provider's {@code getName} method
*/ */
public abstract void logout() throws LoginException; public abstract void logout() throws LoginException;
/** /**
* Set a <code>CallbackHandler</code>. * Set a {@code CallbackHandler}.
* *
* <p> The provider uses this handler if one is not passed to the * <p> The provider uses this handler if one is not passed to the
* <code>login</code> method. The provider also uses this handler * {@code login} method. The provider also uses this handler
* if it invokes <code>login</code> on behalf of callers. * if it invokes {@code login} on behalf of callers.
* In either case if a handler is not set via this method, * In either case if a handler is not set via this method,
* the provider queries the * the provider queries the
* <i>auth.login.defaultCallbackHandler</i> security property * <i>auth.login.defaultCallbackHandler</i> security property
...@@ -113,14 +113,14 @@ public abstract class AuthProvider extends Provider { ...@@ -113,14 +113,14 @@ public abstract class AuthProvider extends Provider {
* the provider is assumed to have alternative means * the provider is assumed to have alternative means
* for obtaining authentication information. * for obtaining authentication information.
* *
* @param handler a <code>CallbackHandler</code> for obtaining * @param handler a {@code CallbackHandler} for obtaining
* authentication information, which may be <code>null</code> * authentication information, which may be {@code null}
* *
* @exception SecurityException if the caller does not pass a * @exception SecurityException if the caller does not pass a
* security check for * security check for
* <code>SecurityPermission("authProvider.<i>name</i>")</code>, * {@code SecurityPermission("authProvider.name")},
* where <i>name</i> is the value returned by * where {@code name} is the value returned by
* this provider's <code>getName</code> method * this provider's {@code getName} method
*/ */
public abstract void setCallbackHandler(CallbackHandler handler); public abstract void setCallbackHandler(CallbackHandler handler);
} }
/* /*
* Copyright (c) 1997, 2012, 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
...@@ -124,8 +124,8 @@ public abstract class BasicPermission extends Permission ...@@ -124,8 +124,8 @@ public abstract class BasicPermission extends Permission
* *
* @param name the name of the BasicPermission. * @param name the name of the BasicPermission.
* *
* @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 BasicPermission(String name) { public BasicPermission(String name) {
super(name); super(name);
...@@ -141,8 +141,8 @@ public abstract class BasicPermission extends Permission ...@@ -141,8 +141,8 @@ public abstract class BasicPermission extends Permission
* @param name the name of the BasicPermission. * @param name the name of the BasicPermission.
* @param actions ignored. * @param actions ignored.
* *
* @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 BasicPermission(String name, String actions) { public BasicPermission(String name, String actions) {
super(name); super(name);
...@@ -217,7 +217,7 @@ public abstract class BasicPermission extends Permission ...@@ -217,7 +217,7 @@ public abstract class BasicPermission extends Permission
/** /**
* Returns the hash code value for this object. * Returns the hash code value for this object.
* The hash code used is the hash code of the name, that is, * The hash code used is the hash code of the name, that is,
* <code>getName().hashCode()</code>, where <code>getName</code> is * {@code getName().hashCode()}, where {@code getName} is
* from the Permission superclass. * from the Permission superclass.
* *
* @return a hash code value for this object. * @return a hash code value for this object.
...@@ -243,7 +243,7 @@ public abstract class BasicPermission extends Permission ...@@ -243,7 +243,7 @@ public abstract class BasicPermission extends Permission
* *
* <p>BasicPermission objects must be stored in a manner that allows them * <p>BasicPermission objects must be stored in a manner that allows them
* to be inserted in any order, but that also enables the * to be inserted in any order, but that also enables the
* PermissionCollection <code>implies</code> method * PermissionCollection {@code implies} method
* to be implemented in an efficient (and consistent) manner. * to be implemented in an efficient (and consistent) manner.
* *
* @return a new PermissionCollection object suitable for * @return a new PermissionCollection object suitable for
...@@ -312,7 +312,7 @@ final class BasicPermissionCollection ...@@ -312,7 +312,7 @@ final class BasicPermissionCollection
private transient Map<String, Permission> perms; private transient Map<String, Permission> perms;
/** /**
* This is set to <code>true</code> if this BasicPermissionCollection * This is set to {@code true} if this BasicPermissionCollection
* contains a BasicPermission with '*' as its permission name. * contains a BasicPermission with '*' as its permission name.
* *
* @see #serialPersistentFields * @see #serialPersistentFields
...@@ -477,7 +477,7 @@ final class BasicPermissionCollection ...@@ -477,7 +477,7 @@ final class BasicPermissionCollection
* The Hashtable is indexed by the BasicPermission name; the value * The Hashtable is indexed by the BasicPermission name; the value
* of the Hashtable entry is the permission. * of the Hashtable entry is the permission.
* @serialField all_allowed boolean * @serialField all_allowed boolean
* This is set to <code>true</code> if this BasicPermissionCollection * This is set to {@code true} if this BasicPermissionCollection
* contains a BasicPermission with '*' as its permission name. * contains a BasicPermission with '*' as its permission name.
* @serialField permClass java.lang.Class * @serialField permClass java.lang.Class
* The class to which all BasicPermissions in this * The class to which all BasicPermissions in this
......
/* /*
* Copyright (c) 1996, 2006, 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
...@@ -96,7 +96,7 @@ public interface Certificate { ...@@ -96,7 +96,7 @@ public interface Certificate {
/** /**
* Encodes the certificate to an output stream in a format that can * Encodes the certificate to an output stream in a format that can
* be decoded by the <code>decode</code> method. * be decoded by the {@code decode} method.
* *
* @param stream the output stream to which to encode the * @param stream the output stream to which to encode the
* certificate. * certificate.
...@@ -115,8 +115,8 @@ public interface Certificate { ...@@ -115,8 +115,8 @@ public interface Certificate {
/** /**
* Decodes a certificate from an input stream. The format should be * Decodes a certificate from an input stream. The format should be
* that returned by <code>getFormat</code> and produced by * that returned by {@code getFormat} and produced by
* <code>encode</code>. * {@code encode}.
* *
* @param stream the input stream from which to fetch the data * @param stream the input stream from which to fetch the data
* being decoded. * being decoded.
...@@ -137,8 +137,8 @@ public interface Certificate { ...@@ -137,8 +137,8 @@ public interface Certificate {
/** /**
* Returns the name of the coding format. This is used as a hint to find * Returns the name of the coding format. This is used as a hint to find
* an appropriate parser. It could be "X.509", "PGP", etc. This is * an appropriate parser. It could be "X.509", "PGP", etc. This is
* the format produced and understood by the <code>encode</code> * the format produced and understood by the {@code encode}
* and <code>decode</code> methods. * and {@code decode} methods.
* *
* @return the name of the coding format. * @return the name of the coding format.
*/ */
......
/* /*
* Copyright (c) 2003, 2011, 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
...@@ -63,12 +63,12 @@ public final class CodeSigner implements Serializable { ...@@ -63,12 +63,12 @@ public final class CodeSigner implements Serializable {
* Constructs a CodeSigner object. * Constructs a CodeSigner object.
* *
* @param signerCertPath The signer's certificate path. * @param signerCertPath The signer's certificate path.
* It must not be <code>null</code>. * It must not be {@code null}.
* @param timestamp A signature timestamp. * @param timestamp A signature timestamp.
* If <code>null</code> then no timestamp was generated * If {@code null} then no timestamp was generated
* for the signature. * for the signature.
* @throws NullPointerException if <code>signerCertPath</code> is * @throws NullPointerException if {@code signerCertPath} is
* <code>null</code>. * {@code null}.
*/ */
public CodeSigner(CertPath signerCertPath, Timestamp timestamp) { public CodeSigner(CertPath signerCertPath, Timestamp timestamp) {
if (signerCertPath == null) { if (signerCertPath == null) {
...@@ -90,7 +90,7 @@ public final class CodeSigner implements Serializable { ...@@ -90,7 +90,7 @@ public final class CodeSigner implements Serializable {
/** /**
* Returns the signature timestamp. * Returns the signature timestamp.
* *
* @return The timestamp or <code>null</code> if none is present. * @return The timestamp or {@code null} if none is present.
*/ */
public Timestamp getTimestamp() { public Timestamp getTimestamp() {
return timestamp; return timestamp;
......
/* /*
* Copyright (c) 1997, 2012, 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
...@@ -485,13 +485,13 @@ public class CodeSource implements java.io.Serializable { ...@@ -485,13 +485,13 @@ public class CodeSource implements java.io.Serializable {
/** /**
* Writes this object out to a stream (i.e., serializes it). * Writes this object out to a stream (i.e., serializes it).
* *
* @serialData An initial <code>URL</code> is followed by an * @serialData An initial {@code URL} is followed by an
* <code>int</code> indicating the number of certificates to follow * {@code int} indicating the number of certificates to follow
* (a value of "zero" denotes that there are no certificates associated * (a value of "zero" denotes that there are no certificates associated
* with this object). * with this object).
* Each certificate is written out starting with a <code>String</code> * Each certificate is written out starting with a {@code String}
* denoting the certificate type, followed by an * denoting the certificate type, followed by an
* <code>int</code> specifying the length of the certificate encoding, * {@code int} specifying the length of the certificate encoding,
* followed by the certificate encoding itself which is written out as an * followed by the certificate encoding itself which is written out as an
* array of bytes. Finally, if any code signers are present then the array * array of bytes. Finally, if any code signers are present then the array
* of code signers is serialized and written out too. * of code signers is serialized and written out too.
......
/* /*
* Copyright (c) 1996, 2003, 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
...@@ -55,13 +55,13 @@ public class DigestException extends GeneralSecurityException { ...@@ -55,13 +55,13 @@ public class DigestException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>DigestException</code> with the specified * Creates a {@code DigestException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -70,13 +70,13 @@ public class DigestException extends GeneralSecurityException { ...@@ -70,13 +70,13 @@ public class DigestException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>DigestException</code> with the specified cause * Creates a {@code DigestException} with the specified cause
* and a detail message of <tt>(cause==null ? null : cause.toString())</tt> * and a detail message of {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* Copyright (c) 1996, 1999, 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
...@@ -37,13 +37,13 @@ import java.io.ByteArrayInputStream; ...@@ -37,13 +37,13 @@ import java.io.ByteArrayInputStream;
* the bits going through the stream. * the bits going through the stream.
* *
* <p>To complete the message digest computation, call one of the * <p>To complete the message digest computation, call one of the
* <code>digest</code> methods on the associated message * {@code digest} methods on the associated message
* digest after your calls to one of this digest input stream's * digest after your calls to one of this digest input stream's
* {@link #read() read} methods. * {@link #read() read} methods.
* *
* <p>It is possible to turn this stream on or off (see * <p>It is possible to turn this stream on or off (see
* {@link #on(boolean) on}). When it is on, a call to one of the * {@link #on(boolean) on}). When it is on, a call to one of the
* <code>read</code> methods * {@code read} methods
* results in an update on the message digest. But when it is off, * results in an update on the message digest. But when it is off,
* the message digest is not updated. The default is for the stream * the message digest is not updated. The default is for the stream
* to be on. * to be on.
...@@ -111,7 +111,7 @@ public class DigestInputStream extends FilterInputStream { ...@@ -111,7 +111,7 @@ public class DigestInputStream extends FilterInputStream {
* function is on). That is, this method reads a byte from the * function is on). That is, this method reads a byte from the
* input stream, blocking until the byte is actually read. If the * input stream, blocking until the byte is actually read. If the
* digest function is on (see {@link #on(boolean) on}), this method * digest function is on (see {@link #on(boolean) on}), this method
* will then call <code>update</code> on the message digest associated * will then call {@code update} on the message digest associated
* with this stream, passing it the byte read. * with this stream, passing it the byte read.
* *
* @return the byte read. * @return the byte read.
...@@ -131,25 +131,25 @@ public class DigestInputStream extends FilterInputStream { ...@@ -131,25 +131,25 @@ public class DigestInputStream extends FilterInputStream {
/** /**
* Reads into a byte array, and updates the message digest (if the * Reads into a byte array, and updates the message digest (if the
* digest function is on). That is, this method reads up to * digest function is on). That is, this method reads up to
* <code>len</code> bytes from the input stream into the array * {@code len} bytes from the input stream into the array
* <code>b</code>, starting at offset <code>off</code>. This method * {@code b}, starting at offset {@code off}. This method
* blocks until the data is actually * blocks until the data is actually
* read. If the digest function is on (see * read. If the digest function is on (see
* {@link #on(boolean) on}), this method will then call <code>update</code> * {@link #on(boolean) on}), this method will then call {@code update}
* on the message digest associated with this stream, passing it * on the message digest associated with this stream, passing it
* the data. * the data.
* *
* @param b the array into which the data is read. * @param b the array into which the data is read.
* *
* @param off the starting offset into <code>b</code> of where the * @param off the starting offset into {@code b} of where the
* data should be placed. * data should be placed.
* *
* @param len the maximum number of bytes to be read from the input * @param len the maximum number of bytes to be read from the input
* stream into b, starting at offset <code>off</code>. * stream into b, starting at offset {@code off}.
* *
* @return the actual number of bytes read. This is less than * @return the actual number of bytes read. This is less than
* <code>len</code> if the end of the stream is reached prior to * {@code len} if the end of the stream is reached prior to
* reading <code>len</code> bytes. -1 is returned if no bytes were * reading {@code len} bytes. -1 is returned if no bytes were
* read because the end of the stream had already been reached when * read because the end of the stream had already been reached when
* the call was made. * the call was made.
* *
...@@ -167,7 +167,7 @@ public class DigestInputStream extends FilterInputStream { ...@@ -167,7 +167,7 @@ public class DigestInputStream extends FilterInputStream {
/** /**
* Turns the digest function on or off. The default is on. When * Turns the digest function on or off. The default is on. When
* it is on, a call to one of the <code>read</code> methods results in an * it is on, a call to one of the {@code read} methods results in an
* update on the message digest. But when it is off, the message * update on the message digest. But when it is off, the message
* digest is not updated. * digest is not updated.
* *
......
...@@ -37,13 +37,13 @@ import java.io.ByteArrayOutputStream; ...@@ -37,13 +37,13 @@ import java.io.ByteArrayOutputStream;
* the bits going through the stream. * the bits going through the stream.
* *
* <p>To complete the message digest computation, call one of the * <p>To complete the message digest computation, call one of the
* <code>digest</code> methods on the associated message * {@code digest} methods on the associated message
* digest after your calls to one of this digest ouput stream's * digest after your calls to one of this digest ouput stream's
* {@link #write(int) write} methods. * {@link #write(int) write} methods.
* *
* <p>It is possible to turn this stream on or off (see * <p>It is possible to turn this stream on or off (see
* {@link #on(boolean) on}). When it is on, a call to one of the * {@link #on(boolean) on}). When it is on, a call to one of the
* <code>write</code> methods results in * {@code write} methods results in
* an update on the message digest. But when it is off, the message * an update on the message digest. But when it is off, the message
* digest is not updated. The default is for the stream to be on. * digest is not updated. The default is for the stream to be on.
* *
...@@ -99,8 +99,8 @@ public class DigestOutputStream extends FilterOutputStream { ...@@ -99,8 +99,8 @@ public class DigestOutputStream extends FilterOutputStream {
* the specified byte, and in any case writes the byte * the specified byte, and in any case writes the byte
* to the output stream. That is, if the digest function is on * to the output stream. That is, if the digest function is on
* (see {@link #on(boolean) on}), this method calls * (see {@link #on(boolean) on}), this method calls
* <code>update</code> on the message digest associated with this * {@code update} on the message digest associated with this
* stream, passing it the byte <code>b</code>. This method then * stream, passing it the byte {@code b}. This method then
* writes the byte to the output stream, blocking until the byte * writes the byte to the output stream, blocking until the byte
* is actually written. * is actually written.
* *
...@@ -122,7 +122,7 @@ public class DigestOutputStream extends FilterOutputStream { ...@@ -122,7 +122,7 @@ public class DigestOutputStream extends FilterOutputStream {
* Updates the message digest (if the digest function is on) using * Updates the message digest (if the digest function is on) using
* the specified subarray, and in any case writes the subarray to * the specified subarray, and in any case writes the subarray to
* the output stream. That is, if the digest function is on (see * the output stream. That is, if the digest function is on (see
* {@link #on(boolean) on}), this method calls <code>update</code> * {@link #on(boolean) on}), this method calls {@code update}
* on the message digest associated with this stream, passing it * on the message digest associated with this stream, passing it
* the subarray specifications. This method then writes the subarray * the subarray specifications. This method then writes the subarray
* bytes to the output stream, blocking until the bytes are actually * bytes to the output stream, blocking until the bytes are actually
...@@ -131,11 +131,11 @@ public class DigestOutputStream extends FilterOutputStream { ...@@ -131,11 +131,11 @@ public class DigestOutputStream extends FilterOutputStream {
* @param b the array containing the subarray to be used for updating * @param b the array containing the subarray to be used for updating
* and writing to the output stream. * and writing to the output stream.
* *
* @param off the offset into <code>b</code> of the first byte to * @param off the offset into {@code b} of the first byte to
* be updated and written. * be updated and written.
* *
* @param len the number of bytes of data to be updated and written * @param len the number of bytes of data to be updated and written
* from <code>b</code>, starting at offset <code>off</code>. * from {@code b}, starting at offset {@code off}.
* *
* @exception IOException if an I/O error occurs. * @exception IOException if an I/O error occurs.
* *
...@@ -150,7 +150,7 @@ public class DigestOutputStream extends FilterOutputStream { ...@@ -150,7 +150,7 @@ public class DigestOutputStream extends FilterOutputStream {
/** /**
* Turns the digest function on or off. The default is on. When * Turns the digest function on or off. The default is on. When
* it is on, a call to one of the <code>write</code> methods results in an * it is on, a call to one of the {@code write} methods results in an
* update on the message digest. But when it is off, the message * update on the message digest. But when it is off, the message
* digest is not updated. * digest is not updated.
* *
......
/* /*
* Copyright (c) 1999, 2006, 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,27 +26,27 @@ ...@@ -26,27 +26,27 @@
package java.security; package java.security;
/** /**
* A <code>DomainCombiner</code> provides a means to dynamically * A {@code DomainCombiner} provides a means to dynamically
* update the ProtectionDomains associated with the current * update the ProtectionDomains associated with the current
* <code>AccessControlContext</code>. * {@code AccessControlContext}.
* *
* <p> A <code>DomainCombiner</code> is passed as a parameter to the * <p> A {@code DomainCombiner} is passed as a parameter to the
* appropriate constructor for <code>AccessControlContext</code>. * appropriate constructor for {@code AccessControlContext}.
* The newly constructed context is then passed to the * The newly constructed context is then passed to the
* <code>AccessController.doPrivileged(..., context)</code> method * {@code AccessController.doPrivileged(..., context)} method
* to bind the provided context (and associated <code>DomainCombiner</code>) * to bind the provided context (and associated {@code DomainCombiner})
* with the current execution Thread. Subsequent calls to * with the current execution Thread. Subsequent calls to
* <code>AccessController.getContext</code> or * {@code AccessController.getContext} or
* <code>AccessController.checkPermission</code> * {@code AccessController.checkPermission}
* cause the <code>DomainCombiner.combine</code> to get invoked. * cause the {@code DomainCombiner.combine} to get invoked.
* *
* <p> The combine method takes two arguments. The first argument represents * <p> The combine method takes two arguments. The first argument represents
* an array of ProtectionDomains from the current execution Thread, * an array of ProtectionDomains from the current execution Thread,
* since the most recent call to <code>AccessController.doPrivileged</code>. * since the most recent call to {@code AccessController.doPrivileged}.
* If no call to doPrivileged was made, then the first argument will contain * If no call to doPrivileged was made, then the first argument will contain
* all the ProtectionDomains from the current execution Thread. * all the ProtectionDomains from the current execution Thread.
* The second argument represents an array of inherited ProtectionDomains, * The second argument represents an array of inherited ProtectionDomains,
* which may be <code>null</code>. ProtectionDomains may be inherited * which may be {@code null}. ProtectionDomains may be inherited
* from a parent Thread, or from a privileged context. If no call to * from a parent Thread, or from a privileged context. If no call to
* doPrivileged was made, then the second argument will contain the * doPrivileged was made, then the second argument will contain the
* ProtectionDomains inherited from the parent Thread. If one or more calls * ProtectionDomains inherited from the parent Thread. If one or more calls
...@@ -54,25 +54,25 @@ package java.security; ...@@ -54,25 +54,25 @@ package java.security;
* doPrivileged(action, context), then the second argument will contain the * doPrivileged(action, context), then the second argument will contain the
* ProtectionDomains from the privileged context. If the most recent call * ProtectionDomains from the privileged context. If the most recent call
* was to doPrivileged(action), then there is no privileged context, * was to doPrivileged(action), then there is no privileged context,
* and the second argument will be <code>null</code>. * and the second argument will be {@code null}.
* *
* <p> The <code>combine</code> method investigates the two input arrays * <p> The {@code combine} method investigates the two input arrays
* of ProtectionDomains and returns a single array containing the updated * of ProtectionDomains and returns a single array containing the updated
* ProtectionDomains. In the simplest case, the <code>combine</code> * ProtectionDomains. In the simplest case, the {@code combine}
* method merges the two stacks into one. In more complex cases, * method merges the two stacks into one. In more complex cases,
* the <code>combine</code> method returns a modified * the {@code combine} method returns a modified
* stack of ProtectionDomains. The modification may have added new * stack of ProtectionDomains. The modification may have added new
* ProtectionDomains, removed certain ProtectionDomains, or simply * ProtectionDomains, removed certain ProtectionDomains, or simply
* updated existing ProtectionDomains. Re-ordering and other optimizations * updated existing ProtectionDomains. Re-ordering and other optimizations
* to the ProtectionDomains are also permitted. Typically the * to the ProtectionDomains are also permitted. Typically the
* <code>combine</code> method bases its updates on the information * {@code combine} method bases its updates on the information
* encapsulated in the <code>DomainCombiner</code>. * encapsulated in the {@code DomainCombiner}.
* *
* <p> After the <code>AccessController.getContext</code> method * <p> After the {@code AccessController.getContext} method
* receives the combined stack of ProtectionDomains back from * receives the combined stack of ProtectionDomains back from
* the <code>DomainCombiner</code>, it returns a new * the {@code DomainCombiner}, it returns a new
* AccessControlContext that has both the combined ProtectionDomains * AccessControlContext that has both the combined ProtectionDomains
* as well as the <code>DomainCombiner</code>. * as well as the {@code DomainCombiner}.
* *
* @see AccessController * @see AccessController
* @see AccessControlContext * @see AccessControlContext
...@@ -91,21 +91,21 @@ public interface DomainCombiner { ...@@ -91,21 +91,21 @@ public interface 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 an array of inherited ProtectionDomains. * @param assignedDomains an array of inherited ProtectionDomains.
* ProtectionDomains may be inherited from a parent Thread, * ProtectionDomains may be inherited from a parent Thread,
* or from a privileged <code>AccessControlContext</code>. * or from a privileged {@code AccessControlContext}.
* This parameter may be <code>null</code> * This parameter may be {@code null}
* if there are no inherited ProtectionDomains. * if there are no inherited ProtectionDomains.
* *
* @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}.
*/ */
ProtectionDomain[] combine(ProtectionDomain[] currentDomains, ProtectionDomain[] combine(ProtectionDomain[] currentDomains,
ProtectionDomain[] assignedDomains); ProtectionDomain[] assignedDomains);
......
/* /*
* Copyright (c) 1997, 2003, 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
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
package java.security; package java.security;
/** /**
* The <code>GeneralSecurityException</code> class is a generic * The {@code GeneralSecurityException} class is a generic
* security exception class that provides type safety for all the * security exception class that provides type safety for all the
* security-related exception classes that extend from it. * security-related exception classes that extend from it.
* *
...@@ -57,13 +57,13 @@ public class GeneralSecurityException extends Exception { ...@@ -57,13 +57,13 @@ public class GeneralSecurityException extends Exception {
} }
/** /**
* Creates a <code>GeneralSecurityException</code> with the specified * Creates a {@code GeneralSecurityException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -72,13 +72,13 @@ public class GeneralSecurityException extends Exception { ...@@ -72,13 +72,13 @@ public class GeneralSecurityException extends Exception {
} }
/** /**
* Creates a <code>GeneralSecurityException</code> with the specified cause * Creates a {@code GeneralSecurityException} with the specified cause
* and a detail message of <tt>(cause==null ? null : cause.toString())</tt> * and a detail message of {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* Copyright (c) 1997, 1998, 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
...@@ -29,9 +29,9 @@ package java.security; ...@@ -29,9 +29,9 @@ package java.security;
* <p> This interface represents a guard, which is an object that is used * <p> This interface represents a guard, which is an object that is used
* to protect access to another object. * to protect access to another object.
* *
* <p>This interface contains a single method, <code>checkGuard</code>, * <p>This interface contains a single method, {@code checkGuard},
* with a single <code>object</code> argument. <code>checkGuard</code> is * with a single {@code object} argument. {@code checkGuard} is
* invoked (by the GuardedObject <code>getObject</code> method) * invoked (by the GuardedObject {@code getObject} method)
* to determine whether or not to allow access to the object. * to determine whether or not to allow access to the object.
* *
* @see GuardedObject * @see GuardedObject
...@@ -44,7 +44,7 @@ public interface Guard { ...@@ -44,7 +44,7 @@ public interface Guard {
/** /**
* Determines whether or not to allow access to the guarded object * Determines whether or not to allow access to the guarded object
* <code>object</code>. Returns silently if access is allowed. * {@code object}. Returns silently if access is allowed.
* Otherwise, throws a SecurityException. * Otherwise, throws a SecurityException.
* *
* @param object the object being protected by the guard. * @param object the object being protected by the guard.
......
/* /*
* Copyright (c) 1997, 2004, 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
...@@ -33,9 +33,9 @@ package java.security; ...@@ -33,9 +33,9 @@ package java.security;
* such that access to the target object is possible * such that access to the target object is possible
* only if the Guard object allows it. * only if the Guard object allows it.
* Once an object is encapsulated by a GuardedObject, * Once an object is encapsulated by a GuardedObject,
* access to that object is controlled by the <code>getObject</code> * access to that object is controlled by the {@code getObject}
* method, which invokes the * method, which invokes the
* <code>checkGuard</code> method on the Guard object that is * {@code checkGuard} method on the Guard object that is
* guarding access. If access is not allowed, * guarding access. If access is not allowed,
* an exception is thrown. * an exception is thrown.
* *
......
/* /*
* Copyright (c) 1996, 2006, 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
...@@ -52,9 +52,9 @@ import java.util.*; ...@@ -52,9 +52,9 @@ import java.util.*;
* *
* @author Benjamin Renaud * @author Benjamin Renaud
* @deprecated This class is no longer used. Its functionality has been * @deprecated This class is no longer used. Its functionality has been
* replaced by <code>java.security.KeyStore</code>, the * replaced by {@code java.security.KeyStore}, the
* <code>java.security.cert</code> package, and * {@code java.security.cert} package, and
* <code>java.security.Principal</code>. * {@code java.security.Principal}.
*/ */
@Deprecated @Deprecated
public abstract class Identity implements Principal, Serializable { public abstract class Identity implements Principal, Serializable {
...@@ -164,8 +164,8 @@ public abstract class Identity implements Principal, Serializable { ...@@ -164,8 +164,8 @@ public abstract class Identity implements Principal, Serializable {
* Sets this identity's public key. The old key and all of this * Sets this identity's public key. The old key and all of this
* identity's certificates are removed by this operation. * identity's certificates are removed by this operation.
* *
* <p>First, if there is a security manager, its <code>checkSecurityAccess</code> * <p>First, if there is a security manager, its {@code checkSecurityAccess}
* method is called with <code>"setIdentityPublicKey"</code> * method is called with {@code "setIdentityPublicKey"}
* as its argument to see if it's ok to set the public key. * as its argument to see if it's ok to set the public key.
* *
* @param key the public key for this identity. * @param key the public key for this identity.
...@@ -174,7 +174,7 @@ public abstract class Identity implements Principal, Serializable { ...@@ -174,7 +174,7 @@ public abstract class Identity implements Principal, Serializable {
* identity's scope has the same public key, or if another exception occurs. * identity's scope has the same public key, or if another exception occurs.
* *
* @exception SecurityException if a security manager exists and its * @exception SecurityException if a security manager exists and its
* <code>checkSecurityAccess</code> method doesn't allow * {@code checkSecurityAccess} method doesn't allow
* setting the public key. * setting the public key.
* *
* @see #getPublicKey * @see #getPublicKey
...@@ -191,14 +191,14 @@ public abstract class Identity implements Principal, Serializable { ...@@ -191,14 +191,14 @@ public abstract class Identity implements Principal, Serializable {
/** /**
* Specifies a general information string for this identity. * Specifies a general information string for this identity.
* *
* <p>First, if there is a security manager, its <code>checkSecurityAccess</code> * <p>First, if there is a security manager, its {@code checkSecurityAccess}
* method is called with <code>"setIdentityInfo"</code> * method is called with {@code "setIdentityInfo"}
* as its argument to see if it's ok to specify the information string. * as its argument to see if it's ok to specify the information string.
* *
* @param info the information string. * @param info the information string.
* *
* @exception SecurityException if a security manager exists and its * @exception SecurityException if a security manager exists and its
* <code>checkSecurityAccess</code> method doesn't allow * {@code checkSecurityAccess} method doesn't allow
* setting the information string. * setting the information string.
* *
* @see #getInfo * @see #getInfo
...@@ -226,8 +226,8 @@ public abstract class Identity implements Principal, Serializable { ...@@ -226,8 +226,8 @@ public abstract class Identity implements Principal, Serializable {
* the identity does not have a public key, the identity's * the identity does not have a public key, the identity's
* public key is set to be that specified in the certificate. * public key is set to be that specified in the certificate.
* *
* <p>First, if there is a security manager, its <code>checkSecurityAccess</code> * <p>First, if there is a security manager, its {@code checkSecurityAccess}
* method is called with <code>"addIdentityCertificate"</code> * method is called with {@code "addIdentityCertificate"}
* as its argument to see if it's ok to add a certificate. * as its argument to see if it's ok to add a certificate.
* *
* @param certificate the certificate to be added. * @param certificate the certificate to be added.
...@@ -237,7 +237,7 @@ public abstract class Identity implements Principal, Serializable { ...@@ -237,7 +237,7 @@ public abstract class Identity implements Principal, Serializable {
* this identity's public key, or if another exception occurs. * this identity's public key, or if another exception occurs.
* *
* @exception SecurityException if a security manager exists and its * @exception SecurityException if a security manager exists and its
* <code>checkSecurityAccess</code> method doesn't allow * {@code checkSecurityAccess} method doesn't allow
* adding a certificate. * adding a certificate.
* *
* @see SecurityManager#checkSecurityAccess * @see SecurityManager#checkSecurityAccess
...@@ -277,8 +277,8 @@ public abstract class Identity implements Principal, Serializable { ...@@ -277,8 +277,8 @@ public abstract class Identity implements Principal, Serializable {
/** /**
* Removes a certificate from this identity. * Removes a certificate from this identity.
* *
* <p>First, if there is a security manager, its <code>checkSecurityAccess</code> * <p>First, if there is a security manager, its {@code checkSecurityAccess}
* method is called with <code>"removeIdentityCertificate"</code> * method is called with {@code "removeIdentityCertificate"}
* as its argument to see if it's ok to remove a certificate. * as its argument to see if it's ok to remove a certificate.
* *
* @param certificate the certificate to be removed. * @param certificate the certificate to be removed.
...@@ -287,7 +287,7 @@ public abstract class Identity implements Principal, Serializable { ...@@ -287,7 +287,7 @@ public abstract class Identity implements Principal, Serializable {
* missing, or if another exception occurs. * missing, or if another exception occurs.
* *
* @exception SecurityException if a security manager exists and its * @exception SecurityException if a security manager exists and its
* <code>checkSecurityAccess</code> method doesn't allow * {@code checkSecurityAccess} method doesn't allow
* removing a certificate. * removing a certificate.
* *
* @see SecurityManager#checkSecurityAccess * @see SecurityManager#checkSecurityAccess
...@@ -390,15 +390,15 @@ public abstract class Identity implements Principal, Serializable { ...@@ -390,15 +390,15 @@ public abstract class Identity implements Principal, Serializable {
* Returns a short string describing this identity, telling its * Returns a short string describing this identity, telling its
* name and its scope (if any). * name and its scope (if any).
* *
* <p>First, if there is a security manager, its <code>checkSecurityAccess</code> * <p>First, if there is a security manager, its {@code checkSecurityAccess}
* method is called with <code>"printIdentity"</code> * method is called with {@code "printIdentity"}
* as its argument to see if it's ok to return the string. * as its argument to see if it's ok to return the string.
* *
* @return information about this identity, such as its name and the * @return information about this identity, such as its name and the
* name of its scope (if any). * name of its scope (if any).
* *
* @exception SecurityException if a security manager exists and its * @exception SecurityException if a security manager exists and its
* <code>checkSecurityAccess</code> method doesn't allow * {@code checkSecurityAccess} method doesn't allow
* returning a string describing this identity. * returning a string describing this identity.
* *
* @see SecurityManager#checkSecurityAccess * @see SecurityManager#checkSecurityAccess
...@@ -415,20 +415,20 @@ public abstract class Identity implements Principal, Serializable { ...@@ -415,20 +415,20 @@ public abstract class Identity implements Principal, Serializable {
/** /**
* Returns a string representation of this identity, with * Returns a string representation of this identity, with
* optionally more details than that provided by the * optionally more details than that provided by the
* <code>toString</code> method without any arguments. * {@code toString} method without any arguments.
* *
* <p>First, if there is a security manager, its <code>checkSecurityAccess</code> * <p>First, if there is a security manager, its {@code checkSecurityAccess}
* method is called with <code>"printIdentity"</code> * method is called with {@code "printIdentity"}
* as its argument to see if it's ok to return the string. * as its argument to see if it's ok to return the string.
* *
* @param detailed whether or not to provide detailed information. * @param detailed whether or not to provide detailed information.
* *
* @return information about this identity. If <code>detailed</code> * @return information about this identity. If {@code detailed}
* is true, then this method returns more information than that * is true, then this method returns more information than that
* provided by the <code>toString</code> method without any arguments. * provided by the {@code toString} method without any arguments.
* *
* @exception SecurityException if a security manager exists and its * @exception SecurityException if a security manager exists and its
* <code>checkSecurityAccess</code> method doesn't allow * {@code checkSecurityAccess} method doesn't allow
* returning a string describing this identity. * returning a string describing this identity.
* *
* @see #toString * @see #toString
......
/* /*
* Copyright (c) 1996, 2010, 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
...@@ -57,9 +57,9 @@ import java.util.Properties; ...@@ -57,9 +57,9 @@ import java.util.Properties;
* @author Benjamin Renaud * @author Benjamin Renaud
* *
* @deprecated This class is no longer used. Its functionality has been * @deprecated This class is no longer used. Its functionality has been
* replaced by <code>java.security.KeyStore</code>, the * replaced by {@code java.security.KeyStore}, the
* <code>java.security.cert</code> package, and * {@code java.security.cert} package, and
* <code>java.security.Principal</code>. * {@code java.security.Principal}.
*/ */
@Deprecated @Deprecated
public abstract public abstract
...@@ -146,14 +146,14 @@ class IdentityScope extends Identity { ...@@ -146,14 +146,14 @@ class IdentityScope extends Identity {
* Sets the system's identity scope. * Sets the system's identity scope.
* *
* <p>First, if there is a security manager, its * <p>First, if there is a security manager, its
* <code>checkSecurityAccess</code> * {@code checkSecurityAccess}
* method is called with <code>"setSystemScope"</code> * method is called with {@code "setSystemScope"}
* as its argument to see if it's ok to set the identity scope. * as its argument to see if it's ok to set the identity scope.
* *
* @param scope the scope to set. * @param scope the scope to set.
* *
* @exception SecurityException if a security manager exists and its * @exception SecurityException if a security manager exists and its
* <code>checkSecurityAccess</code> method doesn't allow * {@code checkSecurityAccess} method doesn't allow
* setting the identity scope. * setting the identity scope.
* *
* @see #getSystemScope * @see #getSystemScope
...@@ -176,8 +176,8 @@ class IdentityScope extends Identity { ...@@ -176,8 +176,8 @@ class IdentityScope extends Identity {
* *
* @param name the name of the identity to be retrieved. * @param name the name of the identity to be retrieved.
* *
* @return the identity named <code>name</code>, or null if there are * @return the identity named {@code name}, or null if there are
* no identities named <code>name</code> in this scope. * no identities named {@code name} in this scope.
*/ */
public abstract Identity getIdentity(String name); public abstract Identity getIdentity(String name);
......
/* /*
* Copyright (c) 1997, 2003, 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
...@@ -65,13 +65,13 @@ extends GeneralSecurityException { ...@@ -65,13 +65,13 @@ extends GeneralSecurityException {
} }
/** /**
* Creates a <code>InvalidAlgorithmParameterException</code> with the * Creates a {@code InvalidAlgorithmParameterException} with the
* specified detail message and cause. * specified detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -80,14 +80,14 @@ extends GeneralSecurityException { ...@@ -80,14 +80,14 @@ extends GeneralSecurityException {
} }
/** /**
* Creates a <code>InvalidAlgorithmParameterException</code> with the * Creates a {@code InvalidAlgorithmParameterException} with the
* specified cause and a detail message of * specified cause and a detail message of
* <tt>(cause==null ? null : cause.toString())</tt> * {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* Copyright (c) 1996, 2003, 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
...@@ -58,13 +58,13 @@ public class InvalidKeyException extends KeyException { ...@@ -58,13 +58,13 @@ public class InvalidKeyException extends KeyException {
} }
/** /**
* Creates a <code>InvalidKeyException</code> with the specified * Creates a {@code InvalidKeyException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -73,13 +73,13 @@ public class InvalidKeyException extends KeyException { ...@@ -73,13 +73,13 @@ public class InvalidKeyException extends KeyException {
} }
/** /**
* Creates a <code>InvalidKeyException</code> with the specified cause * Creates a {@code InvalidKeyException} with the specified cause
* and a detail message of <tt>(cause==null ? null : cause.toString())</tt> * and a detail message of {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* Copyright (c) 1996, 2006, 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
...@@ -47,9 +47,9 @@ package java.security; ...@@ -47,9 +47,9 @@ package java.security;
* representation of the key is needed outside the Java Virtual Machine, * representation of the key is needed outside the Java Virtual Machine,
* as when transmitting the key to some other party. The key * as when transmitting the key to some other party. The key
* is encoded according to a standard format (such as * is encoded according to a standard format (such as
* X.509 <code>SubjectPublicKeyInfo</code> or PKCS#8), and * X.509 {@code SubjectPublicKeyInfo} or PKCS#8), and
* is returned using the {@link #getEncoded() getEncoded} method. * is returned using the {@link #getEncoded() getEncoded} method.
* Note: The syntax of the ASN.1 type <code>SubjectPublicKeyInfo</code> * Note: The syntax of the ASN.1 type {@code SubjectPublicKeyInfo}
* is defined as follows: * is defined as follows:
* *
* <pre> * <pre>
...@@ -132,11 +132,11 @@ public interface Key extends java.io.Serializable { ...@@ -132,11 +132,11 @@ public interface Key extends java.io.Serializable {
* For example, the name of the ASN.1 data format for public * For example, the name of the ASN.1 data format for public
* keys is <I>SubjectPublicKeyInfo</I>, as * keys is <I>SubjectPublicKeyInfo</I>, as
* defined by the X.509 standard; in this case, the returned format is * defined by the X.509 standard; in this case, the returned format is
* <code>"X.509"</code>. Similarly, * {@code "X.509"}. Similarly,
* the name of the ASN.1 data format for private keys is * the name of the ASN.1 data format for private keys is
* <I>PrivateKeyInfo</I>, * <I>PrivateKeyInfo</I>,
* as defined by the PKCS #8 standard; in this case, the returned format is * as defined by the PKCS #8 standard; in this case, the returned format is
* <code>"PKCS#8"</code>. * {@code "PKCS#8"}.
* *
* @return the primary encoding format of the key. * @return the primary encoding format of the key.
*/ */
......
/* /*
* Copyright (c) 1996, 2003, 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
...@@ -59,13 +59,13 @@ public class KeyException extends GeneralSecurityException { ...@@ -59,13 +59,13 @@ public class KeyException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>KeyException</code> with the specified * Creates a {@code KeyException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -74,13 +74,13 @@ public class KeyException extends GeneralSecurityException { ...@@ -74,13 +74,13 @@ public class KeyException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>KeyException</code> with the specified cause * Creates a {@code KeyException} with the specified cause
* and a detail message of <tt>(cause==null ? null : cause.toString())</tt> * and a detail message of {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* 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
...@@ -37,7 +37,7 @@ import sun.security.jca.GetInstance.Instance; ...@@ -37,7 +37,7 @@ import sun.security.jca.GetInstance.Instance;
/** /**
* Key factories are used to convert <I>keys</I> (opaque * Key factories are used to convert <I>keys</I> (opaque
* cryptographic keys of type <code>Key</code>) into <I>key specifications</I> * cryptographic keys of type {@code Key}) into <I>key specifications</I>
* (transparent representations of the underlying key material), and vice * (transparent representations of the underlying key material), and vice
* versa. * versa.
* *
...@@ -47,8 +47,8 @@ import sun.security.jca.GetInstance.Instance; ...@@ -47,8 +47,8 @@ import sun.security.jca.GetInstance.Instance;
* *
* <P> Multiple compatible key specifications may exist for the same key. * <P> Multiple compatible key specifications may exist for the same key.
* For example, a DSA public key may be specified using * For example, a DSA public key may be specified using
* <code>DSAPublicKeySpec</code> or * {@code DSAPublicKeySpec} or
* <code>X509EncodedKeySpec</code>. A key factory can be used to translate * {@code X509EncodedKeySpec}. A key factory can be used to translate
* between compatible key specifications. * between compatible key specifications.
* *
* <P> The following is an example of how to use a key factory in order to * <P> The following is an example of how to use a key factory in order to
...@@ -68,11 +68,11 @@ import sun.security.jca.GetInstance.Instance; ...@@ -68,11 +68,11 @@ import sun.security.jca.GetInstance.Instance;
* </pre> * </pre>
* *
* <p> Every implementation of the Java platform is required to support the * <p> Every implementation of the Java platform is required to support the
* following standard <code>KeyFactory</code> algorithms: * following standard {@code KeyFactory} algorithms:
* <ul> * <ul>
* <li><tt>DiffieHellman</tt></li> * <li>{@code DiffieHellman}</li>
* <li><tt>DSA</tt></li> * <li>{@code DSA}</li>
* <li><tt>RSA</tt></li> * <li>{@code RSA}</li>
* </ul> * </ul>
* These algorithms are described in the <a href= * These algorithms are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyFactory"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyFactory">
...@@ -120,7 +120,7 @@ public class KeyFactory { ...@@ -120,7 +120,7 @@ public class KeyFactory {
* @param keyFacSpi the delegate * @param keyFacSpi the delegate
* @param provider the provider * @param provider the provider
* @param algorithm the name of the algorithm * @param algorithm the name of the algorithm
* to associate with this <tt>KeyFactory</tt> * to associate with this {@code KeyFactory}
*/ */
protected KeyFactory(KeyFactorySpi keyFacSpi, Provider provider, protected KeyFactory(KeyFactorySpi keyFacSpi, Provider provider,
String algorithm) { String algorithm) {
...@@ -266,10 +266,10 @@ public class KeyFactory { ...@@ -266,10 +266,10 @@ public class KeyFactory {
/** /**
* Gets the name of the algorithm * Gets the name of the algorithm
* associated with this <tt>KeyFactory</tt>. * associated with this {@code KeyFactory}.
* *
* @return the name of the algorithm associated with this * @return the name of the algorithm associated with this
* <tt>KeyFactory</tt> * {@code KeyFactory}
*/ */
public final String getAlgorithm() { public final String getAlgorithm() {
return this.algorithm; return this.algorithm;
...@@ -389,11 +389,11 @@ public class KeyFactory { ...@@ -389,11 +389,11 @@ public class KeyFactory {
/** /**
* Returns a specification (key material) of the given key object. * Returns a specification (key material) of the given key object.
* <code>keySpec</code> identifies the specification class in which * {@code keySpec} identifies the specification class in which
* the key material should be returned. It could, for example, be * the key material should be returned. It could, for example, be
* <code>DSAPublicKeySpec.class</code>, to indicate that the * {@code DSAPublicKeySpec.class}, to indicate that the
* key material should be returned in an instance of the * key material should be returned in an instance of the
* <code>DSAPublicKeySpec</code> class. * {@code DSAPublicKeySpec} class.
* *
* @param key the key. * @param key the key.
* *
......
/* /*
* Copyright (c) 1997, 2004, 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,13 +30,13 @@ import java.security.spec.InvalidKeySpecException; ...@@ -30,13 +30,13 @@ import java.security.spec.InvalidKeySpecException;
/** /**
* 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>KeyFactory</code> class. * for the {@code KeyFactory} 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
* cryptographic service provider who wishes to supply the implementation * cryptographic service provider who wishes to supply the implementation
* of a key factory for a particular algorithm. * of a key factory for a particular algorithm.
* *
* <P> Key factories are used to convert <I>keys</I> (opaque * <P> Key factories are used to convert <I>keys</I> (opaque
* cryptographic keys of type <code>Key</code>) into <I>key specifications</I> * cryptographic keys of type {@code Key}) into <I>key specifications</I>
* (transparent representations of the underlying key material), and vice * (transparent representations of the underlying key material), and vice
* versa. * versa.
* *
...@@ -46,8 +46,8 @@ import java.security.spec.InvalidKeySpecException; ...@@ -46,8 +46,8 @@ import java.security.spec.InvalidKeySpecException;
* *
* <P> Multiple compatible key specifications may exist for the same key. * <P> Multiple compatible key specifications may exist for the same key.
* For example, a DSA public key may be specified using * For example, a DSA public key may be specified using
* <code>DSAPublicKeySpec</code> or * {@code DSAPublicKeySpec} or
* <code>X509EncodedKeySpec</code>. A key factory can be used to translate * {@code X509EncodedKeySpec}. A key factory can be used to translate
* between compatible key specifications. * between compatible key specifications.
* *
* <P> A provider should document all the key specifications supported by its * <P> A provider should document all the key specifications supported by its
...@@ -100,11 +100,11 @@ public abstract class KeyFactorySpi { ...@@ -100,11 +100,11 @@ public abstract class KeyFactorySpi {
/** /**
* Returns a specification (key material) of the given key * Returns a specification (key material) of the given key
* object. * object.
* <code>keySpec</code> identifies the specification class in which * {@code keySpec} identifies the specification class in which
* the key material should be returned. It could, for example, be * the key material should be returned. It could, for example, be
* <code>DSAPublicKeySpec.class</code>, to indicate that the * {@code DSAPublicKeySpec.class}, to indicate that the
* key material should be returned in an instance of the * key material should be returned in an instance of the
* <code>DSAPublicKeySpec</code> class. * {@code DSAPublicKeySpec} class.
* *
* @param key the key. * @param key the key.
* *
......
/* /*
* Copyright (c) 1996, 2003, 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
...@@ -68,13 +68,13 @@ public class KeyManagementException extends KeyException { ...@@ -68,13 +68,13 @@ public class KeyManagementException extends KeyException {
} }
/** /**
* Creates a <code>KeyManagementException</code> with the specified * Creates a {@code KeyManagementException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -83,13 +83,13 @@ public class KeyManagementException extends KeyException { ...@@ -83,13 +83,13 @@ public class KeyManagementException extends KeyException {
} }
/** /**
* Creates a <code>KeyManagementException</code> with the specified cause * Creates a {@code KeyManagementException} with the specified cause
* and a detail message of <tt>(cause==null ? null : cause.toString())</tt> * and a detail message of {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* Copyright (c) 1996, 2003, 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
...@@ -50,7 +50,7 @@ public final class KeyPair implements java.io.Serializable { ...@@ -50,7 +50,7 @@ public final class KeyPair implements java.io.Serializable {
* *
* <p>Note that this constructor only stores references to the public * <p>Note that this constructor only stores references to the public
* and private key components in the generated key pair. This is safe, * and private key components in the generated key pair. This is safe,
* because <code>Key</code> objects are immutable. * because {@code Key} objects are immutable.
* *
* @param publicKey the public key. * @param publicKey the public key.
* *
......
/* /*
* 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
...@@ -37,7 +37,7 @@ import sun.security.jca.GetInstance.Instance; ...@@ -37,7 +37,7 @@ import sun.security.jca.GetInstance.Instance;
/** /**
* The KeyPairGenerator class is used to generate pairs of * The KeyPairGenerator class is used to generate pairs of
* public and private keys. Key pair generators are constructed using the * public and private keys. Key pair generators are constructed using the
* <code>getInstance</code> factory methods (static methods that * {@code getInstance} factory methods (static methods that
* return instances of a given class). * return instances of a given class).
* *
* <p>A Key pair generator for a particular algorithm creates a public/private * <p>A Key pair generator for a particular algorithm creates a public/private
...@@ -58,21 +58,21 @@ import sun.security.jca.GetInstance.Instance; ...@@ -58,21 +58,21 @@ import sun.security.jca.GetInstance.Instance;
* {@link #initialize(int, java.security.SecureRandom) initialize} * {@link #initialize(int, java.security.SecureRandom) initialize}
* method in this KeyPairGenerator class that takes these two universally * method in this KeyPairGenerator class that takes these two universally
* shared types of arguments. There is also one that takes just a * shared types of arguments. There is also one that takes just a
* <code>keysize</code> argument, and uses the <code>SecureRandom</code> * {@code keysize} argument, and uses the {@code SecureRandom}
* implementation of the highest-priority installed provider as the source * implementation of the highest-priority installed provider as the source
* of randomness. (If none of the installed providers supply an implementation * of randomness. (If none of the installed providers supply an implementation
* of <code>SecureRandom</code>, a system-provided source of randomness is * of {@code SecureRandom}, a system-provided source of randomness is
* used.) * used.)
* *
* <p>Since no other parameters are specified when you call the above * <p>Since no other parameters are specified when you call the above
* algorithm-independent <code>initialize</code> methods, it is up to the * algorithm-independent {@code initialize} methods, it is up to the
* provider what to do about the algorithm-specific parameters (if any) to be * provider what to do about the algorithm-specific parameters (if any) to be
* associated with each of the keys. * associated with each of the keys.
* *
* <p>If the algorithm is the <i>DSA</i> algorithm, and the keysize (modulus * <p>If the algorithm is the <i>DSA</i> algorithm, and the keysize (modulus
* size) is 512, 768, or 1024, then the <i>Sun</i> provider uses a set of * size) is 512, 768, or 1024, then the <i>Sun</i> provider uses a set of
* precomputed values for the <code>p</code>, <code>q</code>, and * precomputed values for the {@code p}, {@code q}, and
* <code>g</code> parameters. If the modulus size is not one of the above * {@code g} parameters. If the modulus size is not one of the above
* values, the <i>Sun</i> provider creates a new set of parameters. Other * values, the <i>Sun</i> provider creates a new set of parameters. Other
* providers might have precomputed parameter sets for more than just the * providers might have precomputed parameter sets for more than just the
* three modulus sizes mentioned above. Still others might not have a list of * three modulus sizes mentioned above. Still others might not have a list of
...@@ -83,35 +83,35 @@ import sun.security.jca.GetInstance.Instance; ...@@ -83,35 +83,35 @@ import sun.security.jca.GetInstance.Instance;
* <p>For situations where a set of algorithm-specific parameters already * <p>For situations where a set of algorithm-specific parameters already
* exists (e.g., so-called <i>community parameters</i> in DSA), there are two * exists (e.g., so-called <i>community parameters</i> in DSA), there are two
* {@link #initialize(java.security.spec.AlgorithmParameterSpec) * {@link #initialize(java.security.spec.AlgorithmParameterSpec)
* initialize} methods that have an <code>AlgorithmParameterSpec</code> * initialize} methods that have an {@code AlgorithmParameterSpec}
* argument. One also has a <code>SecureRandom</code> argument, while the * argument. One also has a {@code SecureRandom} argument, while the
* the other uses the <code>SecureRandom</code> * the other uses the {@code SecureRandom}
* implementation of the highest-priority installed provider as the source * implementation of the highest-priority installed provider as the source
* of randomness. (If none of the installed providers supply an implementation * of randomness. (If none of the installed providers supply an implementation
* of <code>SecureRandom</code>, a system-provided source of randomness is * of {@code SecureRandom}, a system-provided source of randomness is
* used.) * used.)
* </ul> * </ul>
* *
* <p>In case the client does not explicitly initialize the KeyPairGenerator * <p>In case the client does not explicitly initialize the KeyPairGenerator
* (via a call to an <code>initialize</code> method), each provider must * (via a call to an {@code initialize} method), each provider must
* supply (and document) a default initialization. * supply (and document) a default initialization.
* For example, the <i>Sun</i> provider uses a default modulus size (keysize) * For example, the <i>Sun</i> provider uses a default modulus size (keysize)
* of 1024 bits. * of 1024 bits.
* *
* <p>Note that this class is abstract and extends from * <p>Note that this class is abstract and extends from
* <code>KeyPairGeneratorSpi</code> for historical reasons. * {@code KeyPairGeneratorSpi} for historical reasons.
* Application developers should only take notice of the methods defined in * Application developers should only take notice of the methods defined in
* this <code>KeyPairGenerator</code> class; all the methods in * this {@code KeyPairGenerator} class; all the methods in
* the superclass are intended for cryptographic service providers who wish to * the superclass are intended for cryptographic service providers who wish to
* supply their own implementations of key pair generators. * supply their own implementations of key pair generators.
* *
* <p> Every implementation of the Java platform is required to support the * <p> Every implementation of the Java platform is required to support the
* following standard <code>KeyPairGenerator</code> algorithms and keysizes in * following standard {@code KeyPairGenerator} algorithms and keysizes in
* parentheses: * parentheses:
* <ul> * <ul>
* <li><tt>DiffieHellman</tt> (1024)</li> * <li>{@code DiffieHellman} (1024)</li>
* <li><tt>DSA</tt> (1024)</li> * <li>{@code DSA} (1024)</li>
* <li><tt>RSA</tt> (1024, 2048)</li> * <li>{@code RSA} (1024, 2048)</li>
* </ul> * </ul>
* These algorithms are described in the <a href= * These algorithms are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyPairGenerator"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyPairGenerator">
...@@ -322,18 +322,18 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi { ...@@ -322,18 +322,18 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi {
/** /**
* Initializes the key pair generator for a certain keysize using * Initializes the key pair generator for a certain keysize using
* a default parameter set and the <code>SecureRandom</code> * a default parameter set and the {@code SecureRandom}
* implementation of the highest-priority installed provider as the source * implementation of the highest-priority installed provider as the source
* of randomness. * of randomness.
* (If none of the installed providers supply an implementation of * (If none of the installed providers supply an implementation of
* <code>SecureRandom</code>, a system-provided source of randomness is * {@code SecureRandom}, a system-provided source of randomness is
* used.) * used.)
* *
* @param keysize the keysize. This is an * @param keysize the keysize. This is an
* algorithm-specific metric, such as modulus length, specified in * algorithm-specific metric, such as modulus length, specified in
* number of bits. * number of bits.
* *
* @exception InvalidParameterException if the <code>keysize</code> is not * @exception InvalidParameterException if the {@code keysize} is not
* supported by this KeyPairGenerator object. * supported by this KeyPairGenerator object.
*/ */
public void initialize(int keysize) { public void initialize(int keysize) {
...@@ -349,7 +349,7 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi { ...@@ -349,7 +349,7 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi {
* number of bits. * number of bits.
* @param random the source of randomness. * @param random the source of randomness.
* *
* @exception InvalidParameterException if the <code>keysize</code> is not * @exception InvalidParameterException if the {@code keysize} is not
* supported by this KeyPairGenerator object. * supported by this KeyPairGenerator object.
* *
* @since 1.2 * @since 1.2
...@@ -369,11 +369,11 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi { ...@@ -369,11 +369,11 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi {
/** /**
* Initializes the key pair generator using the specified parameter * Initializes the key pair generator using the specified parameter
* set and the <code>SecureRandom</code> * set and the {@code SecureRandom}
* implementation of the highest-priority installed provider as the source * implementation of the highest-priority installed provider as the source
* of randomness. * of randomness.
* (If none of the installed providers supply an implementation of * (If none of the installed providers supply an implementation of
* <code>SecureRandom</code>, a system-provided source of randomness is * {@code SecureRandom}, a system-provided source of randomness is
* used.). * used.).
* *
* <p>This concrete method has been added to this previously-defined * <p>This concrete method has been added to this previously-defined
...@@ -382,10 +382,10 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi { ...@@ -382,10 +382,10 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi {
* {@link KeyPairGeneratorSpi#initialize( * {@link KeyPairGeneratorSpi#initialize(
* java.security.spec.AlgorithmParameterSpec, * java.security.spec.AlgorithmParameterSpec,
* java.security.SecureRandom) initialize} method, * java.security.SecureRandom) initialize} method,
* passing it <code>params</code> and a source of randomness (obtained * passing it {@code params} and a source of randomness (obtained
* from the highest-priority installed provider or system-provided if none * from the highest-priority installed provider or system-provided if none
* of the installed providers supply one). * of the installed providers supply one).
* That <code>initialize</code> method always throws an * That {@code initialize} method always throws an
* UnsupportedOperationException if it is not overridden by the provider. * UnsupportedOperationException if it is not overridden by the provider.
* *
* @param params the parameter set used to generate the keys. * @param params the parameter set used to generate the keys.
...@@ -410,8 +410,8 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi { ...@@ -410,8 +410,8 @@ public abstract class KeyPairGenerator extends KeyPairGeneratorSpi {
* KeyPairGeneratorSpi#initialize( * KeyPairGeneratorSpi#initialize(
* java.security.spec.AlgorithmParameterSpec, * java.security.spec.AlgorithmParameterSpec,
* java.security.SecureRandom) initialize} method, * java.security.SecureRandom) initialize} method,
* passing it <code>params</code> and <code>random</code>. * passing it {@code params} and {@code random}.
* That <code>initialize</code> * That {@code initialize}
* method always throws an * method always throws an
* UnsupportedOperationException if it is not overridden by the provider. * UnsupportedOperationException if it is not overridden by the provider.
* *
......
/* /*
* Copyright (c) 1997, 1999, 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
...@@ -29,7 +29,7 @@ import java.security.spec.AlgorithmParameterSpec; ...@@ -29,7 +29,7 @@ import java.security.spec.AlgorithmParameterSpec;
/** /**
* <p> This class defines the <i>Service Provider Interface</i> (<b>SPI</b>) * <p> This class defines the <i>Service Provider Interface</i> (<b>SPI</b>)
* for the <code>KeyPairGenerator</code> class, which is used to generate * for the {@code KeyPairGenerator} class, which is used to generate
* pairs of public and private keys. * pairs of public and private keys.
* *
* <p> All the abstract methods in this class must be implemented by each * <p> All the abstract methods in this class must be implemented by each
...@@ -37,7 +37,7 @@ import java.security.spec.AlgorithmParameterSpec; ...@@ -37,7 +37,7 @@ import java.security.spec.AlgorithmParameterSpec;
* of a key pair generator for a particular algorithm. * of a key pair generator for a particular algorithm.
* *
* <p> In case the client does not explicitly initialize the KeyPairGenerator * <p> In case the client does not explicitly initialize the KeyPairGenerator
* (via a call to an <code>initialize</code> method), each provider must * (via a call to an {@code initialize} method), each provider must
* supply (and document) a default initialization. * supply (and document) a default initialization.
* For example, the <i>Sun</i> provider uses a default modulus size (keysize) * For example, the <i>Sun</i> provider uses a default modulus size (keysize)
* of 1024 bits. * of 1024 bits.
...@@ -61,7 +61,7 @@ public abstract class KeyPairGeneratorSpi { ...@@ -61,7 +61,7 @@ public abstract class KeyPairGeneratorSpi {
* *
* @param random the source of randomness for this generator. * @param random the source of randomness for this generator.
* *
* @exception InvalidParameterException if the <code>keysize</code> is not * @exception InvalidParameterException if the {@code keysize} is not
* supported by this KeyPairGeneratorSpi object. * supported by this KeyPairGeneratorSpi object.
*/ */
public abstract void initialize(int keysize, SecureRandom random); public abstract void initialize(int keysize, SecureRandom random);
...@@ -100,7 +100,7 @@ public abstract class KeyPairGeneratorSpi { ...@@ -100,7 +100,7 @@ public abstract class KeyPairGeneratorSpi {
* will be used. This will generate a new key pair every time it * will be used. This will generate a new key pair every time it
* is called. * is called.
* *
* @return the newly generated <tt>KeyPair</tt> * @return the newly generated {@code KeyPair}
*/ */
public abstract KeyPair generateKeyPair(); public abstract KeyPair generateKeyPair();
} }
/* /*
* Copyright (c) 2003, 2011, 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
...@@ -116,17 +116,17 @@ public class KeyRep implements Serializable { ...@@ -116,17 +116,17 @@ public class KeyRep implements Serializable {
* *
* @param type either one of Type.SECRET, Type.PUBLIC, or Type.PRIVATE * @param type either one of Type.SECRET, Type.PUBLIC, or Type.PRIVATE
* @param algorithm the algorithm returned from * @param algorithm the algorithm returned from
* <code>Key.getAlgorithm()</code> * {@code Key.getAlgorithm()}
* @param format the encoding format returned from * @param format the encoding format returned from
* <code>Key.getFormat()</code> * {@code Key.getFormat()}
* @param encoded the encoded bytes returned from * @param encoded the encoded bytes returned from
* <code>Key.getEncoded()</code> * {@code Key.getEncoded()}
* *
* @exception NullPointerException * @exception NullPointerException
* if type is <code>null</code>, * if type is {@code null},
* if algorithm is <code>null</code>, * if algorithm is {@code null},
* if format is <code>null</code>, * if format is {@code null},
* or if encoded is <code>null</code> * or if encoded is {@code null}
*/ */
public KeyRep(Type type, String algorithm, public KeyRep(Type type, String algorithm,
String format, byte[] encoded) { String format, byte[] encoded) {
......
...@@ -41,13 +41,13 @@ import javax.security.auth.callback.*; ...@@ -41,13 +41,13 @@ import javax.security.auth.callback.*;
* This class represents a storage facility for cryptographic * This class represents a storage facility for cryptographic
* keys and certificates. * keys and certificates.
* *
* <p> A <code>KeyStore</code> manages different types of entries. * <p> A {@code KeyStore} manages different types of entries.
* Each type of entry implements the <code>KeyStore.Entry</code> interface. * Each type of entry implements the {@code KeyStore.Entry} interface.
* Three basic <code>KeyStore.Entry</code> implementations are provided: * Three basic {@code KeyStore.Entry} implementations are provided:
* *
* <ul> * <ul>
* <li><b>KeyStore.PrivateKeyEntry</b> * <li><b>KeyStore.PrivateKeyEntry</b>
* <p> This type of entry holds a cryptographic <code>PrivateKey</code>, * <p> This type of entry holds a cryptographic {@code PrivateKey},
* which is optionally stored in a protected format to prevent * which is optionally stored in a protected format to prevent
* unauthorized access. It is also accompanied by a certificate chain * unauthorized access. It is also accompanied by a certificate chain
* for the corresponding public key. * for the corresponding public key.
...@@ -58,12 +58,12 @@ import javax.security.auth.callback.*; ...@@ -58,12 +58,12 @@ import javax.security.auth.callback.*;
* and/or licensing software. * and/or licensing software.
* *
* <li><b>KeyStore.SecretKeyEntry</b> * <li><b>KeyStore.SecretKeyEntry</b>
* <p> This type of entry holds a cryptographic <code>SecretKey</code>, * <p> This type of entry holds a cryptographic {@code SecretKey},
* which is optionally stored in a protected format to prevent * which is optionally stored in a protected format to prevent
* unauthorized access. * unauthorized access.
* *
* <li><b>KeyStore.TrustedCertificateEntry</b> * <li><b>KeyStore.TrustedCertificateEntry</b>
* <p> This type of entry contains a single public key <code>Certificate</code> * <p> This type of entry contains a single public key {@code Certificate}
* belonging to another party. It is called a <i>trusted certificate</i> * belonging to another party. It is called a <i>trusted certificate</i>
* because the keystore owner trusts that the public key in the certificate * because the keystore owner trusts that the public key in the certificate
* indeed belongs to the identity identified by the <i>subject</i> (owner) * indeed belongs to the identity identified by the <i>subject</i> (owner)
...@@ -121,8 +121,8 @@ import javax.security.auth.callback.*; ...@@ -121,8 +121,8 @@ import javax.security.auth.callback.*;
* } * }
* </pre> * </pre>
* *
* To create an empty keystore using the above <code>load</code> method, * To create an empty keystore using the above {@code load} method,
* pass <code>null</code> as the <code>InputStream</code> argument. * pass {@code null} as the {@code InputStream} argument.
* *
* <p> Once the keystore has been loaded, it is possible * <p> Once the keystore has been loaded, it is possible
* to read existing entries from the keystore, or to write new entries * to read existing entries from the keystore, or to write new entries
...@@ -156,9 +156,9 @@ import javax.security.auth.callback.*; ...@@ -156,9 +156,9 @@ import javax.security.auth.callback.*;
* may also be used. * may also be used.
* *
* <p> Every implementation of the Java platform is required to support * <p> Every implementation of the Java platform is required to support
* the following standard <code>KeyStore</code> type: * the following standard {@code KeyStore} type:
* <ul> * <ul>
* <li><tt>PKCS12</tt></li> * <li>{@code PKCS12}</li>
* </ul> * </ul>
* This type is described in the <a href= * This type is described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyStore"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#KeyStore">
...@@ -201,7 +201,7 @@ public class KeyStore { ...@@ -201,7 +201,7 @@ public class KeyStore {
private boolean initialized = false; private boolean initialized = false;
/** /**
* A marker interface for <code>KeyStore</code> * A marker interface for {@code KeyStore}
* {@link #load(KeyStore.LoadStoreParameter) load} * {@link #load(KeyStore.LoadStoreParameter) load}
* and * and
* {@link #store(KeyStore.LoadStoreParameter) store} * {@link #store(KeyStore.LoadStoreParameter) store}
...@@ -365,19 +365,19 @@ public class KeyStore { ...@@ -365,19 +365,19 @@ public class KeyStore {
/** /**
* A marker interface for keystore protection parameters. * A marker interface for keystore protection parameters.
* *
* <p> The information stored in a <code>ProtectionParameter</code> * <p> The information stored in a {@code ProtectionParameter}
* object protects the contents of a keystore. * object protects the contents of a keystore.
* For example, protection parameters may be used to check * For example, protection parameters may be used to check
* the integrity of keystore data, or to protect the * the integrity of keystore data, or to protect the
* confidentiality of sensitive keystore data * confidentiality of sensitive keystore data
* (such as a <code>PrivateKey</code>). * (such as a {@code PrivateKey}).
* *
* @since 1.5 * @since 1.5
*/ */
public static interface ProtectionParameter { } public static interface ProtectionParameter { }
/** /**
* A password-based implementation of <code>ProtectionParameter</code>. * A password-based implementation of {@code ProtectionParameter}.
* *
* @since 1.5 * @since 1.5
*/ */
...@@ -392,10 +392,10 @@ public class KeyStore { ...@@ -392,10 +392,10 @@ public class KeyStore {
/** /**
* Creates a password parameter. * Creates a password parameter.
* *
* <p> The specified <code>password</code> is cloned before it is stored * <p> The specified {@code password} is cloned before it is stored
* in the new <code>PasswordProtection</code> object. * in the new {@code PasswordProtection} object.
* *
* @param password the password, which may be <code>null</code> * @param password the password, which may be {@code null}
*/ */
public PasswordProtection(char[] password) { public PasswordProtection(char[] password) {
this.password = (password == null) ? null : password.clone(); this.password = (password == null) ? null : password.clone();
...@@ -476,7 +476,7 @@ public class KeyStore { ...@@ -476,7 +476,7 @@ public class KeyStore {
* after it is no longer needed. * after it is no longer needed.
* *
* @see #destroy() * @see #destroy()
* @return the password, which may be <code>null</code> * @return the password, which may be {@code null}
* @exception IllegalStateException if the password has * @exception IllegalStateException if the password has
* been cleared (destroyed) * been cleared (destroyed)
*/ */
...@@ -546,7 +546,7 @@ public class KeyStore { ...@@ -546,7 +546,7 @@ public class KeyStore {
} }
/** /**
* A marker interface for <code>KeyStore</code> entry types. * A marker interface for {@code KeyStore} entry types.
* *
* @since 1.5 * @since 1.5
*/ */
...@@ -590,7 +590,7 @@ public class KeyStore { ...@@ -590,7 +590,7 @@ public class KeyStore {
} }
/** /**
* A <code>KeyStore</code> entry that holds a <code>PrivateKey</code> * A {@code KeyStore} entry that holds a {@code PrivateKey}
* and corresponding certificate chain. * and corresponding certificate chain.
* *
* @since 1.5 * @since 1.5
...@@ -602,28 +602,28 @@ public class KeyStore { ...@@ -602,28 +602,28 @@ public class KeyStore {
private final Set<Attribute> attributes; private final Set<Attribute> attributes;
/** /**
* Constructs a <code>PrivateKeyEntry</code> with a * Constructs a {@code PrivateKeyEntry} with a
* <code>PrivateKey</code> and corresponding certificate chain. * {@code PrivateKey} and corresponding certificate chain.
* *
* <p> The specified <code>chain</code> is cloned before it is stored * <p> The specified {@code chain} is cloned before it is stored
* in the new <code>PrivateKeyEntry</code> object. * in the new {@code PrivateKeyEntry} object.
* *
* @param privateKey the <code>PrivateKey</code> * @param privateKey the {@code PrivateKey}
* @param chain an array of <code>Certificate</code>s * @param chain an array of {@code Certificate}s
* representing the certificate chain. * representing the certificate chain.
* The chain must be ordered and contain a * The chain must be ordered and contain a
* <code>Certificate</code> at index 0 * {@code Certificate} at index 0
* corresponding to the private key. * corresponding to the private key.
* *
* @exception NullPointerException if * @exception NullPointerException if
* <code>privateKey</code> or <code>chain</code> * {@code privateKey} or {@code chain}
* is <code>null</code> * is {@code null}
* @exception IllegalArgumentException if the specified chain has a * @exception IllegalArgumentException if the specified chain has a
* length of 0, if the specified chain does not contain * length of 0, if the specified chain does not contain
* <code>Certificate</code>s of the same type, * {@code Certificate}s of the same type,
* or if the <code>PrivateKey</code> algorithm * or if the {@code PrivateKey} algorithm
* does not match the algorithm of the <code>PublicKey</code> * does not match the algorithm of the {@code PublicKey}
* in the end entity <code>Certificate</code> (at index 0) * in the end entity {@code Certificate} (at index 0)
*/ */
public PrivateKeyEntry(PrivateKey privateKey, Certificate[] chain) { public PrivateKeyEntry(PrivateKey privateKey, Certificate[] chain) {
this(privateKey, chain, Collections.<Attribute>emptySet()); this(privateKey, chain, Collections.<Attribute>emptySet());
...@@ -699,38 +699,38 @@ public class KeyStore { ...@@ -699,38 +699,38 @@ public class KeyStore {
} }
/** /**
* Gets the <code>PrivateKey</code> from this entry. * Gets the {@code PrivateKey} from this entry.
* *
* @return the <code>PrivateKey</code> from this entry * @return the {@code PrivateKey} from this entry
*/ */
public PrivateKey getPrivateKey() { public PrivateKey getPrivateKey() {
return privKey; return privKey;
} }
/** /**
* Gets the <code>Certificate</code> chain from this entry. * Gets the {@code Certificate} chain from this entry.
* *
* <p> The stored chain is cloned before being returned. * <p> The stored chain is cloned before being returned.
* *
* @return an array of <code>Certificate</code>s corresponding * @return an array of {@code Certificate}s corresponding
* to the certificate chain for the public key. * to the certificate chain for the public key.
* If the certificates are of type X.509, * If the certificates are of type X.509,
* the runtime type of the returned array is * the runtime type of the returned array is
* <code>X509Certificate[]</code>. * {@code X509Certificate[]}.
*/ */
public Certificate[] getCertificateChain() { public Certificate[] getCertificateChain() {
return chain.clone(); return chain.clone();
} }
/** /**
* Gets the end entity <code>Certificate</code> * Gets the end entity {@code Certificate}
* from the certificate chain in this entry. * from the certificate chain in this entry.
* *
* @return the end entity <code>Certificate</code> (at index 0) * @return the end entity {@code Certificate} (at index 0)
* from the certificate chain in this entry. * from the certificate chain in this entry.
* If the certificate is of type X.509, * If the certificate is of type X.509,
* the runtime type of the returned certificate is * the runtime type of the returned certificate is
* <code>X509Certificate</code>. * {@code X509Certificate}.
*/ */
public Certificate getCertificate() { public Certificate getCertificate() {
return chain[0]; return chain[0];
...@@ -767,7 +767,7 @@ public class KeyStore { ...@@ -767,7 +767,7 @@ public class KeyStore {
} }
/** /**
* A <code>KeyStore</code> entry that holds a <code>SecretKey</code>. * A {@code KeyStore} entry that holds a {@code SecretKey}.
* *
* @since 1.5 * @since 1.5
*/ */
...@@ -777,13 +777,13 @@ public class KeyStore { ...@@ -777,13 +777,13 @@ public class KeyStore {
private final Set<Attribute> attributes; private final Set<Attribute> attributes;
/** /**
* Constructs a <code>SecretKeyEntry</code> with a * Constructs a {@code SecretKeyEntry} with a
* <code>SecretKey</code>. * {@code SecretKey}.
* *
* @param secretKey the <code>SecretKey</code> * @param secretKey the {@code SecretKey}
* *
* @exception NullPointerException if <code>secretKey</code> * @exception NullPointerException if {@code secretKey}
* is <code>null</code> * is {@code null}
*/ */
public SecretKeyEntry(SecretKey secretKey) { public SecretKeyEntry(SecretKey secretKey) {
if (secretKey == null) { if (secretKey == null) {
...@@ -819,9 +819,9 @@ public class KeyStore { ...@@ -819,9 +819,9 @@ public class KeyStore {
} }
/** /**
* Gets the <code>SecretKey</code> from this entry. * Gets the {@code SecretKey} from this entry.
* *
* @return the <code>SecretKey</code> from this entry * @return the {@code SecretKey} from this entry
*/ */
public SecretKey getSecretKey() { public SecretKey getSecretKey() {
return sKey; return sKey;
...@@ -850,8 +850,8 @@ public class KeyStore { ...@@ -850,8 +850,8 @@ public class KeyStore {
} }
/** /**
* A <code>KeyStore</code> entry that holds a trusted * A {@code KeyStore} entry that holds a trusted
* <code>Certificate</code>. * {@code Certificate}.
* *
* @since 1.5 * @since 1.5
*/ */
...@@ -861,13 +861,13 @@ public class KeyStore { ...@@ -861,13 +861,13 @@ public class KeyStore {
private final Set<Attribute> attributes; private final Set<Attribute> attributes;
/** /**
* Constructs a <code>TrustedCertificateEntry</code> with a * Constructs a {@code TrustedCertificateEntry} with a
* trusted <code>Certificate</code>. * trusted {@code Certificate}.
* *
* @param trustedCert the trusted <code>Certificate</code> * @param trustedCert the trusted {@code Certificate}
* *
* @exception NullPointerException if * @exception NullPointerException if
* <code>trustedCert</code> is <code>null</code> * {@code trustedCert} is {@code null}
*/ */
public TrustedCertificateEntry(Certificate trustedCert) { public TrustedCertificateEntry(Certificate trustedCert) {
if (trustedCert == null) { if (trustedCert == null) {
...@@ -903,9 +903,9 @@ public class KeyStore { ...@@ -903,9 +903,9 @@ public class KeyStore {
} }
/** /**
* Gets the trusted <code>Certficate</code> from this entry. * Gets the trusted {@code Certficate} from this entry.
* *
* @return the trusted <code>Certificate</code> from this entry * @return the trusted {@code Certificate} from this entry
*/ */
public Certificate getTrustedCertificate() { public Certificate getTrustedCertificate() {
return cert; return cert;
...@@ -1129,9 +1129,9 @@ public class KeyStore { ...@@ -1129,9 +1129,9 @@ public class KeyStore {
/** /**
* Returns the key associated with the given alias, using the given * Returns the key associated with the given alias, using the given
* password to recover it. The key must have been associated with * password to recover it. The key must have been associated with
* the alias by a call to <code>setKeyEntry</code>, * the alias by a call to {@code setKeyEntry},
* or by a call to <code>setEntry</code> with a * or by a call to {@code setEntry} with a
* <code>PrivateKeyEntry</code> or <code>SecretKeyEntry</code>. * {@code PrivateKeyEntry} or {@code SecretKeyEntry}.
* *
* @param alias the alias name * @param alias the alias name
* @param password the password for recovering the key * @param password the password for recovering the key
...@@ -1159,9 +1159,9 @@ public class KeyStore { ...@@ -1159,9 +1159,9 @@ public class KeyStore {
/** /**
* Returns the certificate chain associated with the given alias. * Returns the certificate chain associated with the given alias.
* The certificate chain must have been associated with the alias * The certificate chain must have been associated with the alias
* by a call to <code>setKeyEntry</code>, * by a call to {@code setKeyEntry},
* or by a call to <code>setEntry</code> with a * or by a call to {@code setEntry} with a
* <code>PrivateKeyEntry</code>. * {@code PrivateKeyEntry}.
* *
* @param alias the alias name * @param alias the alias name
* *
...@@ -1185,15 +1185,15 @@ public class KeyStore { ...@@ -1185,15 +1185,15 @@ public class KeyStore {
* Returns the certificate associated with the given alias. * Returns the certificate associated with the given alias.
* *
* <p> If the given alias name identifies an entry * <p> If the given alias name identifies an entry
* created by a call to <code>setCertificateEntry</code>, * created by a call to {@code setCertificateEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>TrustedCertificateEntry</code>, * {@code TrustedCertificateEntry},
* then the trusted certificate contained in that entry is returned. * then the trusted certificate contained in that entry is returned.
* *
* <p> If the given alias name identifies an entry * <p> If the given alias name identifies an entry
* created by a call to <code>setKeyEntry</code>, * created by a call to {@code setKeyEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>PrivateKeyEntry</code>, * {@code PrivateKeyEntry},
* then the first element of the certificate chain in that entry * then the first element of the certificate chain in that entry
* is returned. * is returned.
* *
...@@ -1238,7 +1238,7 @@ public class KeyStore { ...@@ -1238,7 +1238,7 @@ public class KeyStore {
* Assigns the given key to the given alias, protecting it with the given * Assigns the given key to the given alias, protecting it with the given
* password. * password.
* *
* <p>If the given key is of type <code>java.security.PrivateKey</code>, * <p>If the given key is of type {@code java.security.PrivateKey},
* it must be accompanied by a certificate chain certifying the * it must be accompanied by a certificate chain certifying the
* corresponding public key. * corresponding public key.
* *
...@@ -1251,7 +1251,7 @@ public class KeyStore { ...@@ -1251,7 +1251,7 @@ public class KeyStore {
* @param password the password to protect the key * @param password the password to protect the key
* @param chain the certificate chain for the corresponding public * @param chain the certificate chain for the corresponding public
* key (only required if the given key is of type * key (only required if the given key is of type
* <code>java.security.PrivateKey</code>). * {@code java.security.PrivateKey}).
* *
* @exception KeyStoreException if the keystore has not been initialized * @exception KeyStoreException if the keystore has not been initialized
* (loaded), the given key cannot be protected, or this operation fails * (loaded), the given key cannot be protected, or this operation fails
...@@ -1278,11 +1278,11 @@ public class KeyStore { ...@@ -1278,11 +1278,11 @@ public class KeyStore {
* alias. * alias.
* *
* <p>If the protected key is of type * <p>If the protected key is of type
* <code>java.security.PrivateKey</code>, it must be accompanied by a * {@code java.security.PrivateKey}, it must be accompanied by a
* certificate chain certifying the corresponding public key. If the * certificate chain certifying the corresponding public key. If the
* underlying keystore implementation is of type <code>jks</code>, * underlying keystore implementation is of type {@code jks},
* <code>key</code> must be encoded as an * {@code key} must be encoded as an
* <code>EncryptedPrivateKeyInfo</code> as defined in the PKCS #8 standard. * {@code EncryptedPrivateKeyInfo} as defined in the PKCS #8 standard.
* *
* <p>If the given alias already exists, the keystore information * <p>If the given alias already exists, the keystore information
* associated with it is overridden by the given key (and possibly * associated with it is overridden by the given key (and possibly
...@@ -1292,7 +1292,7 @@ public class KeyStore { ...@@ -1292,7 +1292,7 @@ public class KeyStore {
* @param key the key (in protected format) to be associated with the alias * @param key the key (in protected format) to be associated with the alias
* @param chain the certificate chain for the corresponding public * @param chain the certificate chain for the corresponding public
* key (only useful if the protected key is of type * key (only useful if the protected key is of type
* <code>java.security.PrivateKey</code>). * {@code java.security.PrivateKey}).
* *
* @exception KeyStoreException if the keystore has not been initialized * @exception KeyStoreException if the keystore has not been initialized
* (loaded), or if this operation fails for some other reason. * (loaded), or if this operation fails for some other reason.
...@@ -1311,9 +1311,9 @@ public class KeyStore { ...@@ -1311,9 +1311,9 @@ public class KeyStore {
* Assigns the given trusted certificate to the given alias. * Assigns the given trusted certificate to the given alias.
* *
* <p> If the given alias identifies an existing entry * <p> If the given alias identifies an existing entry
* created by a call to <code>setCertificateEntry</code>, * created by a call to {@code setCertificateEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>TrustedCertificateEntry</code>, * {@code TrustedCertificateEntry},
* the trusted certificate in the existing entry * the trusted certificate in the existing entry
* is overridden by the given certificate. * is overridden by the given certificate.
* *
...@@ -1406,9 +1406,9 @@ public class KeyStore { ...@@ -1406,9 +1406,9 @@ public class KeyStore {
/** /**
* Returns true if the entry identified by the given alias * Returns true if the entry identified by the given alias
* was created by a call to <code>setKeyEntry</code>, * was created by a call to {@code setKeyEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>PrivateKeyEntry</code> or a <code>SecretKeyEntry</code>. * {@code PrivateKeyEntry} or a {@code SecretKeyEntry}.
* *
* @param alias the alias for the keystore entry to be checked * @param alias the alias for the keystore entry to be checked
* *
...@@ -1429,9 +1429,9 @@ public class KeyStore { ...@@ -1429,9 +1429,9 @@ public class KeyStore {
/** /**
* Returns true if the entry identified by the given alias * Returns true if the entry identified by the given alias
* was created by a call to <code>setCertificateEntry</code>, * was created by a call to {@code setCertificateEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>TrustedCertificateEntry</code>. * {@code TrustedCertificateEntry}.
* *
* @param alias the alias for the keystore entry to be checked * @param alias the alias for the keystore entry to be checked
* *
...@@ -1456,15 +1456,15 @@ public class KeyStore { ...@@ -1456,15 +1456,15 @@ public class KeyStore {
* *
* <p> This method attempts to match the given certificate with each * <p> This method attempts to match the given certificate with each
* keystore entry. If the entry being considered was * keystore entry. If the entry being considered was
* created by a call to <code>setCertificateEntry</code>, * created by a call to {@code setCertificateEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>TrustedCertificateEntry</code>, * {@code TrustedCertificateEntry},
* then the given certificate is compared to that entry's certificate. * then the given certificate is compared to that entry's certificate.
* *
* <p> If the entry being considered was * <p> If the entry being considered was
* created by a call to <code>setKeyEntry</code>, * created by a call to {@code setKeyEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>PrivateKeyEntry</code>, * {@code PrivateKeyEntry},
* then the given certificate is compared to the first * then the given certificate is compared to the first
* element of that entry's certificate chain. * element of that entry's certificate chain.
* *
...@@ -1511,14 +1511,14 @@ public class KeyStore { ...@@ -1511,14 +1511,14 @@ public class KeyStore {
} }
/** /**
* Stores this keystore using the given <code>LoadStoreParameter</code>. * Stores this keystore using the given {@code LoadStoreParameter}.
* *
* @param param the <code>LoadStoreParameter</code> * @param param the {@code LoadStoreParameter}
* that specifies how to store the keystore, * that specifies how to store the keystore,
* which may be <code>null</code> * which may be {@code null}
* *
* @exception IllegalArgumentException if the given * @exception IllegalArgumentException if the given
* <code>LoadStoreParameter</code> * {@code LoadStoreParameter}
* input is not recognized * input is not recognized
* @exception KeyStoreException if the keystore has not been initialized * @exception KeyStoreException if the keystore has not been initialized
* (loaded) * (loaded)
...@@ -1549,24 +1549,24 @@ public class KeyStore { ...@@ -1549,24 +1549,24 @@ public class KeyStore {
* then integrity checking is not performed. * then integrity checking is not performed.
* *
* <p>In order to create an empty keystore, or if the keystore cannot * <p>In order to create an empty keystore, or if the keystore cannot
* be initialized from a stream, pass <code>null</code> * be initialized from a stream, pass {@code null}
* as the <code>stream</code> argument. * as the {@code stream} argument.
* *
* <p> Note that if this keystore has already been loaded, it is * <p> Note that if this keystore has already been loaded, it is
* reinitialized and loaded again from the given input stream. * reinitialized and loaded again from the given input stream.
* *
* @param stream the input stream from which the keystore is loaded, * @param stream the input stream from which the keystore is loaded,
* or <code>null</code> * or {@code null}
* @param password the password used to check the integrity of * @param password the password used to check the integrity of
* the keystore, the password used to unlock the keystore, * the keystore, the password used to unlock the keystore,
* or <code>null</code> * or {@code null}
* *
* @exception IOException if there is an I/O or format problem with the * @exception IOException if there is an I/O or format problem with the
* keystore data, if a password is required but not given, * keystore data, if a password is required but not given,
* or if the given password was incorrect. If the error is due to a * or if the given password was incorrect. If the error is due to a
* wrong password, the {@link Throwable#getCause cause} of the * wrong password, the {@link Throwable#getCause cause} of the
* <code>IOException</code> should be an * {@code IOException} should be an
* <code>UnrecoverableKeyException</code> * {@code UnrecoverableKeyException}
* @exception NoSuchAlgorithmException if the algorithm used to check * @exception NoSuchAlgorithmException if the algorithm used to check
* the integrity of the keystore cannot be found * the integrity of the keystore cannot be found
* @exception CertificateException if any of the certificates in the * @exception CertificateException if any of the certificates in the
...@@ -1580,24 +1580,24 @@ public class KeyStore { ...@@ -1580,24 +1580,24 @@ public class KeyStore {
} }
/** /**
* Loads this keystore using the given <code>LoadStoreParameter</code>. * Loads this keystore using the given {@code LoadStoreParameter}.
* *
* <p> Note that if this KeyStore has already been loaded, it is * <p> Note that if this KeyStore has already been loaded, it is
* reinitialized and loaded again from the given parameter. * reinitialized and loaded again from the given parameter.
* *
* @param param the <code>LoadStoreParameter</code> * @param param the {@code LoadStoreParameter}
* that specifies how to load the keystore, * that specifies how to load the keystore,
* which may be <code>null</code> * which may be {@code null}
* *
* @exception IllegalArgumentException if the given * @exception IllegalArgumentException if the given
* <code>LoadStoreParameter</code> * {@code LoadStoreParameter}
* input is not recognized * input is not recognized
* @exception IOException if there is an I/O or format problem with the * @exception IOException if there is an I/O or format problem with the
* keystore data. If the error is due to an incorrect * keystore data. If the error is due to an incorrect
* <code>ProtectionParameter</code> (e.g. wrong password) * {@code ProtectionParameter} (e.g. wrong password)
* the {@link Throwable#getCause cause} of the * the {@link Throwable#getCause cause} of the
* <code>IOException</code> should be an * {@code IOException} should be an
* <code>UnrecoverableKeyException</code> * {@code UnrecoverableKeyException}
* @exception NoSuchAlgorithmException if the algorithm used to check * @exception NoSuchAlgorithmException if the algorithm used to check
* the integrity of the keystore cannot be found * the integrity of the keystore cannot be found
* @exception CertificateException if any of the certificates in the * @exception CertificateException if any of the certificates in the
...@@ -1614,26 +1614,26 @@ public class KeyStore { ...@@ -1614,26 +1614,26 @@ public class KeyStore {
} }
/** /**
* Gets a keystore <code>Entry</code> for the specified alias * Gets a keystore {@code Entry} for the specified alias
* with the specified protection parameter. * with the specified protection parameter.
* *
* @param alias get the keystore <code>Entry</code> for this alias * @param alias get the keystore {@code Entry} for this alias
* @param protParam the <code>ProtectionParameter</code> * @param protParam the {@code ProtectionParameter}
* used to protect the <code>Entry</code>, * used to protect the {@code Entry},
* which may be <code>null</code> * which may be {@code null}
* *
* @return the keystore <code>Entry</code> for the specified alias, * @return the keystore {@code Entry} for the specified alias,
* or <code>null</code> if there is no such entry * or {@code null} if there is no such entry
* *
* @exception NullPointerException if * @exception NullPointerException if
* <code>alias</code> is <code>null</code> * {@code alias} is {@code null}
* @exception NoSuchAlgorithmException if the algorithm for recovering the * @exception NoSuchAlgorithmException if the algorithm for recovering the
* entry cannot be found * entry cannot be found
* @exception UnrecoverableEntryException if the specified * @exception UnrecoverableEntryException if the specified
* <code>protParam</code> were insufficient or invalid * {@code protParam} were insufficient or invalid
* @exception UnrecoverableKeyException if the entry is a * @exception UnrecoverableKeyException if the entry is a
* <code>PrivateKeyEntry</code> or <code>SecretKeyEntry</code> * {@code PrivateKeyEntry} or {@code SecretKeyEntry}
* and the specified <code>protParam</code> does not contain * and the specified {@code protParam} does not contain
* the information needed to recover the key (e.g. wrong password) * the information needed to recover the key (e.g. wrong password)
* @exception KeyStoreException if the keystore has not been initialized * @exception KeyStoreException if the keystore has not been initialized
* (loaded). * (loaded).
...@@ -1655,22 +1655,22 @@ public class KeyStore { ...@@ -1655,22 +1655,22 @@ public class KeyStore {
} }
/** /**
* Saves a keystore <code>Entry</code> under the specified alias. * Saves a keystore {@code Entry} under the specified alias.
* The protection parameter is used to protect the * The protection parameter is used to protect the
* <code>Entry</code>. * {@code Entry}.
* *
* <p> If an entry already exists for the specified alias, * <p> If an entry already exists for the specified alias,
* it is overridden. * it is overridden.
* *
* @param alias save the keystore <code>Entry</code> under this alias * @param alias save the keystore {@code Entry} under this alias
* @param entry the <code>Entry</code> to save * @param entry the {@code Entry} to save
* @param protParam the <code>ProtectionParameter</code> * @param protParam the {@code ProtectionParameter}
* used to protect the <code>Entry</code>, * used to protect the {@code Entry},
* which may be <code>null</code> * which may be {@code null}
* *
* @exception NullPointerException if * @exception NullPointerException if
* <code>alias</code> or <code>entry</code> * {@code alias} or {@code entry}
* is <code>null</code> * is {@code null}
* @exception KeyStoreException if the keystore has not been initialized * @exception KeyStoreException if the keystore has not been initialized
* (loaded), or if this operation fails for some other reason * (loaded), or if this operation fails for some other reason
* *
...@@ -1691,20 +1691,20 @@ public class KeyStore { ...@@ -1691,20 +1691,20 @@ public class KeyStore {
} }
/** /**
* Determines if the keystore <code>Entry</code> for the specified * Determines if the keystore {@code Entry} for the specified
* <code>alias</code> is an instance or subclass of the specified * {@code alias} is an instance or subclass of the specified
* <code>entryClass</code>. * {@code entryClass}.
* *
* @param alias the alias name * @param alias the alias name
* @param entryClass the entry class * @param entryClass the entry class
* *
* @return true if the keystore <code>Entry</code> for the specified * @return true if the keystore {@code Entry} for the specified
* <code>alias</code> is an instance or subclass of the * {@code alias} is an instance or subclass of the
* specified <code>entryClass</code>, false otherwise * specified {@code entryClass}, false otherwise
* *
* @exception NullPointerException if * @exception NullPointerException if
* <code>alias</code> or <code>entryClass</code> * {@code alias} or {@code entryClass}
* is <code>null</code> * is {@code null}
* @exception KeyStoreException if the keystore has not been * @exception KeyStoreException if the keystore has not been
* initialized (loaded) * initialized (loaded)
* *
...@@ -1764,7 +1764,7 @@ public class KeyStore { ...@@ -1764,7 +1764,7 @@ public class KeyStore {
/** /**
* Returns the ProtectionParameters that should be used to obtain * Returns the ProtectionParameters that should be used to obtain
* the {@link KeyStore.Entry Entry} with the given alias. * the {@link KeyStore.Entry Entry} with the given alias.
* The <code>getKeyStore</code> method must be invoked before this * The {@code getKeyStore} method must be invoked before this
* method may be called. * method may be called.
* *
* @return the ProtectionParameters that should be used to obtain * @return the ProtectionParameters that should be used to obtain
...@@ -1782,9 +1782,9 @@ public class KeyStore { ...@@ -1782,9 +1782,9 @@ public class KeyStore {
/** /**
* Returns a new Builder that encapsulates the given KeyStore. * Returns a new Builder that encapsulates the given KeyStore.
* The {@linkplain #getKeyStore} method of the returned object * The {@linkplain #getKeyStore} method of the returned object
* will return <code>keyStore</code>, the {@linkplain * will return {@code keyStore}, the {@linkplain
* #getProtectionParameter getProtectionParameter()} method will * #getProtectionParameter getProtectionParameter()} method will
* return <code>protectionParameters</code>. * return {@code protectionParameters}.
* *
* <p> This is useful if an existing KeyStore object needs to be * <p> This is useful if an existing KeyStore object needs to be
* used with Builder-based APIs. * used with Builder-based APIs.
...@@ -1832,15 +1832,15 @@ public class KeyStore { ...@@ -1832,15 +1832,15 @@ public class KeyStore {
* Returns a new Builder object. * Returns a new Builder object.
* *
* <p>The first call to the {@link #getKeyStore} method on the returned * <p>The first call to the {@link #getKeyStore} method on the returned
* builder will create a KeyStore of type <code>type</code> and call * builder will create a KeyStore of type {@code type} and call
* its {@link KeyStore#load load()} method. * its {@link KeyStore#load load()} method.
* The <code>inputStream</code> argument is constructed from * The {@code inputStream} argument is constructed from
* <code>file</code>. * {@code file}.
* If <code>protection</code> is a * If {@code protection} is a
* <code>PasswordProtection</code>, the password is obtained by * {@code PasswordProtection}, the password is obtained by
* calling the <code>getPassword</code> method. * calling the {@code getPassword} method.
* Otherwise, if <code>protection</code> is a * Otherwise, if {@code protection} is a
* <code>CallbackHandlerProtection</code>, the password is obtained * {@code CallbackHandlerProtection}, the password is obtained
* by invoking the CallbackHandler. * by invoking the CallbackHandler.
* *
* <p>Subsequent calls to {@link #getKeyStore} return the same object * <p>Subsequent calls to {@link #getKeyStore} return the same object
...@@ -1848,13 +1848,13 @@ public class KeyStore { ...@@ -1848,13 +1848,13 @@ public class KeyStore {
* KeyStoreException, subsequent calls also throw a * KeyStoreException, subsequent calls also throw a
* KeyStoreException. * KeyStoreException.
* *
* <p>The KeyStore is instantiated from <code>provider</code> if * <p>The KeyStore is instantiated from {@code provider} if
* non-null. Otherwise, all installed providers are searched. * non-null. Otherwise, all installed providers are searched.
* *
* <p>Calls to {@link #getProtectionParameter getProtectionParameter()} * <p>Calls to {@link #getProtectionParameter getProtectionParameter()}
* will return a {@link KeyStore.PasswordProtection PasswordProtection} * will return a {@link KeyStore.PasswordProtection PasswordProtection}
* object encapsulating the password that was used to invoke the * object encapsulating the password that was used to invoke the
* <code>load</code> method. * {@code load} method.
* *
* <p><em>Note</em> that the {@link #getKeyStore} method is executed * <p><em>Note</em> that the {@link #getKeyStore} method is executed
* within the {@link AccessControlContext} of the code invoking this * within the {@link AccessControlContext} of the code invoking this
...@@ -2013,17 +2013,17 @@ public class KeyStore { ...@@ -2013,17 +2013,17 @@ public class KeyStore {
* Returns a new Builder object. * Returns a new Builder object.
* *
* <p>Each call to the {@link #getKeyStore} method on the returned * <p>Each call to the {@link #getKeyStore} method on the returned
* builder will return a new KeyStore object of type <code>type</code>. * builder will return a new KeyStore object of type {@code type}.
* Its {@link KeyStore#load(KeyStore.LoadStoreParameter) load()} * Its {@link KeyStore#load(KeyStore.LoadStoreParameter) load()}
* method is invoked using a * method is invoked using a
* <code>LoadStoreParameter</code> that encapsulates * {@code LoadStoreParameter} that encapsulates
* <code>protection</code>. * {@code protection}.
* *
* <p>The KeyStore is instantiated from <code>provider</code> if * <p>The KeyStore is instantiated from {@code provider} if
* non-null. Otherwise, all installed providers are searched. * non-null. Otherwise, all installed providers are searched.
* *
* <p>Calls to {@link #getProtectionParameter getProtectionParameter()} * <p>Calls to {@link #getProtectionParameter getProtectionParameter()}
* will return <code>protection</code>. * will return {@code protection}.
* *
* <p><em>Note</em> that the {@link #getKeyStore} method is executed * <p><em>Note</em> that the {@link #getKeyStore} method is executed
* within the {@link AccessControlContext} of the code invoking this * within the {@link AccessControlContext} of the code invoking this
......
/* /*
* Copyright (c) 1997, 2003, 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
...@@ -59,13 +59,13 @@ public class KeyStoreException extends GeneralSecurityException { ...@@ -59,13 +59,13 @@ public class KeyStoreException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>KeyStoreException</code> with the specified * Creates a {@code KeyStoreException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -74,13 +74,13 @@ public class KeyStoreException extends GeneralSecurityException { ...@@ -74,13 +74,13 @@ public class KeyStoreException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>KeyStoreException</code> with the specified cause * Creates a {@code KeyStoreException} with the specified cause
* and a detail message of <tt>(cause==null ? null : cause.toString())</tt> * and a detail message of {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* Copyright (c) 1998, 2006, 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
...@@ -38,7 +38,7 @@ import javax.security.auth.callback.*; ...@@ -38,7 +38,7 @@ import javax.security.auth.callback.*;
/** /**
* 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>KeyStore</code> class. * for the {@code KeyStore} 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
* cryptographic service provider who wishes to supply the implementation * cryptographic service provider who wishes to supply the implementation
* of a keystore for a particular keystore type. * of a keystore for a particular keystore type.
...@@ -56,9 +56,9 @@ public abstract class KeyStoreSpi { ...@@ -56,9 +56,9 @@ public abstract class KeyStoreSpi {
/** /**
* Returns the key associated with the given alias, using the given * Returns the key associated with the given alias, using the given
* password to recover it. The key must have been associated with * password to recover it. The key must have been associated with
* the alias by a call to <code>setKeyEntry</code>, * the alias by a call to {@code setKeyEntry},
* or by a call to <code>setEntry</code> with a * or by a call to {@code setEntry} with a
* <code>PrivateKeyEntry</code> or <code>SecretKeyEntry</code>. * {@code PrivateKeyEntry} or {@code SecretKeyEntry}.
* *
* @param alias the alias name * @param alias the alias name
* @param password the password for recovering the key * @param password the password for recovering the key
...@@ -77,9 +77,9 @@ public abstract class KeyStoreSpi { ...@@ -77,9 +77,9 @@ public abstract class KeyStoreSpi {
/** /**
* Returns the certificate chain associated with the given alias. * Returns the certificate chain associated with the given alias.
* The certificate chain must have been associated with the alias * The certificate chain must have been associated with the alias
* by a call to <code>setKeyEntry</code>, * by a call to {@code setKeyEntry},
* or by a call to <code>setEntry</code> with a * or by a call to {@code setEntry} with a
* <code>PrivateKeyEntry</code>. * {@code PrivateKeyEntry}.
* *
* @param alias the alias name * @param alias the alias name
* *
...@@ -93,15 +93,15 @@ public abstract class KeyStoreSpi { ...@@ -93,15 +93,15 @@ public abstract class KeyStoreSpi {
* Returns the certificate associated with the given alias. * Returns the certificate associated with the given alias.
* *
* <p> If the given alias name identifies an entry * <p> If the given alias name identifies an entry
* created by a call to <code>setCertificateEntry</code>, * created by a call to {@code setCertificateEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>TrustedCertificateEntry</code>, * {@code TrustedCertificateEntry},
* then the trusted certificate contained in that entry is returned. * then the trusted certificate contained in that entry is returned.
* *
* <p> If the given alias name identifies an entry * <p> If the given alias name identifies an entry
* created by a call to <code>setKeyEntry</code>, * created by a call to {@code setKeyEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>PrivateKeyEntry</code>, * {@code PrivateKeyEntry},
* then the first element of the certificate chain in that entry * then the first element of the certificate chain in that entry
* (if a chain exists) is returned. * (if a chain exists) is returned.
* *
...@@ -126,7 +126,7 @@ public abstract class KeyStoreSpi { ...@@ -126,7 +126,7 @@ public abstract class KeyStoreSpi {
* Assigns the given key to the given alias, protecting it with the given * Assigns the given key to the given alias, protecting it with the given
* password. * password.
* *
* <p>If the given key is of type <code>java.security.PrivateKey</code>, * <p>If the given key is of type {@code java.security.PrivateKey},
* it must be accompanied by a certificate chain certifying the * it must be accompanied by a certificate chain certifying the
* corresponding public key. * corresponding public key.
* *
...@@ -139,7 +139,7 @@ public abstract class KeyStoreSpi { ...@@ -139,7 +139,7 @@ public abstract class KeyStoreSpi {
* @param password the password to protect the key * @param password the password to protect the key
* @param chain the certificate chain for the corresponding public * @param chain the certificate chain for the corresponding public
* key (only required if the given key is of type * key (only required if the given key is of type
* <code>java.security.PrivateKey</code>). * {@code java.security.PrivateKey}).
* *
* @exception KeyStoreException if the given key cannot be protected, or * @exception KeyStoreException if the given key cannot be protected, or
* this operation fails for some other reason * this operation fails for some other reason
...@@ -154,7 +154,7 @@ public abstract class KeyStoreSpi { ...@@ -154,7 +154,7 @@ public abstract class KeyStoreSpi {
* alias. * alias.
* *
* <p>If the protected key is of type * <p>If the protected key is of type
* <code>java.security.PrivateKey</code>, * {@code java.security.PrivateKey},
* it must be accompanied by a certificate chain certifying the * it must be accompanied by a certificate chain certifying the
* corresponding public key. * corresponding public key.
* *
...@@ -166,7 +166,7 @@ public abstract class KeyStoreSpi { ...@@ -166,7 +166,7 @@ public abstract class KeyStoreSpi {
* @param key the key (in protected format) to be associated with the alias * @param key the key (in protected format) to be associated with the alias
* @param chain the certificate chain for the corresponding public * @param chain the certificate chain for the corresponding public
* key (only useful if the protected key is of type * key (only useful if the protected key is of type
* <code>java.security.PrivateKey</code>). * {@code java.security.PrivateKey}).
* *
* @exception KeyStoreException if this operation fails. * @exception KeyStoreException if this operation fails.
*/ */
...@@ -178,9 +178,9 @@ public abstract class KeyStoreSpi { ...@@ -178,9 +178,9 @@ public abstract class KeyStoreSpi {
* Assigns the given certificate to the given alias. * Assigns the given certificate to the given alias.
* *
* <p> If the given alias identifies an existing entry * <p> If the given alias identifies an existing entry
* created by a call to <code>setCertificateEntry</code>, * created by a call to {@code setCertificateEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>TrustedCertificateEntry</code>, * {@code TrustedCertificateEntry},
* the trusted certificate in the existing entry * the trusted certificate in the existing entry
* is overridden by the given certificate. * is overridden by the given certificate.
* *
...@@ -230,9 +230,9 @@ public abstract class KeyStoreSpi { ...@@ -230,9 +230,9 @@ public abstract class KeyStoreSpi {
/** /**
* Returns true if the entry identified by the given alias * Returns true if the entry identified by the given alias
* was created by a call to <code>setKeyEntry</code>, * was created by a call to {@code setKeyEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>PrivateKeyEntry</code> or a <code>SecretKeyEntry</code>. * {@code PrivateKeyEntry} or a {@code SecretKeyEntry}.
* *
* @param alias the alias for the keystore entry to be checked * @param alias the alias for the keystore entry to be checked
* *
...@@ -243,9 +243,9 @@ public abstract class KeyStoreSpi { ...@@ -243,9 +243,9 @@ public abstract class KeyStoreSpi {
/** /**
* Returns true if the entry identified by the given alias * Returns true if the entry identified by the given alias
* was created by a call to <code>setCertificateEntry</code>, * was created by a call to {@code setCertificateEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>TrustedCertificateEntry</code>. * {@code TrustedCertificateEntry}.
* *
* @param alias the alias for the keystore entry to be checked * @param alias the alias for the keystore entry to be checked
* *
...@@ -260,15 +260,15 @@ public abstract class KeyStoreSpi { ...@@ -260,15 +260,15 @@ public abstract class KeyStoreSpi {
* *
* <p>This method attempts to match the given certificate with each * <p>This method attempts to match the given certificate with each
* keystore entry. If the entry being considered was * keystore entry. If the entry being considered was
* created by a call to <code>setCertificateEntry</code>, * created by a call to {@code setCertificateEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>TrustedCertificateEntry</code>, * {@code TrustedCertificateEntry},
* then the given certificate is compared to that entry's certificate. * then the given certificate is compared to that entry's certificate.
* *
* <p> If the entry being considered was * <p> If the entry being considered was
* created by a call to <code>setKeyEntry</code>, * created by a call to {@code setKeyEntry},
* or created by a call to <code>setEntry</code> with a * or created by a call to {@code setEntry} with a
* <code>PrivateKeyEntry</code>, * {@code PrivateKeyEntry},
* then the given certificate is compared to the first * then the given certificate is compared to the first
* element of that entry's certificate chain. * element of that entry's certificate chain.
* *
...@@ -297,14 +297,14 @@ public abstract class KeyStoreSpi { ...@@ -297,14 +297,14 @@ public abstract class KeyStoreSpi {
/** /**
* Stores this keystore using the given * Stores this keystore using the given
* <code>KeyStore.LoadStoreParmeter</code>. * {@code KeyStore.LoadStoreParmeter}.
* *
* @param param the <code>KeyStore.LoadStoreParmeter</code> * @param param the {@code KeyStore.LoadStoreParmeter}
* that specifies how to store the keystore, * that specifies how to store the keystore,
* which may be <code>null</code> * which may be {@code null}
* *
* @exception IllegalArgumentException if the given * @exception IllegalArgumentException if the given
* <code>KeyStore.LoadStoreParmeter</code> * {@code KeyStore.LoadStoreParmeter}
* input is not recognized * input is not recognized
* @exception IOException if there was an I/O problem with data * @exception IOException if there was an I/O problem with data
* @exception NoSuchAlgorithmException if the appropriate data integrity * @exception NoSuchAlgorithmException if the appropriate data integrity
...@@ -330,17 +330,17 @@ public abstract class KeyStoreSpi { ...@@ -330,17 +330,17 @@ public abstract class KeyStoreSpi {
* then integrity checking is not performed. * then integrity checking is not performed.
* *
* @param stream the input stream from which the keystore is loaded, * @param stream the input stream from which the keystore is loaded,
* or <code>null</code> * or {@code null}
* @param password the password used to check the integrity of * @param password the password used to check the integrity of
* the keystore, the password used to unlock the keystore, * the keystore, the password used to unlock the keystore,
* or <code>null</code> * or {@code null}
* *
* @exception IOException if there is an I/O or format problem with the * @exception IOException if there is an I/O or format problem with the
* keystore data, if a password is required but not given, * keystore data, if a password is required but not given,
* or if the given password was incorrect. If the error is due to a * or if the given password was incorrect. If the error is due to a
* wrong password, the {@link Throwable#getCause cause} of the * wrong password, the {@link Throwable#getCause cause} of the
* <code>IOException</code> should be an * {@code IOException} should be an
* <code>UnrecoverableKeyException</code> * {@code UnrecoverableKeyException}
* @exception NoSuchAlgorithmException if the algorithm used to check * @exception NoSuchAlgorithmException if the algorithm used to check
* the integrity of the keystore cannot be found * the integrity of the keystore cannot be found
* @exception CertificateException if any of the certificates in the * @exception CertificateException if any of the certificates in the
...@@ -351,24 +351,24 @@ public abstract class KeyStoreSpi { ...@@ -351,24 +351,24 @@ public abstract class KeyStoreSpi {
/** /**
* Loads the keystore using the given * Loads the keystore using the given
* <code>KeyStore.LoadStoreParameter</code>. * {@code KeyStore.LoadStoreParameter}.
* *
* <p> Note that if this KeyStore has already been loaded, it is * <p> Note that if this KeyStore has already been loaded, it is
* reinitialized and loaded again from the given parameter. * reinitialized and loaded again from the given parameter.
* *
* @param param the <code>KeyStore.LoadStoreParameter</code> * @param param the {@code KeyStore.LoadStoreParameter}
* that specifies how to load the keystore, * that specifies how to load the keystore,
* which may be <code>null</code> * which may be {@code null}
* *
* @exception IllegalArgumentException if the given * @exception IllegalArgumentException if the given
* <code>KeyStore.LoadStoreParameter</code> * {@code KeyStore.LoadStoreParameter}
* input is not recognized * input is not recognized
* @exception IOException if there is an I/O or format problem with the * @exception IOException if there is an I/O or format problem with the
* keystore data. If the error is due to an incorrect * keystore data. If the error is due to an incorrect
* <code>ProtectionParameter</code> (e.g. wrong password) * {@code ProtectionParameter} (e.g. wrong password)
* the {@link Throwable#getCause cause} of the * the {@link Throwable#getCause cause} of the
* <code>IOException</code> should be an * {@code IOException} should be an
* <code>UnrecoverableKeyException</code> * {@code UnrecoverableKeyException}
* @exception NoSuchAlgorithmException if the algorithm used to check * @exception NoSuchAlgorithmException if the algorithm used to check
* the integrity of the keystore cannot be found * the integrity of the keystore cannot be found
* @exception CertificateException if any of the certificates in the * @exception CertificateException if any of the certificates in the
...@@ -419,25 +419,25 @@ public abstract class KeyStoreSpi { ...@@ -419,25 +419,25 @@ public abstract class KeyStoreSpi {
} }
/** /**
* Gets a <code>KeyStore.Entry</code> for the specified alias * Gets a {@code KeyStore.Entry} for the specified alias
* with the specified protection parameter. * with the specified protection parameter.
* *
* @param alias get the <code>KeyStore.Entry</code> for this alias * @param alias get the {@code KeyStore.Entry} for this alias
* @param protParam the <code>ProtectionParameter</code> * @param protParam the {@code ProtectionParameter}
* used to protect the <code>Entry</code>, * used to protect the {@code Entry},
* which may be <code>null</code> * which may be {@code null}
* *
* @return the <code>KeyStore.Entry</code> for the specified alias, * @return the {@code KeyStore.Entry} for the specified alias,
* or <code>null</code> if there is no such entry * or {@code null} if there is no such entry
* *
* @exception KeyStoreException if the operation failed * @exception KeyStoreException if the operation failed
* @exception NoSuchAlgorithmException if the algorithm for recovering the * @exception NoSuchAlgorithmException if the algorithm for recovering the
* entry cannot be found * entry cannot be found
* @exception UnrecoverableEntryException if the specified * @exception UnrecoverableEntryException if the specified
* <code>protParam</code> were insufficient or invalid * {@code protParam} were insufficient or invalid
* @exception UnrecoverableKeyException if the entry is a * @exception UnrecoverableKeyException if the entry is a
* <code>PrivateKeyEntry</code> or <code>SecretKeyEntry</code> * {@code PrivateKeyEntry} or {@code SecretKeyEntry}
* and the specified <code>protParam</code> does not contain * and the specified {@code protParam} does not contain
* the information needed to recover the key (e.g. wrong password) * the information needed to recover the key (e.g. wrong password)
* *
* @since 1.5 * @since 1.5
...@@ -484,18 +484,18 @@ public abstract class KeyStoreSpi { ...@@ -484,18 +484,18 @@ public abstract class KeyStoreSpi {
} }
/** /**
* Saves a <code>KeyStore.Entry</code> under the specified alias. * Saves a {@code KeyStore.Entry} under the specified alias.
* The specified protection parameter is used to protect the * The specified protection parameter is used to protect the
* <code>Entry</code>. * {@code Entry}.
* *
* <p> If an entry already exists for the specified alias, * <p> If an entry already exists for the specified alias,
* it is overridden. * it is overridden.
* *
* @param alias save the <code>KeyStore.Entry</code> under this alias * @param alias save the {@code KeyStore.Entry} under this alias
* @param entry the <code>Entry</code> to save * @param entry the {@code Entry} to save
* @param protParam the <code>ProtectionParameter</code> * @param protParam the {@code ProtectionParameter}
* used to protect the <code>Entry</code>, * used to protect the {@code Entry},
* which may be <code>null</code> * which may be {@code null}
* *
* @exception KeyStoreException if this operation fails * @exception KeyStoreException if this operation fails
* *
...@@ -560,16 +560,16 @@ public abstract class KeyStoreSpi { ...@@ -560,16 +560,16 @@ public abstract class KeyStoreSpi {
} }
/** /**
* Determines if the keystore <code>Entry</code> for the specified * Determines if the keystore {@code Entry} for the specified
* <code>alias</code> is an instance or subclass of the specified * {@code alias} is an instance or subclass of the specified
* <code>entryClass</code>. * {@code entryClass}.
* *
* @param alias the alias name * @param alias the alias name
* @param entryClass the entry class * @param entryClass the entry class
* *
* @return true if the keystore <code>Entry</code> for the specified * @return true if the keystore {@code Entry} for the specified
* <code>alias</code> is an instance or subclass of the * {@code alias} is an instance or subclass of the
* specified <code>entryClass</code>, false otherwise * specified {@code entryClass}, false otherwise
* *
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* 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
...@@ -48,8 +48,8 @@ import java.nio.ByteBuffer; ...@@ -48,8 +48,8 @@ import java.nio.ByteBuffer;
* updated, one of the {@link #digest() digest} methods should * updated, one of the {@link #digest() digest} methods should
* be called to complete the hash computation. * be called to complete the hash computation.
* *
* <p>The <code>digest</code> method can be called once for a given number * <p>The {@code digest} method can be called once for a given number
* of updates. After <code>digest</code> has been called, the MessageDigest * of updates. After {@code digest} has been called, the MessageDigest
* object is reset to its initialized state. * object is reset to its initialized state.
* *
* <p>Implementations are free to implement the Cloneable interface. * <p>Implementations are free to implement the Cloneable interface.
...@@ -75,18 +75,18 @@ import java.nio.ByteBuffer; ...@@ -75,18 +75,18 @@ import java.nio.ByteBuffer;
* several instances, if the number of digests is known in advance. * several instances, if the number of digests is known in advance.
* *
* <p>Note that this class is abstract and extends from * <p>Note that this class is abstract and extends from
* <code>MessageDigestSpi</code> for historical reasons. * {@code MessageDigestSpi} for historical reasons.
* Application developers should only take notice of the methods defined in * Application developers should only take notice of the methods defined in
* this <code>MessageDigest</code> class; all the methods in * this {@code MessageDigest} class; all the methods in
* the superclass are intended for cryptographic service providers who wish to * the superclass are intended for cryptographic service providers who wish to
* supply their own implementations of message digest algorithms. * supply their own implementations of message digest algorithms.
* *
* <p> Every implementation of the Java platform is required to support * <p> Every implementation of the Java platform is required to support
* the following standard <code>MessageDigest</code> algorithms: * the following standard {@code MessageDigest} algorithms:
* <ul> * <ul>
* <li><tt>MD5</tt></li> * <li>{@code MD5}</li>
* <li><tt>SHA-1</tt></li> * <li>{@code SHA-1}</li>
* <li><tt>SHA-256</tt></li> * <li>{@code SHA-256}</li>
* </ul> * </ul>
* These algorithms are described in the <a href= * These algorithms are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#MessageDigest"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#MessageDigest">
...@@ -301,7 +301,7 @@ public abstract class MessageDigest extends MessageDigestSpi { ...@@ -301,7 +301,7 @@ public abstract class MessageDigest extends MessageDigestSpi {
* @param offset the offset to start from in the array of bytes. * @param offset the offset to start from in the array of bytes.
* *
* @param len the number of bytes to use, starting at * @param len the number of bytes to use, starting at
* <code>offset</code>. * {@code offset}.
*/ */
public void update(byte[] input, int offset, int len) { public void update(byte[] input, int offset, int len) {
if (input == null) { if (input == null) {
...@@ -326,8 +326,8 @@ public abstract class MessageDigest extends MessageDigestSpi { ...@@ -326,8 +326,8 @@ public abstract class MessageDigest extends MessageDigestSpi {
/** /**
* Update the digest using the specified ByteBuffer. The digest is * Update the digest using the specified ByteBuffer. The digest is
* updated using the <code>input.remaining()</code> bytes starting * updated using the {@code input.remaining()} bytes starting
* at <code>input.position()</code>. * at {@code input.position()}.
* Upon return, the buffer's position will be equal to its limit; * Upon return, the buffer's position will be equal to its limit;
* its limit will not have changed. * its limit will not have changed.
* *
...@@ -365,7 +365,7 @@ public abstract class MessageDigest extends MessageDigestSpi { ...@@ -365,7 +365,7 @@ public abstract class MessageDigest extends MessageDigestSpi {
* *
* @param len number of bytes within buf allotted for the digest * @param len number of bytes within buf allotted for the digest
* *
* @return the number of bytes placed into <code>buf</code> * @return the number of bytes placed into {@code buf}
* *
* @exception DigestException if an error occurs. * @exception DigestException if an error occurs.
*/ */
...@@ -386,7 +386,7 @@ public abstract class MessageDigest extends MessageDigestSpi { ...@@ -386,7 +386,7 @@ public abstract class MessageDigest extends MessageDigestSpi {
* Performs a final update on the digest using the specified array * Performs a final update on the digest using the specified array
* of bytes, then completes the digest computation. That is, this * of bytes, then completes the digest computation. That is, this
* method first calls {@link #update(byte[]) update(input)}, * method first calls {@link #update(byte[]) update(input)},
* passing the <i>input</i> array to the <code>update</code> method, * passing the <i>input</i> array to the {@code update} method,
* then calls {@link #digest() digest()}. * then calls {@link #digest() digest()}.
* *
* @param input the input to be updated before the digest is * @param input the input to be updated before the digest is
...@@ -492,7 +492,7 @@ public abstract class MessageDigest extends MessageDigestSpi { ...@@ -492,7 +492,7 @@ public abstract class MessageDigest extends MessageDigestSpi {
* @return a clone if the implementation is cloneable. * @return a clone if the implementation is cloneable.
* *
* @exception CloneNotSupportedException if this is called on an * @exception CloneNotSupportedException if this is called on an
* implementation that does not support <code>Cloneable</code>. * implementation that does not support {@code Cloneable}.
*/ */
public Object clone() throws CloneNotSupportedException { public Object clone() throws CloneNotSupportedException {
if (this instanceof Cloneable) { if (this instanceof Cloneable) {
...@@ -536,7 +536,7 @@ public abstract class MessageDigest extends MessageDigestSpi { ...@@ -536,7 +536,7 @@ public abstract class MessageDigest extends MessageDigestSpi {
* @return a clone if the delegate is cloneable. * @return a clone if the delegate is cloneable.
* *
* @exception CloneNotSupportedException if this is called on a * @exception CloneNotSupportedException if this is called on a
* delegate that does not support <code>Cloneable</code>. * delegate that does not support {@code Cloneable}.
*/ */
public Object clone() throws CloneNotSupportedException { public Object clone() throws CloneNotSupportedException {
if (digestSpi instanceof Cloneable) { if (digestSpi instanceof Cloneable) {
......
/* /*
* 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
...@@ -31,7 +31,7 @@ import sun.security.jca.JCAUtil; ...@@ -31,7 +31,7 @@ import sun.security.jca.JCAUtil;
/** /**
* 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>MessageDigest</code> class, which provides the functionality * for the {@code MessageDigest} class, which provides the functionality
* of a message digest algorithm, such as MD5 or SHA. Message digests are * of a message digest algorithm, such as MD5 or SHA. Message digests are
* secure one-way hash functions that take arbitrary-sized data and output a * secure one-way hash functions that take arbitrary-sized data and output a
* fixed-length hash value. * fixed-length hash value.
...@@ -88,14 +88,14 @@ public abstract class MessageDigestSpi { ...@@ -88,14 +88,14 @@ public abstract class MessageDigestSpi {
* @param offset the offset to start from in the array of bytes. * @param offset the offset to start from in the array of bytes.
* *
* @param len the number of bytes to use, starting at * @param len the number of bytes to use, starting at
* <code>offset</code>. * {@code offset}.
*/ */
protected abstract void engineUpdate(byte[] input, int offset, int len); protected abstract void engineUpdate(byte[] input, int offset, int len);
/** /**
* Update the digest using the specified ByteBuffer. The digest is * Update the digest using the specified ByteBuffer. The digest is
* updated using the <code>input.remaining()</code> bytes starting * updated using the {@code input.remaining()} bytes starting
* at <code>input.position()</code>. * at {@code input.position()}.
* Upon return, the buffer's position will be equal to its limit; * Upon return, the buffer's position will be equal to its limit;
* its limit will not have changed. * its limit will not have changed.
* *
...@@ -130,7 +130,7 @@ public abstract class MessageDigestSpi { ...@@ -130,7 +130,7 @@ public abstract class MessageDigestSpi {
/** /**
* Completes the hash computation by performing final * Completes the hash computation by performing final
* operations such as padding. Once <code>engineDigest</code> has * operations such as padding. Once {@code engineDigest} has
* been called, the engine should be reset (see * been called, the engine should be reset (see
* {@link #engineReset() engineReset}). * {@link #engineReset() engineReset}).
* Resetting is the responsibility of the * Resetting is the responsibility of the
...@@ -142,7 +142,7 @@ public abstract class MessageDigestSpi { ...@@ -142,7 +142,7 @@ public abstract class MessageDigestSpi {
/** /**
* Completes the hash computation by performing final * Completes the hash computation by performing final
* operations such as padding. Once <code>engineDigest</code> has * operations such as padding. Once {@code engineDigest} has
* been called, the engine should be reset (see * been called, the engine should be reset (see
* {@link #engineReset() engineReset}). * {@link #engineReset() engineReset}).
* Resetting is the responsibility of the * Resetting is the responsibility of the
...@@ -194,7 +194,7 @@ public abstract class MessageDigestSpi { ...@@ -194,7 +194,7 @@ public abstract class MessageDigestSpi {
* @return a clone if the implementation is cloneable. * @return a clone if the implementation is cloneable.
* *
* @exception CloneNotSupportedException if this is called on an * @exception CloneNotSupportedException if this is called on an
* implementation that does not support <code>Cloneable</code>. * implementation that does not support {@code Cloneable}.
*/ */
public Object clone() throws CloneNotSupportedException { public Object clone() throws CloneNotSupportedException {
if (this instanceof Cloneable) { if (this instanceof Cloneable) {
......
/* /*
* Copyright (c) 1996, 2003, 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
...@@ -58,13 +58,13 @@ public class NoSuchAlgorithmException extends GeneralSecurityException { ...@@ -58,13 +58,13 @@ public class NoSuchAlgorithmException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>NoSuchAlgorithmException</code> with the specified * Creates a {@code NoSuchAlgorithmException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -73,13 +73,13 @@ public class NoSuchAlgorithmException extends GeneralSecurityException { ...@@ -73,13 +73,13 @@ public class NoSuchAlgorithmException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>NoSuchAlgorithmException</code> with the specified cause * Creates a {@code NoSuchAlgorithmException} with the specified cause
* and a detail message of <tt>(cause==null ? null : cause.toString())</tt> * and a detail message of {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* Copyright (c) 1997, 2009, 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
...@@ -33,17 +33,17 @@ package java.security; ...@@ -33,17 +33,17 @@ package java.security;
* *
* <p>Most Permission objects also include an "actions" list that tells the actions * <p>Most Permission objects also include an "actions" list that tells the actions
* that are permitted for the object. For example, * that are permitted for the object. For example,
* for a <code>java.io.FilePermission</code> object, the permission name is * for a {@code java.io.FilePermission} object, the permission name is
* the pathname of a file (or directory), and the actions list * the pathname of a file (or directory), and the actions list
* (such as "read, write") specifies which actions are granted for the * (such as "read, write") specifies which actions are granted for the
* specified file (or for files in the specified directory). * specified file (or for files in the specified directory).
* The actions list is optional for Permission objects, such as * The actions list is optional for Permission objects, such as
* <code>java.lang.RuntimePermission</code>, * {@code java.lang.RuntimePermission},
* that don't need such a list; you either have the named permission (such * that don't need such a list; you either have the named permission (such
* as "system.exit") or you don't. * as "system.exit") or you don't.
* *
* <p>An important method that must be implemented by each subclass is * <p>An important method that must be implemented by each subclass is
* the <code>implies</code> method to compare Permissions. Basically, * the {@code implies} method to compare Permissions. Basically,
* "permission p1 implies permission p2" means that * "permission p1 implies permission p2" means that
* if one is granted permission p1, one is naturally granted permission p2. * if one is granted permission p1, one is naturally granted permission p2.
* Thus, this is not an equality test, but rather more of a * Thus, this is not an equality test, but rather more of a
...@@ -81,7 +81,7 @@ public abstract class Permission implements Guard, java.io.Serializable { ...@@ -81,7 +81,7 @@ public abstract class Permission implements Guard, java.io.Serializable {
/** /**
* Implements the guard interface for a permission. The * Implements the guard interface for a permission. The
* <code>SecurityManager.checkPermission</code> method is called, * {@code SecurityManager.checkPermission} method is called,
* passing this permission object as the permission to check. * passing this permission object as the permission to check.
* Returns silently if access is granted. Otherwise, throws * Returns silently if access is granted. Otherwise, throws
* a SecurityException. * a SecurityException.
...@@ -90,7 +90,7 @@ public abstract class Permission implements Guard, java.io.Serializable { ...@@ -90,7 +90,7 @@ public abstract class Permission implements Guard, java.io.Serializable {
* *
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its * if a security manager exists and its
* <code>checkPermission</code> method doesn't allow access. * {@code checkPermission} method doesn't allow access.
* *
* @see Guard * @see Guard
* @see GuardedObject * @see GuardedObject
...@@ -109,7 +109,7 @@ public abstract class Permission implements Guard, java.io.Serializable { ...@@ -109,7 +109,7 @@ public abstract class Permission implements Guard, java.io.Serializable {
* This must be implemented by subclasses of Permission, as they are the * This must be implemented by subclasses of Permission, as they are the
* only ones that can impose semantics on a Permission object. * only ones that can impose semantics on a Permission object.
* *
* <p>The <code>implies</code> method is used by the AccessController to determine * <p>The {@code implies} method is used by the AccessController to determine
* whether or not a requested permission is implied by another permission that * whether or not a requested permission is implied by another permission that
* is known to be valid in the current execution context. * is known to be valid in the current execution context.
* *
...@@ -124,8 +124,8 @@ public abstract class Permission implements Guard, java.io.Serializable { ...@@ -124,8 +124,8 @@ public abstract class Permission implements Guard, java.io.Serializable {
/** /**
* Checks two Permission objects for equality. * Checks two Permission objects for equality.
* <P> * <P>
* Do not use the <code>equals</code> method for making access control * Do not use the {@code equals} method for making access control
* decisions; use the <code>implies</code> method. * decisions; use the {@code implies} method.
* *
* @param obj the object we are testing for equality with this object. * @param obj the object we are testing for equality with this object.
* *
...@@ -137,18 +137,18 @@ public abstract class Permission implements Guard, java.io.Serializable { ...@@ -137,18 +137,18 @@ public abstract class Permission implements Guard, java.io.Serializable {
/** /**
* Returns the hash code value for this Permission object. * Returns the hash code value for this Permission object.
* <P> * <P>
* The required <code>hashCode</code> behavior for Permission Objects is * The required {@code hashCode} behavior for Permission Objects is
* the following: <p> * the following: <p>
* <ul> * <ul>
* <li>Whenever it is invoked on the same Permission object more than * <li>Whenever it is invoked on the same Permission object more than
* once during an execution of a Java application, the * once during an execution of a Java application, the
* <code>hashCode</code> method * {@code hashCode} method
* must consistently return the same integer. This integer need not * must consistently return the same integer. This integer need not
* remain consistent from one execution of an application to another * remain consistent from one execution of an application to another
* execution of the same application. <p> * execution of the same application. <p>
* <li>If two Permission objects are equal according to the * <li>If two Permission objects are equal according to the
* <code>equals</code> * {@code equals}
* method, then calling the <code>hashCode</code> method on each of the * method, then calling the {@code hashCode} method on each of the
* two Permission objects must produce the same integer result. * two Permission objects must produce the same integer result.
* </ul> * </ul>
* *
...@@ -159,7 +159,7 @@ public abstract class Permission implements Guard, java.io.Serializable { ...@@ -159,7 +159,7 @@ public abstract class Permission implements Guard, java.io.Serializable {
/** /**
* Returns the name of this Permission. * Returns the name of this Permission.
* For example, in the case of a <code>java.io.FilePermission</code>, * For example, in the case of a {@code java.io.FilePermission},
* the name will be a pathname. * the name will be a pathname.
* *
* @return the name of this Permission. * @return the name of this Permission.
...@@ -184,7 +184,7 @@ public abstract class Permission implements Guard, java.io.Serializable { ...@@ -184,7 +184,7 @@ public abstract class Permission implements Guard, java.io.Serializable {
* </pre> * </pre>
* *
* both return * both return
* "read,write" when the <code>getActions</code> method is invoked. * "read,write" when the {@code getActions} method is invoked.
* *
* @return the actions of this Permission. * @return the actions of this Permission.
* *
...@@ -197,7 +197,7 @@ public abstract class Permission implements Guard, java.io.Serializable { ...@@ -197,7 +197,7 @@ public abstract class Permission implements Guard, java.io.Serializable {
* one is not defined. Subclasses of class Permission should * one is not defined. Subclasses of class Permission should
* override this if they need to store their permissions in a particular * override this if they need to store their permissions in a particular
* PermissionCollection object in order to provide the correct semantics * PermissionCollection object in order to provide the correct semantics
* when the <code>PermissionCollection.implies</code> method is called. * when the {@code PermissionCollection.implies} method is called.
* If null is returned, * If null is returned,
* then the caller of this method is free to store permissions of this * then the caller of this method is free to store permissions of this
* type in any PermissionCollection they choose (one that uses a Hashtable, * type in any PermissionCollection they choose (one that uses a Hashtable,
......
/* /*
* 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
...@@ -32,29 +32,29 @@ import java.util.*; ...@@ -32,29 +32,29 @@ import java.util.*;
* *
* <p>With a PermissionCollection, you can: * <p>With a PermissionCollection, you can:
* <UL> * <UL>
* <LI> add a permission to the collection using the <code>add</code> method. * <LI> add a permission to the collection using the {@code add} method.
* <LI> check to see if a particular permission is implied in the * <LI> check to see if a particular permission is implied in the
* collection, using the <code>implies</code> method. * collection, using the {@code implies} method.
* <LI> enumerate all the permissions, using the <code>elements</code> method. * <LI> enumerate all the permissions, using the {@code elements} method.
* </UL> * </UL>
* <P> * <P>
* *
* <p>When it is desirable to group together a number of Permission objects * <p>When it is desirable to group together a number of Permission objects
* of the same type, the <code>newPermissionCollection</code> method on that * of the same type, the {@code newPermissionCollection} method on that
* particular type of Permission object should first be called. The default * particular type of Permission object should first be called. The default
* behavior (from the Permission class) is to simply return null. * behavior (from the Permission class) is to simply return null.
* Subclasses of class Permission override the method if they need to store * Subclasses of class Permission override the method if they need to store
* their permissions in a particular PermissionCollection object in order * their permissions in a particular PermissionCollection object in order
* to provide the correct semantics when the * to provide the correct semantics when the
* <code>PermissionCollection.implies</code> method is called. * {@code PermissionCollection.implies} method is called.
* If a non-null value is returned, that PermissionCollection must be used. * If a non-null value is returned, that PermissionCollection must be used.
* If null is returned, then the caller of <code>newPermissionCollection</code> * If null is returned, then the caller of {@code newPermissionCollection}
* is free to store permissions of the * is free to store permissions of the
* given type in any PermissionCollection they choose * given type in any PermissionCollection they choose
* (one that uses a Hashtable, one that uses a Vector, etc). * (one that uses a Hashtable, one that uses a Vector, etc).
* *
* <p>The PermissionCollection returned by the * <p>The PermissionCollection returned by the
* <code>Permission.newPermissionCollection</code> * {@code Permission.newPermissionCollection}
* method is a homogeneous collection, which stores only Permission objects * method is a homogeneous collection, which stores only Permission objects
* for a given Permission type. A PermissionCollection may also be * for a given Permission type. A PermissionCollection may also be
* heterogeneous. For example, Permissions is a PermissionCollection * heterogeneous. For example, Permissions is a PermissionCollection
...@@ -62,16 +62,16 @@ import java.util.*; ...@@ -62,16 +62,16 @@ import java.util.*;
* That is, its members are each a homogeneous PermissionCollection. * That is, its members are each a homogeneous PermissionCollection.
* For example, a Permissions object might have a FilePermissionCollection * For example, a Permissions object might have a FilePermissionCollection
* for all the FilePermission objects, a SocketPermissionCollection for all the * for all the FilePermission objects, a SocketPermissionCollection for all the
* SocketPermission objects, and so on. Its <code>add</code> method adds a * SocketPermission objects, and so on. Its {@code add} method adds a
* permission to the appropriate collection. * permission to the appropriate collection.
* *
* <p>Whenever a permission is added to a heterogeneous PermissionCollection * <p>Whenever a permission is added to a heterogeneous PermissionCollection
* such as Permissions, and the PermissionCollection doesn't yet contain a * such as Permissions, and the PermissionCollection doesn't yet contain a
* PermissionCollection of the specified permission's type, the * PermissionCollection of the specified permission's type, the
* PermissionCollection should call * PermissionCollection should call
* the <code>newPermissionCollection</code> method on the permission's class * the {@code newPermissionCollection} method on the permission's class
* to see if it requires a special PermissionCollection. If * to see if it requires a special PermissionCollection. If
* <code>newPermissionCollection</code> * {@code newPermissionCollection}
* returns null, the PermissionCollection * returns null, the PermissionCollection
* is free to store the permission in any type of PermissionCollection it * is free to store the permission in any type of PermissionCollection it
* desires (one using a Hashtable, one using a Vector, etc.). For example, * desires (one using a Hashtable, one using a Vector, etc.). For example,
...@@ -81,7 +81,7 @@ import java.util.*; ...@@ -81,7 +81,7 @@ import java.util.*;
* <p> Subclass implementations of PermissionCollection should assume * <p> Subclass implementations of PermissionCollection should assume
* that they may be called simultaneously from multiple threads, * that they may be called simultaneously from multiple threads,
* and therefore should be synchronized properly. Furthermore, * and therefore should be synchronized properly. Furthermore,
* Enumerations returned via the <code>elements</code> method are * Enumerations returned via the {@code elements} method are
* not <em>fail-fast</em>. Modifications to a collection should not be * not <em>fail-fast</em>. Modifications to a collection should not be
* performed while enumerating over that collection. * performed while enumerating over that collection.
* *
...@@ -134,7 +134,7 @@ public abstract class PermissionCollection implements java.io.Serializable { ...@@ -134,7 +134,7 @@ public abstract class PermissionCollection implements java.io.Serializable {
* Marks this PermissionCollection object as "readonly". After * Marks this PermissionCollection object as "readonly". After
* a PermissionCollection object * a PermissionCollection object
* is marked as readonly, no new Permission objects can be added to it * is marked as readonly, no new Permission objects can be added to it
* using <code>add</code>. * using {@code add}.
*/ */
public void setReadOnly() { public void setReadOnly() {
readOnly = true; readOnly = true;
...@@ -143,10 +143,10 @@ public abstract class PermissionCollection implements java.io.Serializable { ...@@ -143,10 +143,10 @@ public abstract class PermissionCollection implements java.io.Serializable {
/** /**
* Returns true if this PermissionCollection object is marked as readonly. * Returns true if this PermissionCollection object is marked as readonly.
* If it is readonly, no new Permission objects can be added to it * If it is readonly, no new Permission objects can be added to it
* using <code>add</code>. * using {@code add}.
* *
* <p>By default, the object is <i>not</i> readonly. It can be set to * <p>By default, the object is <i>not</i> readonly. It can be set to
* readonly by a call to <code>setReadOnly</code>. * readonly by a call to {@code setReadOnly}.
* *
* @return true if this PermissionCollection object is marked as readonly, * @return true if this PermissionCollection object is marked as readonly,
* false otherwise. * false otherwise.
...@@ -166,7 +166,7 @@ public abstract class PermissionCollection implements java.io.Serializable { ...@@ -166,7 +166,7 @@ public abstract class PermissionCollection implements java.io.Serializable {
* // one per line.. * // one per line..
* )</pre> * )</pre>
* *
* <code>super.toString</code> is a call to the <code>toString</code> * {@code super.toString} is a call to the {@code toString}
* method of this * method of this
* object's superclass, which is Object. The result is * object's superclass, which is Object. The result is
* this PermissionCollection's type name followed by this object's * this PermissionCollection's type name followed by this object's
......
/* /*
* 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
...@@ -44,26 +44,26 @@ import java.io.IOException; ...@@ -44,26 +44,26 @@ import java.io.IOException;
* This class represents a heterogeneous collection of Permissions. That is, * This class represents a heterogeneous collection of Permissions. That is,
* it contains different types of Permission objects, organized into * it contains different types of Permission objects, organized into
* PermissionCollections. For example, if any * PermissionCollections. For example, if any
* <code>java.io.FilePermission</code> objects are added to an instance of * {@code java.io.FilePermission} objects are added to an instance of
* this class, they are all stored in a single * this class, they are all stored in a single
* PermissionCollection. It is the PermissionCollection returned by a call to * PermissionCollection. It is the PermissionCollection returned by a call to
* the <code>newPermissionCollection</code> method in the FilePermission class. * the {@code newPermissionCollection} method in the FilePermission class.
* Similarly, any <code>java.lang.RuntimePermission</code> objects are * Similarly, any {@code java.lang.RuntimePermission} objects are
* stored in the PermissionCollection returned by a call to the * stored in the PermissionCollection returned by a call to the
* <code>newPermissionCollection</code> method in the * {@code newPermissionCollection} method in the
* RuntimePermission class. Thus, this class represents a collection of * RuntimePermission class. Thus, this class represents a collection of
* PermissionCollections. * PermissionCollections.
* *
* <p>When the <code>add</code> method is called to add a Permission, the * <p>When the {@code add} method is called to add a Permission, the
* Permission is stored in the appropriate PermissionCollection. If no such * Permission is stored in the appropriate PermissionCollection. If no such
* collection exists yet, the Permission object's class is determined and the * collection exists yet, the Permission object's class is determined and the
* <code>newPermissionCollection</code> method is called on that class to create * {@code newPermissionCollection} method is called on that class to create
* the PermissionCollection and add it to the Permissions object. If * the PermissionCollection and add it to the Permissions object. If
* <code>newPermissionCollection</code> returns null, then a default * {@code newPermissionCollection} returns null, then a default
* PermissionCollection that uses a hashtable will be created and used. Each * PermissionCollection that uses a hashtable will be created and used. Each
* hashtable entry stores a Permission object as both the key and the value. * hashtable entry stores a Permission object as both the key and the value.
* *
* <p> Enumerations returned via the <code>elements</code> method are * <p> Enumerations returned via the {@code elements} method are
* not <em>fail-fast</em>. Modifications to a collection should not be * not <em>fail-fast</em>. Modifications to a collection should not be
* performed while enumerating over that collection. * performed while enumerating over that collection.
* *
...@@ -155,9 +155,9 @@ implements Serializable ...@@ -155,9 +155,9 @@ implements Serializable
* "read" access for all files in all subdirectories of the "/tmp" * "read" access for all files in all subdirectories of the "/tmp"
* directory, and another FilePermission that specifies "write" access * directory, and another FilePermission that specifies "write" access
* for all files in the "/tmp/scratch/foo" directory. * for all files in the "/tmp/scratch/foo" directory.
* Then if the <code>implies</code> method * Then if the {@code implies} method
* is called with a permission specifying both "read" and "write" access * is called with a permission specifying both "read" and "write" access
* to files in the "/tmp/scratch/foo" directory, <code>true</code> is * to files in the "/tmp/scratch/foo" directory, {@code true} is
* returned. * returned.
* *
* <p>Additionally, if this PermissionCollection contains the * <p>Additionally, if this PermissionCollection contains the
...@@ -214,11 +214,11 @@ implements Serializable ...@@ -214,11 +214,11 @@ implements Serializable
* If createEmpty is true, * If createEmpty is true,
* this method creates a new PermissionCollection object for the specified * this method creates a new PermissionCollection object for the specified
* type of permission objects if one does not yet exist. * type of permission objects if one does not yet exist.
* To do so, it first calls the <code>newPermissionCollection</code> method * To do so, it first calls the {@code newPermissionCollection} method
* on <i>p</i>. Subclasses of class Permission * on <i>p</i>. Subclasses of class Permission
* override that method if they need to store their permissions in a * override that method if they need to store their permissions in a
* particular PermissionCollection object in order to provide the * particular PermissionCollection object in order to provide the
* correct semantics when the <code>PermissionCollection.implies</code> * correct semantics when the {@code PermissionCollection.implies}
* method is called. * method is called.
* If the call returns a PermissionCollection, that collection is stored * If the call returns a PermissionCollection, that collection is stored
* in this Permissions object. If the call returns null and createEmpty * in this Permissions object. If the call returns null and createEmpty
......
/* /*
* Copyright (c) 1997, 2012, 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
...@@ -41,11 +41,11 @@ import sun.security.util.SecurityConstants; ...@@ -41,11 +41,11 @@ import sun.security.util.SecurityConstants;
* *
* <p> There is only one Policy object installed in the runtime at any * <p> There is only one Policy object installed in the runtime at any
* given time. A Policy object can be installed by calling the * given time. A Policy object can be installed by calling the
* <code>setPolicy</code> method. The installed Policy object can be * {@code setPolicy} method. The installed Policy object can be
* obtained by calling the <code>getPolicy</code> method. * obtained by calling the {@code getPolicy} method.
* *
* <p> If no Policy object has been installed in the runtime, a call to * <p> If no Policy object has been installed in the runtime, a call to
* <code>getPolicy</code> installs an instance of the default Policy * {@code getPolicy} installs an instance of the default Policy
* implementation (a default subclass implementation of this abstract class). * implementation (a default subclass implementation of this abstract class).
* The default Policy implementation can be changed by setting the value * The default Policy implementation can be changed by setting the value
* of the {@code policy.provider} security property to the fully qualified * of the {@code policy.provider} security property to the fully qualified
...@@ -53,26 +53,26 @@ import sun.security.util.SecurityConstants; ...@@ -53,26 +53,26 @@ import sun.security.util.SecurityConstants;
* *
* <p> Application code can directly subclass Policy to provide a custom * <p> Application code can directly subclass Policy to provide a custom
* implementation. In addition, an instance of a Policy object can be * implementation. In addition, an instance of a Policy 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 "JavaPolicy". * with a standard type. The default policy type is "JavaPolicy".
* *
* <p> Once a Policy instance has been installed (either by default, or by * <p> Once a Policy instance has been installed (either by default, or by
* calling <code>setPolicy</code>), the Java runtime invokes its * calling {@code setPolicy}), the Java runtime invokes its
* <code>implies</code> method when it needs to * {@code implies} method when it needs to
* determine whether executing code (encapsulated in a ProtectionDomain) * determine whether executing code (encapsulated in a ProtectionDomain)
* can perform SecurityManager-protected operations. How a Policy object * can perform SecurityManager-protected operations. How a Policy object
* retrieves its policy data is up to the Policy implementation itself. * retrieves its policy data is up to the Policy implementation itself.
* The policy data may be stored, for example, in a flat ASCII file, * The policy data may be stored, for example, in a flat ASCII file,
* in a serialized binary file of the Policy class, or in a database. * in a serialized binary file of the Policy class, or in a database.
* *
* <p> The <code>refresh</code> method causes the policy object to * <p> The {@code refresh} method causes the policy object to
* refresh/reload its data. This operation is implementation-dependent. * refresh/reload its data. This operation is implementation-dependent.
* For example, if the policy object stores its data in configuration files, * For example, if the policy object stores its data in configuration files,
* calling <code>refresh</code> will cause it to re-read the configuration * calling {@code refresh} will cause it to re-read the configuration
* policy files. If a refresh operation is not supported, this method does * policy files. If a refresh operation is not supported, this method does
* nothing. Note that refreshed policy may not have an effect on classes * nothing. Note that refreshed policy may not have an effect on classes
* in a particular ProtectionDomain. This is dependent on the Policy * in a particular ProtectionDomain. This is dependent on the Policy
* provider's implementation of the <code>implies</code> * provider's implementation of the {@code implies}
* method and its PermissionCollection caching strategy. * method and its PermissionCollection caching strategy.
* *
* @author Roland Schemers * @author Roland Schemers
...@@ -130,17 +130,17 @@ public abstract class Policy { ...@@ -130,17 +130,17 @@ public abstract class Policy {
/** /**
* Returns the installed Policy object. This value should not be cached, * Returns the installed Policy object. This value should not be cached,
* as it may be changed by a call to <code>setPolicy</code>. * as it may be changed by a call to {@code setPolicy}.
* This method first calls * This method first calls
* <code>SecurityManager.checkPermission</code> with a * {@code SecurityManager.checkPermission} with a
* <code>SecurityPermission("getPolicy")</code> permission * {@code SecurityPermission("getPolicy")} permission
* to ensure it's ok to get the Policy object. * to ensure it's ok to get the Policy object.
* *
* @return the installed Policy. * @return the installed Policy.
* *
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its * if a security manager exists and its
* <code>checkPermission</code> method doesn't allow * {@code checkPermission} method doesn't allow
* getting the Policy object. * getting the Policy object.
* *
* @see SecurityManager#checkPermission(Permission) * @see SecurityManager#checkPermission(Permission)
...@@ -246,15 +246,15 @@ public abstract class Policy { ...@@ -246,15 +246,15 @@ 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 a * {@code SecurityManager.checkPermission} with a
* <code>SecurityPermission("setPolicy")</code> * {@code SecurityPermission("setPolicy")}
* permission to ensure it's ok to set the Policy. * permission to ensure it's ok to set the Policy.
* *
* @param p the new system Policy object. * @param p the new system Policy object.
* *
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its * if a security manager exists and its
* <code>checkPermission</code> method doesn't allow * {@code checkPermission} method doesn't allow
* setting the Policy. * setting the Policy.
* *
* @see SecurityManager#checkPermission(Permission) * @see SecurityManager#checkPermission(Permission)
...@@ -536,7 +536,7 @@ public abstract class Policy { ...@@ -536,7 +536,7 @@ public abstract class Policy {
* Return the Provider of this Policy. * Return the Provider of this Policy.
* *
* <p> This Policy instance will only have a Provider if it * <p> This Policy instance will only have a Provider if it
* was obtained via a call to <code>Policy.getInstance</code>. * was obtained via a call to {@code Policy.getInstance}.
* Otherwise this method returns null. * Otherwise this method returns null.
* *
* @return the Provider of this Policy, or null. * @return the Provider of this Policy, or null.
...@@ -551,7 +551,7 @@ public abstract class Policy { ...@@ -551,7 +551,7 @@ public abstract class Policy {
* Return the type of this Policy. * Return the type of this Policy.
* *
* <p> This Policy instance will only have a type if it * <p> This Policy instance will only have a type if it
* was obtained via a call to <code>Policy.getInstance</code>. * was obtained via a call to {@code Policy.getInstance}.
* Otherwise this method returns null. * Otherwise this method returns null.
* *
* @return the type of this Policy, or null. * @return the type of this Policy, or null.
...@@ -566,7 +566,7 @@ public abstract class Policy { ...@@ -566,7 +566,7 @@ public abstract class Policy {
* Return Policy parameters. * Return Policy parameters.
* *
* <p> This Policy instance will only have parameters if it * <p> This Policy instance will only have parameters if it
* was obtained via a call to <code>Policy.getInstance</code>. * was obtained via a call to {@code Policy.getInstance}.
* Otherwise this method returns null. * Otherwise this method returns null.
* *
* @return Policy parameters, or null. * @return Policy parameters, or null.
...@@ -583,10 +583,10 @@ public abstract class Policy { ...@@ -583,10 +583,10 @@ public abstract class Policy {
* *
* <p> Applications are discouraged from calling this method * <p> Applications are discouraged from calling this method
* since this operation may not be supported by all policy implementations. * since this operation may not be supported by all policy implementations.
* Applications should solely rely on the <code>implies</code> method * Applications should solely rely on the {@code implies} method
* to perform policy checks. If an application absolutely must call * to perform policy checks. If an application absolutely must call
* a getPermissions method, it should call * a getPermissions method, it should call
* <code>getPermissions(ProtectionDomain)</code>. * {@code getPermissions(ProtectionDomain)}.
* *
* <p> The default implementation of this method returns * <p> The default implementation of this method returns
* Policy.UNSUPPORTED_EMPTY_COLLECTION. This method can be * Policy.UNSUPPORTED_EMPTY_COLLECTION. This method can be
...@@ -613,15 +613,15 @@ public abstract class Policy { ...@@ -613,15 +613,15 @@ public abstract class Policy {
* *
* <p> Applications are discouraged from calling this method * <p> Applications are discouraged from calling this method
* since this operation may not be supported by all policy implementations. * since this operation may not be supported by all policy implementations.
* Applications should rely on the <code>implies</code> method * Applications should rely on the {@code implies} method
* to perform policy checks. * to perform policy checks.
* *
* <p> The default implementation of this method first retrieves * <p> The default implementation of this method first retrieves
* the permissions returned via <code>getPermissions(CodeSource)</code> * the permissions returned via {@code getPermissions(CodeSource)}
* (the CodeSource is taken from the specified ProtectionDomain), * (the CodeSource is taken from the specified ProtectionDomain),
* as well as the permissions located inside the specified ProtectionDomain. * as well as the permissions located inside the specified ProtectionDomain.
* All of these permissions are then combined and returned in a new * All of these permissions are then combined and returned in a new
* PermissionCollection object. If <code>getPermissions(CodeSource)</code> * PermissionCollection object. If {@code getPermissions(CodeSource)}
* returns Policy.UNSUPPORTED_EMPTY_COLLECTION, then this method * returns Policy.UNSUPPORTED_EMPTY_COLLECTION, then this method
* returns the permissions contained inside the specified ProtectionDomain * returns the permissions contained inside the specified ProtectionDomain
* in a new PermissionCollection object. * in a new PermissionCollection object.
...@@ -733,7 +733,7 @@ public abstract class Policy { ...@@ -733,7 +733,7 @@ public abstract class Policy {
/** /**
* Refreshes/reloads the policy configuration. The behavior of this method * Refreshes/reloads the policy configuration. The behavior of this method
* depends on the implementation. For example, calling <code>refresh</code> * depends on the implementation. For example, calling {@code refresh}
* on a file-based policy will cause the file to be re-read. * on a file-based policy will 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.
...@@ -794,8 +794,8 @@ public abstract class Policy { ...@@ -794,8 +794,8 @@ public abstract class Policy {
/** /**
* This class represents a read-only empty PermissionCollection object that * This class represents a read-only empty PermissionCollection object that
* is returned from the <code>getPermissions(CodeSource)</code> and * is returned from the {@code getPermissions(CodeSource)} and
* <code>getPermissions(ProtectionDomain)</code> * {@code getPermissions(ProtectionDomain)}
* methods in the Policy class when those operations are not * methods in the Policy class when those operations are not
* supported by the Policy implementation. * supported by the Policy implementation.
*/ */
......
/* /*
* 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 java.security; ...@@ -28,15 +28,15 @@ package java.security;
/** /**
* 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>Policy</code> class. * for the {@code Policy} 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 Policy implementation. * service provider who wishes to supply a Policy 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>Policy.Parameters</code> * a public constructor that takes a {@code Policy.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>Policy.Parameters</code> input. * {@code Policy.Parameters} input.
* *
* *
* @since 1.6 * @since 1.6
...@@ -59,7 +59,7 @@ public abstract class PolicySpi { ...@@ -59,7 +59,7 @@ public abstract class PolicySpi {
/** /**
* Refreshes/reloads the policy configuration. The behavior of this method * Refreshes/reloads the policy configuration. The behavior of this method
* depends on the implementation. For example, calling <code>refresh</code> * depends on the implementation. For example, calling {@code refresh}
* on a file-based policy will cause the file to be re-read. * on a file-based policy will 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.
......
/* /*
* 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
...@@ -28,10 +28,10 @@ package java.security; ...@@ -28,10 +28,10 @@ package java.security;
/** /**
* A computation to be performed with privileges enabled. The computation is * A computation to be performed with privileges enabled. The computation is
* performed by invoking <code>AccessController.doPrivileged</code> on the * performed by invoking {@code AccessController.doPrivileged} on the
* <code>PrivilegedAction</code> object. This interface is used only for * {@code PrivilegedAction} object. This interface is used only for
* computations that do not throw checked exceptions; computations that * computations that do not throw checked exceptions; computations that
* throw checked exceptions must use <code>PrivilegedExceptionAction</code> * throw checked exceptions must use {@code PrivilegedExceptionAction}
* instead. * instead.
* *
* @see AccessController * @see AccessController
...@@ -42,11 +42,11 @@ package java.security; ...@@ -42,11 +42,11 @@ package java.security;
public interface PrivilegedAction<T> { public interface PrivilegedAction<T> {
/** /**
* Performs the computation. This method will be called by * Performs the computation. This method will be called by
* <code>AccessController.doPrivileged</code> after enabling privileges. * {@code AccessController.doPrivileged} after enabling privileges.
* *
* @return a class-dependent value that may represent the results of the * @return a class-dependent value that may represent the results of the
* computation. Each class that implements * computation. Each class that implements
* <code>PrivilegedAction</code> * {@code PrivilegedAction}
* should document what (if anything) this value represents. * should document what (if anything) this value represents.
* @see AccessController#doPrivileged(PrivilegedAction) * @see AccessController#doPrivileged(PrivilegedAction)
* @see AccessController#doPrivileged(PrivilegedAction, * @see AccessController#doPrivileged(PrivilegedAction,
......
/* /*
* Copyright (c) 1998, 2001, 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
...@@ -27,13 +27,13 @@ package java.security; ...@@ -27,13 +27,13 @@ package java.security;
/** /**
* This exception is thrown by * This exception is thrown by
* <code>doPrivileged(PrivilegedExceptionAction)</code> and * {@code doPrivileged(PrivilegedExceptionAction)} and
* <code>doPrivileged(PrivilegedExceptionAction, * {@code doPrivileged(PrivilegedExceptionAction,
* AccessControlContext context)</code> to indicate * AccessControlContext context)} to indicate
* that the action being performed threw a checked exception. The exception * that the action being performed threw a checked exception. The exception
* thrown by the action can be obtained by calling the * thrown by the action can be obtained by calling the
* <code>getException</code> method. In effect, an * {@code getException} method. In effect, an
* <code>PrivilegedActionException</code> is a "wrapper" * {@code PrivilegedActionException} is a "wrapper"
* for an exception thrown by a privileged action. * for an exception thrown by a privileged action.
* *
* <p>As of release 1.4, this exception has been retrofitted to conform to * <p>As of release 1.4, this exception has been retrofitted to conform to
...@@ -69,14 +69,14 @@ public class PrivilegedActionException extends Exception { ...@@ -69,14 +69,14 @@ public class PrivilegedActionException extends Exception {
/** /**
* Returns the exception thrown by the privileged computation that * Returns the exception thrown by the privileged computation that
* resulted in this <code>PrivilegedActionException</code>. * resulted in this {@code PrivilegedActionException}.
* *
* <p>This method predates the general-purpose exception chaining facility. * <p>This method predates the general-purpose exception chaining facility.
* The {@link Throwable#getCause()} method is now the preferred means of * The {@link Throwable#getCause()} method is now the preferred means of
* obtaining this information. * obtaining this information.
* *
* @return the exception thrown by the privileged computation that * @return the exception thrown by the privileged computation that
* resulted in this <code>PrivilegedActionException</code>. * resulted in this {@code PrivilegedActionException}.
* @see PrivilegedExceptionAction * @see PrivilegedExceptionAction
* @see AccessController#doPrivileged(PrivilegedExceptionAction) * @see AccessController#doPrivileged(PrivilegedExceptionAction)
* @see AccessController#doPrivileged(PrivilegedExceptionAction, * @see AccessController#doPrivileged(PrivilegedExceptionAction,
...@@ -89,7 +89,7 @@ public class PrivilegedActionException extends Exception { ...@@ -89,7 +89,7 @@ public class PrivilegedActionException extends Exception {
/** /**
* Returns the cause of this exception (the exception thrown by * Returns the cause of this exception (the exception thrown by
* the privileged computation that resulted in this * the privileged computation that resulted in this
* <code>PrivilegedActionException</code>). * {@code PrivilegedActionException}).
* *
* @return the cause of this exception. * @return the cause of this exception.
* @since 1.4 * @since 1.4
......
/* /*
* 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
...@@ -29,11 +29,11 @@ package java.security; ...@@ -29,11 +29,11 @@ package java.security;
/** /**
* A computation to be performed with privileges enabled, that throws one or * A computation to be performed with privileges enabled, that throws one or
* more checked exceptions. The computation is performed by invoking * more checked exceptions. The computation is performed by invoking
* <code>AccessController.doPrivileged</code> on the * {@code AccessController.doPrivileged} on the
* <code>PrivilegedExceptionAction</code> object. This interface is * {@code PrivilegedExceptionAction} object. This interface is
* used only for computations that throw checked exceptions; * used only for computations that throw checked exceptions;
* computations that do not throw * computations that do not throw
* checked exceptions should use <code>PrivilegedAction</code> instead. * checked exceptions should use {@code PrivilegedAction} instead.
* *
* @see AccessController * @see AccessController
* @see AccessController#doPrivileged(PrivilegedExceptionAction) * @see AccessController#doPrivileged(PrivilegedExceptionAction)
...@@ -45,14 +45,14 @@ package java.security; ...@@ -45,14 +45,14 @@ package java.security;
public interface PrivilegedExceptionAction<T> { public interface PrivilegedExceptionAction<T> {
/** /**
* Performs the computation. This method will be called by * Performs the computation. This method will be called by
* <code>AccessController.doPrivileged</code> after enabling privileges. * {@code AccessController.doPrivileged} after enabling privileges.
* *
* @return a class-dependent value that may represent the results of the * @return a class-dependent value that may represent the results of the
* computation. Each class that implements * computation. Each class that implements
* <code>PrivilegedExceptionAction</code> should document what * {@code PrivilegedExceptionAction} should document what
* (if anything) this value represents. * (if anything) this value represents.
* @throws Exception an exceptional condition has occurred. Each class * @throws Exception an exceptional condition has occurred. Each class
* that implements <code>PrivilegedExceptionAction</code> should * that implements {@code PrivilegedExceptionAction} should
* document the exceptions that its run method can throw. * document the exceptions that its run method can throw.
* @see AccessController#doPrivileged(PrivilegedExceptionAction) * @see AccessController#doPrivileged(PrivilegedExceptionAction)
* @see AccessController#doPrivileged(PrivilegedExceptionAction,AccessControlContext) * @see AccessController#doPrivileged(PrivilegedExceptionAction,AccessControlContext)
......
...@@ -119,7 +119,7 @@ public class ProtectionDomain { ...@@ -119,7 +119,7 @@ public class ProtectionDomain {
/** /**
* Creates a new ProtectionDomain with the given CodeSource and * Creates a new ProtectionDomain with the given CodeSource and
* Permissions. If the permissions object is not null, then * Permissions. If the permissions object is not null, then
* <code>setReadOnly())</code> will be called on the passed in * {@code setReadOnly())} will be called on the passed in
* Permissions object. The only permissions granted to this domain * Permissions object. The only permissions granted to this domain
* are the ones specified; the current Policy will not be consulted. * are the ones specified; the current Policy will not be consulted.
* *
...@@ -145,7 +145,7 @@ public class ProtectionDomain { ...@@ -145,7 +145,7 @@ public class ProtectionDomain {
/** /**
* Creates a new ProtectionDomain qualified by the given CodeSource, * Creates a new ProtectionDomain qualified by the given CodeSource,
* Permissions, ClassLoader and array of Principals. If the * Permissions, ClassLoader and array of Principals. If the
* permissions object is not null, then <code>setReadOnly()</code> * permissions object is not null, then {@code setReadOnly()}
* will be called on the passed in Permissions object. * will be called on the passed in Permissions object.
* The permissions granted to this domain are dynamic; they include * The permissions granted to this domain are dynamic; they include
* both the static permissions passed to this constructor, and any * both the static permissions passed to this constructor, and any
...@@ -155,7 +155,7 @@ public class ProtectionDomain { ...@@ -155,7 +155,7 @@ public class ProtectionDomain {
* This constructor is typically used by * This constructor is typically used by
* {@link SecureClassLoader ClassLoaders} * {@link SecureClassLoader ClassLoaders}
* and {@link DomainCombiner DomainCombiners} which delegate to * and {@link DomainCombiner DomainCombiners} which delegate to
* <code>Policy</code> to actively associate the permissions granted to * {@code Policy} to actively associate the permissions granted to
* this domain. This constructor affords the * this domain. This constructor affords the
* Policy provider the opportunity to augment the supplied * Policy provider the opportunity to augment the supplied
* PermissionCollection to reflect policy changes. * PermissionCollection to reflect policy changes.
......
/* /*
* 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
...@@ -62,20 +62,20 @@ import java.lang.reflect.*; ...@@ -62,20 +62,20 @@ import java.lang.reflect.*;
* security token. A {@link ProviderException} should be used to indicate * security token. A {@link ProviderException} should be used to indicate
* such errors. * such errors.
* *
* <p>The service type <code>Provider</code> is reserved for use by the * <p>The service type {@code Provider} is reserved for use by the
* security framework. Services of this type cannot be added, removed, * security framework. Services of this type cannot be added, removed,
* or modified by applications. * or modified by applications.
* The following attributes are automatically placed in each Provider object: * The following attributes are automatically placed in each Provider object:
* <table cellspacing=4> * <table cellspacing=4>
* <tr><th>Name</th><th>Value</th> * <tr><th>Name</th><th>Value</th>
* <tr><td><code>Provider.id name</code></td> * <tr><td>{@code Provider.id name}</td>
* <td><code>String.valueOf(provider.getName())</code></td> * <td>{@code String.valueOf(provider.getName())}</td>
* <tr><td><code>Provider.id version</code></td> * <tr><td>{@code Provider.id version}</td>
* <td><code>String.valueOf(provider.getVersion())</code></td> * <td>{@code String.valueOf(provider.getVersion())}</td>
* <tr><td><code>Provider.id info</code></td> * <tr><td>{@code Provider.id info}</td>
<td><code>String.valueOf(provider.getInfo())</code></td> <td>{@code String.valueOf(provider.getInfo())}</td>
* <tr><td><code>Provider.id className</code></td> * <tr><td>{@code Provider.id className}</td>
* <td><code>provider.getClass().getName()</code></td> * <td>{@code provider.getClass().getName()}</td>
* </table> * </table>
* *
* @author Benjamin Renaud * @author Benjamin Renaud
...@@ -185,18 +185,18 @@ public abstract class Provider extends Properties { ...@@ -185,18 +185,18 @@ public abstract class Provider extends Properties {
* used to look up facilities implemented by the provider. * used to look up facilities implemented by the provider.
* *
* <p>First, if there is a security manager, its * <p>First, if there is a security manager, its
* <code>checkSecurityAccess</code> method is called with the string * {@code checkSecurityAccess} method is called with the string
* <code>"clearProviderProperties."+name</code> (where <code>name</code> * {@code "clearProviderProperties."+name} (where {@code name}
* is the provider name) to see if it's ok to clear this provider. * is the provider name) to see if it's ok to clear this provider.
* If the default implementation of <code>checkSecurityAccess</code> * If the default implementation of {@code checkSecurityAccess}
* is used (that is, that method is not overriden), then this results in * is used (that is, that method is not overriden), then this results in
* a call to the security manager's <code>checkPermission</code> method * a call to the security manager's {@code checkPermission} method
* with a <code>SecurityPermission("clearProviderProperties."+name)</code> * with a {@code SecurityPermission("clearProviderProperties."+name)}
* permission. * permission.
* *
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its <code>{@link * if a security manager exists and its {@link
* java.lang.SecurityManager#checkSecurityAccess}</code> method * java.lang.SecurityManager#checkSecurityAccess} method
* denies access to clear this provider * denies access to clear this provider
* *
* @since 1.2 * @since 1.2
...@@ -292,17 +292,17 @@ public abstract class Provider extends Properties { ...@@ -292,17 +292,17 @@ public abstract class Provider extends Properties {
} }
/** /**
* Sets the <code>key</code> property to have the specified * Sets the {@code key} property to have the specified
* <code>value</code>. * {@code value}.
* *
* <p>First, if there is a security manager, its * <p>First, if there is a security manager, its
* <code>checkSecurityAccess</code> method is called with the string * {@code checkSecurityAccess} method is called with the string
* <code>"putProviderProperty."+name</code>, where <code>name</code> is the * {@code "putProviderProperty."+name}, where {@code name} is the
* provider name, to see if it's ok to set this provider's property values. * provider name, to see if it's ok to set this provider's property values.
* If the default implementation of <code>checkSecurityAccess</code> * If the default implementation of {@code checkSecurityAccess}
* is used (that is, that method is not overriden), then this results in * is used (that is, that method is not overriden), then this results in
* a call to the security manager's <code>checkPermission</code> method * a call to the security manager's {@code checkPermission} method
* with a <code>SecurityPermission("putProviderProperty."+name)</code> * with a {@code SecurityPermission("putProviderProperty."+name)}
* permission. * permission.
* *
* @param key the property key. * @param key the property key.
...@@ -310,11 +310,11 @@ public abstract class Provider extends Properties { ...@@ -310,11 +310,11 @@ public abstract class Provider extends Properties {
* @param value the property value. * @param value the property value.
* *
* @return the previous value of the specified property * @return the previous value of the specified property
* (<code>key</code>), or null if it did not have one. * ({@code key}), or null if it did not have one.
* *
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its <code>{@link * if a security manager exists and its {@link
* java.lang.SecurityManager#checkSecurityAccess}</code> method * java.lang.SecurityManager#checkSecurityAccess} method
* denies access to set property values. * denies access to set property values.
* *
* @since 1.2 * @since 1.2
...@@ -329,18 +329,18 @@ public abstract class Provider extends Properties { ...@@ -329,18 +329,18 @@ public abstract class Provider extends Properties {
} }
/** /**
* Removes the <code>key</code> property (and its corresponding * Removes the {@code key} property (and its corresponding
* <code>value</code>). * {@code value}).
* *
* <p>First, if there is a security manager, its * <p>First, if there is a security manager, its
* <code>checkSecurityAccess</code> method is called with the string * {@code checkSecurityAccess} method is called with the string
* <code>"removeProviderProperty."+name</code>, where <code>name</code> is * {@code "removeProviderProperty."+name}, where {@code name} is
* the provider name, to see if it's ok to remove this provider's * the provider name, to see if it's ok to remove this provider's
* properties. If the default implementation of * properties. If the default implementation of
* <code>checkSecurityAccess</code> is used (that is, that method is not * {@code checkSecurityAccess} is used (that is, that method is not
* overriden), then this results in a call to the security manager's * overriden), then this results in a call to the security manager's
* <code>checkPermission</code> method with a * {@code checkPermission} method with a
* <code>SecurityPermission("removeProviderProperty."+name)</code> * {@code SecurityPermission("removeProviderProperty."+name)}
* permission. * permission.
* *
* @param key the key for the property to be removed. * @param key the key for the property to be removed.
...@@ -349,8 +349,8 @@ public abstract class Provider extends Properties { ...@@ -349,8 +349,8 @@ public abstract class Provider extends Properties {
* or null if the key did not have a mapping. * or null if the key did not have a mapping.
* *
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its <code>{@link * if a security manager exists and its {@link
* java.lang.SecurityManager#checkSecurityAccess}</code> method * java.lang.SecurityManager#checkSecurityAccess} method
* denies access to remove this provider's properties. * denies access to remove this provider's properties.
* *
* @since 1.2 * @since 1.2
...@@ -662,9 +662,9 @@ public abstract class Provider extends Properties { ...@@ -662,9 +662,9 @@ public abstract class Provider extends Properties {
* the service added via {@link #putService putService()} is returned. * the service added via {@link #putService putService()} is returned.
* *
* @param type the type of {@link Service service} requested * @param type the type of {@link Service service} requested
* (for example, <code>MessageDigest</code>) * (for example, {@code MessageDigest})
* @param algorithm the case insensitive algorithm name (or alternate * @param algorithm the case insensitive algorithm name (or alternate
* alias) of the service requested (for example, <code>SHA-1</code>) * alias) of the service requested (for example, {@code SHA-1})
* *
* @return the service describing this Provider's matching service * @return the service describing this Provider's matching service
* or null if no such service exists * or null if no such service exists
...@@ -739,20 +739,20 @@ public abstract class Provider extends Properties { ...@@ -739,20 +739,20 @@ public abstract class Provider extends Properties {
* Java Cryptography Architecture API Specification &amp; Reference </a>. * Java Cryptography Architecture API Specification &amp; Reference </a>.
* *
* <p>Also, if there is a security manager, its * <p>Also, if there is a security manager, its
* <code>checkSecurityAccess</code> method is called with the string * {@code checkSecurityAccess} method is called with the string
* <code>"putProviderProperty."+name</code>, where <code>name</code> is * {@code "putProviderProperty."+name}, where {@code name} is
* the provider name, to see if it's ok to set this provider's property * the provider name, to see if it's ok to set this provider's property
* values. If the default implementation of <code>checkSecurityAccess</code> * values. If the default implementation of {@code checkSecurityAccess}
* is used (that is, that method is not overriden), then this results in * is used (that is, that method is not overriden), then this results in
* a call to the security manager's <code>checkPermission</code> method with * a call to the security manager's {@code checkPermission} method with
* a <code>SecurityPermission("putProviderProperty."+name)</code> * a {@code SecurityPermission("putProviderProperty."+name)}
* permission. * permission.
* *
* @param s the Service to add * @param s the Service to add
* *
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its <code>{@link * if a security manager exists and its {@link
* java.lang.SecurityManager#checkSecurityAccess}</code> method denies * java.lang.SecurityManager#checkSecurityAccess} method denies
* access to set property values. * access to set property values.
* @throws NullPointerException if s is null * @throws NullPointerException if s is null
* *
...@@ -830,21 +830,21 @@ public abstract class Provider extends Properties { ...@@ -830,21 +830,21 @@ public abstract class Provider extends Properties {
* from this provider's Hashtable. * from this provider's Hashtable.
* *
* <p>Also, if there is a security manager, its * <p>Also, if there is a security manager, its
* <code>checkSecurityAccess</code> method is called with the string * {@code checkSecurityAccess} method is called with the string
* <code>"removeProviderProperty."+name</code>, where <code>name</code> is * {@code "removeProviderProperty."+name}, where {@code name} is
* the provider name, to see if it's ok to remove this provider's * the provider name, to see if it's ok to remove this provider's
* properties. If the default implementation of * properties. If the default implementation of
* <code>checkSecurityAccess</code> is used (that is, that method is not * {@code checkSecurityAccess} is used (that is, that method is not
* overriden), then this results in a call to the security manager's * overriden), then this results in a call to the security manager's
* <code>checkPermission</code> method with a * {@code checkPermission} method with a
* <code>SecurityPermission("removeProviderProperty."+name)</code> * {@code SecurityPermission("removeProviderProperty."+name)}
* permission. * permission.
* *
* @param s the Service to be removed * @param s the Service to be removed
* *
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its <code>{@link * if a security manager exists and its {@link
* java.lang.SecurityManager#checkSecurityAccess}</code> method denies * java.lang.SecurityManager#checkSecurityAccess} method denies
* access to remove this provider's properties. * access to remove this provider's properties.
* @throws NullPointerException if s is null * @throws NullPointerException if s is null
* *
...@@ -1122,7 +1122,7 @@ public abstract class Provider extends Properties { ...@@ -1122,7 +1122,7 @@ public abstract class Provider extends Properties {
} }
/** /**
* Get the type of this service. For example, <code>MessageDigest</code>. * Get the type of this service. For example, {@code MessageDigest}.
* *
* @return the type of this service * @return the type of this service
*/ */
...@@ -1132,7 +1132,7 @@ public abstract class Provider extends Properties { ...@@ -1132,7 +1132,7 @@ public abstract class Provider extends Properties {
/** /**
* Return the name of the algorithm of this service. For example, * Return the name of the algorithm of this service. For example,
* <code>SHA-1</code>. * {@code SHA-1}.
* *
* @return the algorithm of this service * @return the algorithm of this service
*/ */
......
/* /*
* Copyright (c) 1996, 2003, 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
...@@ -58,13 +58,13 @@ public class ProviderException extends RuntimeException { ...@@ -58,13 +58,13 @@ public class ProviderException extends RuntimeException {
} }
/** /**
* Creates a <code>ProviderException</code> with the specified * Creates a {@code ProviderException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -73,13 +73,13 @@ public class ProviderException extends RuntimeException { ...@@ -73,13 +73,13 @@ public class ProviderException extends RuntimeException {
} }
/** /**
* Creates a <code>ProviderException</code> with the specified cause * Creates a {@code ProviderException} with the specified cause
* and a detail message of <tt>(cause==null ? null : cause.toString())</tt> * and a detail message of {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* Copyright (c) 1996, 2001, 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
...@@ -32,7 +32,7 @@ package java.security; ...@@ -32,7 +32,7 @@ package java.security;
* *
* Note: The specialized public key interfaces extend this interface. * Note: The specialized public key interfaces extend this interface.
* See, for example, the DSAPublicKey interface in * See, for example, the DSAPublicKey interface in
* <code>java.security.interfaces</code>. * {@code java.security.interfaces}.
* *
* @see Key * @see Key
* @see PrivateKey * @see PrivateKey
......
/* /*
* 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
...@@ -63,12 +63,12 @@ public class SecureClassLoader extends ClassLoader { ...@@ -63,12 +63,12 @@ public class SecureClassLoader extends ClassLoader {
* class loader for delegation. * class loader for delegation.
* *
* <p>If there is a security manager, this method first * <p>If there is a security manager, this method first
* calls the security manager's <code>checkCreateClassLoader</code> * calls the security manager's {@code checkCreateClassLoader}
* method to ensure creation of a class loader is allowed. * method to ensure creation of a class loader is allowed.
* <p> * <p>
* @param parent the parent ClassLoader * @param parent the parent ClassLoader
* @exception SecurityException if a security manager exists and its * @exception SecurityException if a security manager exists and its
* <code>checkCreateClassLoader</code> method doesn't allow * {@code checkCreateClassLoader} method doesn't allow
* creation of a class loader. * creation of a class loader.
* @see SecurityManager#checkCreateClassLoader * @see SecurityManager#checkCreateClassLoader
*/ */
...@@ -87,11 +87,11 @@ public class SecureClassLoader extends ClassLoader { ...@@ -87,11 +87,11 @@ public class SecureClassLoader extends ClassLoader {
* loader for delegation. * loader for delegation.
* *
* <p>If there is a security manager, this method first * <p>If there is a security manager, this method first
* calls the security manager's <code>checkCreateClassLoader</code> * calls the security manager's {@code checkCreateClassLoader}
* method to ensure creation of a class loader is allowed. * method to ensure creation of a class loader is allowed.
* *
* @exception SecurityException if a security manager exists and its * @exception SecurityException if a security manager exists and its
* <code>checkCreateClassLoader</code> method doesn't allow * {@code checkCreateClassLoader} method doesn't allow
* creation of a class loader. * creation of a class loader.
* @see SecurityManager#checkCreateClassLoader * @see SecurityManager#checkCreateClassLoader
*/ */
...@@ -113,22 +113,22 @@ public class SecureClassLoader extends ClassLoader { ...@@ -113,22 +113,22 @@ public class SecureClassLoader extends ClassLoader {
* If a non-null CodeSource is supplied a ProtectionDomain is * If a non-null CodeSource is supplied a ProtectionDomain is
* constructed and associated with the class being defined. * constructed and associated with the class being defined.
* <p> * <p>
* @param name the expected name of the class, or <code>null</code> * @param name the expected name of the class, or {@code null}
* if not known, using '.' and not '/' as the separator * if not known, using '.' and not '/' as the separator
* and without a trailing ".class" suffix. * and without a trailing ".class" suffix.
* @param b the bytes that make up the class data. The bytes in * @param b the bytes that make up the class data. The bytes in
* positions <code>off</code> through <code>off+len-1</code> * positions {@code off} through {@code off+len-1}
* should have the format of a valid class file as defined by * should have the format of a valid class file as defined by
* <cite>The Java&trade; Virtual Machine Specification</cite>. * <cite>The Java&trade; Virtual Machine Specification</cite>.
* @param off the start offset in <code>b</code> of the class data * @param off the start offset in {@code b} of the class data
* @param len the length of the class data * @param len the length of the class data
* @param cs the associated CodeSource, or <code>null</code> if none * @param cs the associated CodeSource, or {@code null} if none
* @return the <code>Class</code> object created from the data, * @return the {@code Class} object created from the data,
* and optional CodeSource. * and optional CodeSource.
* @exception ClassFormatError if the data did not contain a valid class * @exception ClassFormatError if the data did not contain a valid class
* @exception IndexOutOfBoundsException if either <code>off</code> or * @exception IndexOutOfBoundsException if either {@code off} or
* <code>len</code> is negative, or if * {@code len} is negative, or if
* <code>off+len</code> is greater than <code>b.length</code>. * {@code off+len} is greater than {@code b.length}.
* *
* @exception SecurityException if an attempt is made to add this class * @exception SecurityException if an attempt is made to add this class
* to a package that contains classes that were signed by * to a package that contains classes that were signed by
...@@ -143,22 +143,22 @@ public class SecureClassLoader extends ClassLoader { ...@@ -143,22 +143,22 @@ public class SecureClassLoader extends ClassLoader {
} }
/** /**
* Converts a {@link java.nio.ByteBuffer <tt>ByteBuffer</tt>} * Converts a {@link java.nio.ByteBuffer ByteBuffer}
* into an instance of class <tt>Class</tt>, with an optional CodeSource. * into an instance of class {@code Class}, with an optional CodeSource.
* Before the class can be used it must be resolved. * Before the class can be used it must be resolved.
* <p> * <p>
* If a non-null CodeSource is supplied a ProtectionDomain is * If a non-null CodeSource is supplied a ProtectionDomain is
* constructed and associated with the class being defined. * constructed and associated with the class being defined.
* <p> * <p>
* @param name the expected name of the class, or <code>null</code> * @param name the expected name of the class, or {@code null}
* if not known, using '.' and not '/' as the separator * if not known, using '.' and not '/' as the separator
* and without a trailing ".class" suffix. * and without a trailing ".class" suffix.
* @param b the bytes that make up the class data. The bytes from positions * @param b the bytes that make up the class data. The bytes from positions
* <tt>b.position()</tt> through <tt>b.position() + b.limit() -1</tt> * {@code b.position()} through {@code b.position() + b.limit() -1}
* should have the format of a valid class file as defined by * should have the format of a valid class file as defined by
* <cite>The Java&trade; Virtual Machine Specification</cite>. * <cite>The Java&trade; Virtual Machine Specification</cite>.
* @param cs the associated CodeSource, or <code>null</code> if none * @param cs the associated CodeSource, or {@code null} if none
* @return the <code>Class</code> object created from the data, * @return the {@code Class} object created from the data,
* and optional CodeSource. * and optional CodeSource.
* @exception ClassFormatError if the data did not contain a valid class * @exception ClassFormatError if the data did not contain a valid class
* @exception SecurityException if an attempt is made to add this class * @exception SecurityException if an attempt is made to add this class
......
...@@ -50,7 +50,7 @@ import sun.security.jca.GetInstance.Instance; ...@@ -50,7 +50,7 @@ import sun.security.jca.GetInstance.Instance;
* <i>RFC 1750: Randomness Recommendations for Security</i></a>. * <i>RFC 1750: Randomness Recommendations for Security</i></a>.
* *
* <p>A caller obtains a SecureRandom instance via the * <p>A caller obtains a SecureRandom instance via the
* no-argument constructor or one of the <code>getInstance</code> methods: * no-argument constructor or one of the {@code getInstance} methods:
* *
* <pre> * <pre>
* SecureRandom random = new SecureRandom(); * SecureRandom random = new SecureRandom();
...@@ -71,15 +71,15 @@ import sun.security.jca.GetInstance.Instance; ...@@ -71,15 +71,15 @@ import sun.security.jca.GetInstance.Instance;
* random.nextBytes(bytes); * random.nextBytes(bytes);
* </pre> * </pre>
* *
* <p> Callers may also invoke the <code>generateSeed</code> method * <p> Callers may also invoke the {@code generateSeed} method
* to generate a given number of seed bytes (to seed other random number * to generate a given number of seed bytes (to seed other random number
* generators, for example): * generators, for example):
* <pre> * <pre>
* byte seed[] = random.generateSeed(20); * byte seed[] = random.generateSeed(20);
* </pre> * </pre>
* *
* Note: Depending on the implementation, the <code>generateSeed</code> and * Note: Depending on the implementation, the {@code generateSeed} and
* <code>nextBytes</code> methods may block as entropy is being gathered, * {@code nextBytes} methods may block as entropy is being gathered,
* for example, if they need to read from /dev/random on various Unix-like * for example, if they need to read from /dev/random on various Unix-like
* operating systems. * operating systems.
* *
...@@ -140,16 +140,16 @@ public class SecureRandom extends java.util.Random { ...@@ -140,16 +140,16 @@ public class SecureRandom extends java.util.Random {
* for information about standard RNG algorithm names. * for information about standard RNG algorithm names.
* *
* <p> The returned SecureRandom object has not been seeded. To seed the * <p> The returned SecureRandom object has not been seeded. To seed the
* returned object, call the <code>setSeed</code> method. * returned object, call the {@code setSeed} method.
* If <code>setSeed</code> is not called, the first call to * If {@code setSeed} is not called, the first call to
* <code>nextBytes</code> will force the SecureRandom object to seed itself. * {@code nextBytes} will force the SecureRandom object to seed itself.
* This self-seeding will not occur if <code>setSeed</code> was * This self-seeding will not occur if {@code setSeed} was
* previously called. * previously called.
*/ */
public SecureRandom() { public SecureRandom() {
/* /*
* This call to our superclass constructor will result in a call * This call to our superclass constructor will result in a call
* to our own <code>setSeed</code> method, which will return * to our own {@code setSeed} method, which will return
* immediately when it is passed zero. * immediately when it is passed zero.
*/ */
super(0); super(0);
...@@ -250,10 +250,10 @@ public class SecureRandom extends java.util.Random { ...@@ -250,10 +250,10 @@ public class SecureRandom extends java.util.Random {
* the {@link Security#getProviders() Security.getProviders()} method. * the {@link Security#getProviders() Security.getProviders()} method.
* *
* <p> The returned SecureRandom object has not been seeded. To seed the * <p> The returned SecureRandom object has not been seeded. To seed the
* returned object, call the <code>setSeed</code> method. * returned object, call the {@code setSeed} method.
* If <code>setSeed</code> is not called, the first call to * If {@code setSeed} is not called, the first call to
* <code>nextBytes</code> will force the SecureRandom object to seed itself. * {@code nextBytes} will force the SecureRandom object to seed itself.
* This self-seeding will not occur if <code>setSeed</code> was * This self-seeding will not occur if {@code setSeed} was
* previously called. * previously called.
* *
* @param algorithm the name of the RNG algorithm. * @param algorithm the name of the RNG algorithm.
...@@ -293,10 +293,10 @@ public class SecureRandom extends java.util.Random { ...@@ -293,10 +293,10 @@ public class SecureRandom extends java.util.Random {
* the {@link Security#getProviders() Security.getProviders()} method. * the {@link Security#getProviders() Security.getProviders()} method.
* *
* <p> The returned SecureRandom object has not been seeded. To seed the * <p> The returned SecureRandom object has not been seeded. To seed the
* returned object, call the <code>setSeed</code> method. * returned object, call the {@code setSeed} method.
* If <code>setSeed</code> is not called, the first call to * If {@code setSeed} is not called, the first call to
* <code>nextBytes</code> will force the SecureRandom object to seed itself. * {@code nextBytes} will force the SecureRandom object to seed itself.
* This self-seeding will not occur if <code>setSeed</code> was * This self-seeding will not occur if {@code setSeed} was
* previously called. * previously called.
* *
* @param algorithm the name of the RNG algorithm. * @param algorithm the name of the RNG algorithm.
...@@ -341,10 +341,10 @@ public class SecureRandom extends java.util.Random { ...@@ -341,10 +341,10 @@ public class SecureRandom extends java.util.Random {
* does not have to be registered in the provider list. * does not have to be registered in the provider list.
* *
* <p> The returned SecureRandom object has not been seeded. To seed the * <p> The returned SecureRandom object has not been seeded. To seed the
* returned object, call the <code>setSeed</code> method. * returned object, call the {@code setSeed} method.
* If <code>setSeed</code> is not called, the first call to * If {@code setSeed} is not called, the first call to
* <code>nextBytes</code> will force the SecureRandom object to seed itself. * {@code nextBytes} will force the SecureRandom object to seed itself.
* This self-seeding will not occur if <code>setSeed</code> was * This self-seeding will not occur if {@code setSeed} was
* previously called. * previously called.
* *
* @param algorithm the name of the RNG algorithm. * @param algorithm the name of the RNG algorithm.
...@@ -395,7 +395,7 @@ public class SecureRandom extends java.util.Random { ...@@ -395,7 +395,7 @@ public class SecureRandom extends java.util.Random {
* Returns the name of the algorithm implemented by this SecureRandom * Returns the name of the algorithm implemented by this SecureRandom
* object. * object.
* *
* @return the name of the algorithm or <code>unknown</code> * @return the name of the algorithm or {@code unknown}
* if the algorithm name cannot be determined. * if the algorithm name cannot be determined.
* @since 1.5 * @since 1.5
*/ */
...@@ -418,12 +418,12 @@ public class SecureRandom extends java.util.Random { ...@@ -418,12 +418,12 @@ public class SecureRandom extends java.util.Random {
/** /**
* Reseeds this random object, using the eight bytes contained * Reseeds this random object, using the eight bytes contained
* in the given <code>long seed</code>. The given seed supplements, * in the given {@code long seed}. The given seed supplements,
* rather than replaces, the existing seed. Thus, repeated calls * rather than replaces, the existing seed. Thus, repeated calls
* are guaranteed never to reduce randomness. * are guaranteed never to reduce randomness.
* *
* <p>This method is defined for compatibility with * <p>This method is defined for compatibility with
* <code>java.util.Random</code>. * {@code java.util.Random}.
* *
* @param seed the seed. * @param seed the seed.
* *
...@@ -445,10 +445,10 @@ public class SecureRandom extends java.util.Random { ...@@ -445,10 +445,10 @@ public class SecureRandom extends java.util.Random {
/** /**
* Generates a user-specified number of random bytes. * Generates a user-specified number of random bytes.
* *
* <p> If a call to <code>setSeed</code> had not occurred previously, * <p> If a call to {@code setSeed} had not occurred previously,
* the first call to this method forces this SecureRandom object * the first call to this method forces this SecureRandom object
* to seed itself. This self-seeding will not occur if * to seed itself. This self-seeding will not occur if
* <code>setSeed</code> was previously called. * {@code setSeed} was previously called.
* *
* @param bytes the array to be filled in with random bytes. * @param bytes the array to be filled in with random bytes.
*/ */
...@@ -460,15 +460,15 @@ public class SecureRandom extends java.util.Random { ...@@ -460,15 +460,15 @@ public class SecureRandom extends java.util.Random {
/** /**
* Generates an integer containing the user-specified number of * Generates an integer containing the user-specified number of
* pseudo-random bits (right justified, with leading zeros). This * pseudo-random bits (right justified, with leading zeros). This
* method overrides a <code>java.util.Random</code> method, and serves * method overrides a {@code java.util.Random} method, and serves
* to provide a source of random bits to all of the methods inherited * to provide a source of random bits to all of the methods inherited
* from that class (for example, <code>nextInt</code>, * from that class (for example, {@code nextInt},
* <code>nextLong</code>, and <code>nextFloat</code>). * {@code nextLong}, and {@code nextFloat}).
* *
* @param numBits number of pseudo-random bits to be generated, where * @param numBits number of pseudo-random bits to be generated, where
* {@code 0 <= numBits <= 32}. * {@code 0 <= numBits <= 32}.
* *
* @return an <code>int</code> containing the user-specified number * @return an {@code int} containing the user-specified number
* of pseudo-random bits (right justified, with leading zeros). * of pseudo-random bits (right justified, with leading zeros).
*/ */
@Override @Override
...@@ -492,8 +492,8 @@ public class SecureRandom extends java.util.Random { ...@@ -492,8 +492,8 @@ public class SecureRandom extends java.util.Random {
* *
* <p>This method is only included for backwards compatibility. * <p>This method is only included for backwards compatibility.
* The caller is encouraged to use one of the alternative * The caller is encouraged to use one of the alternative
* <code>getInstance</code> methods to obtain a SecureRandom object, and * {@code getInstance} methods to obtain a SecureRandom object, and
* then call the <code>generateSeed</code> method to obtain seed bytes * then call the {@code generateSeed} method to obtain seed bytes
* from that object. * from that object.
* *
* @param numBytes the number of seed bytes to generate. * @param numBytes the number of seed bytes to generate.
......
/* /*
* 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
...@@ -27,7 +27,7 @@ package java.security; ...@@ -27,7 +27,7 @@ package java.security;
/** /**
* 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>SecureRandom</code> class. * for the {@code SecureRandom} 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 the implementation * service provider who wishes to supply the implementation
* of a cryptographically strong pseudo-random number generator. * of a cryptographically strong pseudo-random number generator.
...@@ -53,10 +53,10 @@ public abstract class SecureRandomSpi implements java.io.Serializable { ...@@ -53,10 +53,10 @@ public abstract class SecureRandomSpi implements java.io.Serializable {
/** /**
* Generates a user-specified number of random bytes. * Generates a user-specified number of random bytes.
* *
* <p> If a call to <code>engineSetSeed</code> had not occurred previously, * <p> If a call to {@code engineSetSeed} had not occurred previously,
* the first call to this method forces this SecureRandom implementation * the first call to this method forces this SecureRandom implementation
* to seed itself. This self-seeding will not occur if * to seed itself. This self-seeding will not occur if
* <code>engineSetSeed</code> was previously called. * {@code engineSetSeed} was previously called.
* *
* @param bytes the array to be filled in with random bytes. * @param bytes the array to be filled in with random bytes.
*/ */
......
/* /*
* Copyright (c) 1996, 2012, 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
...@@ -298,7 +298,7 @@ public final class Security { ...@@ -298,7 +298,7 @@ public final class Security {
* property in the master file of the "SUN" Cryptographic Service * property in the master file of the "SUN" Cryptographic Service
* Provider in order to determine how to parse algorithm-specific * Provider in order to determine how to parse algorithm-specific
* parameters. Use the new provider-based and algorithm-independent * parameters. Use the new provider-based and algorithm-independent
* <code>AlgorithmParameters</code> and <code>KeyFactory</code> engine * {@code AlgorithmParameters} and {@code KeyFactory} engine
* classes (introduced in the J2SE version 1.2 platform) instead. * classes (introduced in the J2SE version 1.2 platform) instead.
*/ */
@Deprecated @Deprecated
...@@ -321,21 +321,21 @@ public final class Security { ...@@ -321,21 +321,21 @@ public final class Security {
* *
* <p>If the given provider is installed at the requested position, * <p>If the given provider is installed at the requested position,
* the provider that used to be at that position, and all providers * the provider that used to be at that position, and all providers
* with a position greater than <code>position</code>, are shifted up * with a position greater than {@code position}, are shifted up
* one position (towards the end of the list of installed providers). * one position (towards the end of the list of installed providers).
* *
* <p>A provider cannot be added if it is already installed. * <p>A provider cannot be added if it is already installed.
* *
* <p>First, if there is a security manager, its * <p>First, if there is a security manager, its
* <code>checkSecurityAccess</code> * {@code checkSecurityAccess}
* method is called with the string * method is called with the string
* <code>"insertProvider."+provider.getName()</code> * {@code "insertProvider."+provider.getName()}
* to see if it's ok to add a new provider. * to see if it's ok to add a new provider.
* If the default implementation of <code>checkSecurityAccess</code> * If the default implementation of {@code checkSecurityAccess}
* is used (i.e., that method is not overriden), then this will result in * is used (i.e., that method is not overriden), then this will result in
* a call to the security manager's <code>checkPermission</code> method * a call to the security manager's {@code checkPermission} method
* with a * with a
* <code>SecurityPermission("insertProvider."+provider.getName())</code> * {@code SecurityPermission("insertProvider."+provider.getName())}
* permission. * permission.
* *
* @param provider the provider to be added. * @param provider the provider to be added.
...@@ -349,8 +349,8 @@ public final class Security { ...@@ -349,8 +349,8 @@ public final class Security {
* *
* @throws NullPointerException if provider is null * @throws NullPointerException if provider is null
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its <code>{@link * if a security manager exists and its {@link
* java.lang.SecurityManager#checkSecurityAccess}</code> method * java.lang.SecurityManager#checkSecurityAccess} method
* denies access to add a new provider * denies access to add a new provider
* *
* @see #getProvider * @see #getProvider
...@@ -374,15 +374,15 @@ public final class Security { ...@@ -374,15 +374,15 @@ public final class Security {
* Adds a provider to the next position available. * Adds a provider to the next position available.
* *
* <p>First, if there is a security manager, its * <p>First, if there is a security manager, its
* <code>checkSecurityAccess</code> * {@code checkSecurityAccess}
* method is called with the string * method is called with the string
* <code>"insertProvider."+provider.getName()</code> * {@code "insertProvider."+provider.getName()}
* to see if it's ok to add a new provider. * to see if it's ok to add a new provider.
* If the default implementation of <code>checkSecurityAccess</code> * If the default implementation of {@code checkSecurityAccess}
* is used (i.e., that method is not overriden), then this will result in * is used (i.e., that method is not overriden), then this will result in
* a call to the security manager's <code>checkPermission</code> method * a call to the security manager's {@code checkPermission} method
* with a * with a
* <code>SecurityPermission("insertProvider."+provider.getName())</code> * {@code SecurityPermission("insertProvider."+provider.getName())}
* permission. * permission.
* *
* @param provider the provider to be added. * @param provider the provider to be added.
...@@ -393,8 +393,8 @@ public final class Security { ...@@ -393,8 +393,8 @@ public final class Security {
* *
* @throws NullPointerException if provider is null * @throws NullPointerException if provider is null
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its <code>{@link * if a security manager exists and its {@link
* java.lang.SecurityManager#checkSecurityAccess}</code> method * java.lang.SecurityManager#checkSecurityAccess} method
* denies access to add a new provider * denies access to add a new provider
* *
* @see #getProvider * @see #getProvider
...@@ -423,20 +423,20 @@ public final class Security { ...@@ -423,20 +423,20 @@ public final class Security {
* if name is null. * if name is null.
* *
* <p>First, if there is a security manager, its * <p>First, if there is a security manager, its
* <code>checkSecurityAccess</code> * {@code checkSecurityAccess}
* method is called with the string <code>"removeProvider."+name</code> * method is called with the string {@code "removeProvider."+name}
* to see if it's ok to remove the provider. * to see if it's ok to remove the provider.
* If the default implementation of <code>checkSecurityAccess</code> * If the default implementation of {@code checkSecurityAccess}
* is used (i.e., that method is not overriden), then this will result in * is used (i.e., that method is not overriden), then this will result in
* a call to the security manager's <code>checkPermission</code> method * a call to the security manager's {@code checkPermission} method
* with a <code>SecurityPermission("removeProvider."+name)</code> * with a {@code SecurityPermission("removeProvider."+name)}
* permission. * permission.
* *
* @param name the name of the provider to remove. * @param name the name of the provider to remove.
* *
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its <code>{@link * if a security manager exists and its {@link
* java.lang.SecurityManager#checkSecurityAccess}</code> method * java.lang.SecurityManager#checkSecurityAccess} method
* denies * denies
* access to remove the provider * access to remove the provider
* *
...@@ -689,7 +689,7 @@ public final class Security { ...@@ -689,7 +689,7 @@ public final class Security {
* an instance of an implementation of the requested algorithm * an instance of an implementation of the requested algorithm
* and type, and the second object in the array identifies the provider * and type, and the second object in the array identifies the provider
* of that implementation. * of that implementation.
* The <code>provider</code> argument can be null, in which case all * The {@code provider} argument can be null, in which case all
* configured providers will be searched in order of preference. * configured providers will be searched in order of preference.
*/ */
static Object[] getImpl(String algorithm, String type, String provider) static Object[] getImpl(String algorithm, String type, String provider)
...@@ -720,7 +720,7 @@ public final class Security { ...@@ -720,7 +720,7 @@ public final class Security {
* an instance of an implementation of the requested algorithm * an instance of an implementation of the requested algorithm
* and type, and the second object in the array identifies the provider * and type, and the second object in the array identifies the provider
* of that implementation. * of that implementation.
* The <code>provider</code> argument cannot be null. * The {@code provider} argument cannot be null.
*/ */
static Object[] getImpl(String algorithm, String type, Provider provider) static Object[] getImpl(String algorithm, String type, Provider provider)
throws NoSuchAlgorithmException { throws NoSuchAlgorithmException {
...@@ -739,8 +739,8 @@ public final class Security { ...@@ -739,8 +739,8 @@ public final class Security {
* Gets a security property value. * Gets a security property value.
* *
* <p>First, if there is a security manager, its * <p>First, if there is a security manager, its
* <code>checkPermission</code> method is called with a * {@code checkPermission} method is called with a
* <code>java.security.SecurityPermission("getProperty."+key)</code> * {@code java.security.SecurityPermission("getProperty."+key)}
* permission to see if it's ok to retrieve the specified * permission to see if it's ok to retrieve the specified
* security property value.. * security property value..
* *
...@@ -749,8 +749,8 @@ public final class Security { ...@@ -749,8 +749,8 @@ public final class Security {
* @return the value of the security property corresponding to key. * @return the value of the security property corresponding to key.
* *
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its <code>{@link * if a security manager exists and its {@link
* java.lang.SecurityManager#checkPermission}</code> method * java.lang.SecurityManager#checkPermission} method
* denies * denies
* access to retrieve the specified security property value * access to retrieve the specified security property value
* @throws NullPointerException is key is null * @throws NullPointerException is key is null
...@@ -774,8 +774,8 @@ public final class Security { ...@@ -774,8 +774,8 @@ public final class Security {
* Sets a security property value. * Sets a security property value.
* *
* <p>First, if there is a security manager, its * <p>First, if there is a security manager, its
* <code>checkPermission</code> method is called with a * {@code checkPermission} method is called with a
* <code>java.security.SecurityPermission("setProperty."+key)</code> * {@code java.security.SecurityPermission("setProperty."+key)}
* permission to see if it's ok to set the specified * permission to see if it's ok to set the specified
* security property value. * security property value.
* *
...@@ -784,8 +784,8 @@ public final class Security { ...@@ -784,8 +784,8 @@ public final class Security {
* @param datum the value of the property to be set. * @param datum the value of the property to be set.
* *
* @throws SecurityException * @throws SecurityException
* if a security manager exists and its <code>{@link * if a security manager exists and its {@link
* java.lang.SecurityManager#checkPermission}</code> method * java.lang.SecurityManager#checkPermission} method
* denies access to set the specified security property value * denies access to set the specified security property value
* @throws NullPointerException if key or datum is null * @throws NullPointerException if key or datum is null
* *
......
/* /*
* 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
...@@ -57,7 +57,7 @@ import java.util.StringTokenizer; ...@@ -57,7 +57,7 @@ import java.util.StringTokenizer;
* <td>createAccessControlContext</td> * <td>createAccessControlContext</td>
* <td>Creation of an AccessControlContext</td> * <td>Creation of an AccessControlContext</td>
* <td>This allows someone to instantiate an AccessControlContext * <td>This allows someone to instantiate an AccessControlContext
* with a <code>DomainCombiner</code>. Extreme care must be taken when * with a {@code DomainCombiner}. Extreme care must be taken when
* granting this permission. Malicious code could create a DomainCombiner * granting this permission. Malicious code could create a DomainCombiner
* that augments the set of permissions granted to code, and even grant the * that augments the set of permissions granted to code, and even grant the
* code {@link java.security.AllPermission}.</td> * code {@link java.security.AllPermission}.</td>
...@@ -67,7 +67,7 @@ import java.util.StringTokenizer; ...@@ -67,7 +67,7 @@ import java.util.StringTokenizer;
* <td>getDomainCombiner</td> * <td>getDomainCombiner</td>
* <td>Retrieval of an AccessControlContext's DomainCombiner</td> * <td>Retrieval of an AccessControlContext's DomainCombiner</td>
* <td>This allows someone to retrieve an AccessControlContext's * <td>This allows someone to retrieve an AccessControlContext's
* <code>DomainCombiner</code>. Since DomainCombiners may contain * {@code DomainCombiner}. Since DomainCombiners may contain
* sensitive information, this could potentially lead to a privacy leak.</td> * sensitive information, this could potentially lead to a privacy leak.</td>
* </tr> * </tr>
* *
...@@ -76,7 +76,7 @@ import java.util.StringTokenizer; ...@@ -76,7 +76,7 @@ import java.util.StringTokenizer;
* <td>Retrieval of the system-wide security policy (specifically, of the * <td>Retrieval of the system-wide security policy (specifically, of the
* currently-installed Policy object)</td> * currently-installed Policy object)</td>
* <td>This allows someone to query the policy via the * <td>This allows someone to query the policy via the
* <code>getPermissions</code> call, * {@code getPermissions} call,
* which discloses which permissions would be granted to a given CodeSource. * which discloses which permissions would be granted to a given CodeSource.
* While revealing the policy does not compromise the security of * While revealing the policy does not compromise the security of
* the system, it does provide malicious code with additional information * the system, it does provide malicious code with additional information
...@@ -303,8 +303,8 @@ public final class SecurityPermission extends BasicPermission { ...@@ -303,8 +303,8 @@ public final class SecurityPermission extends BasicPermission {
* *
* @param name the name of the SecurityPermission * @param name the name of the SecurityPermission
* *
* @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 SecurityPermission(String name) public SecurityPermission(String name)
...@@ -320,8 +320,8 @@ public final class SecurityPermission extends BasicPermission { ...@@ -320,8 +320,8 @@ public final class SecurityPermission extends BasicPermission {
* @param name the name of the SecurityPermission * @param name the name of the SecurityPermission
* @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 SecurityPermission(String name, String actions) public SecurityPermission(String name, String actions)
......
...@@ -53,10 +53,10 @@ import sun.security.jca.GetInstance.Instance; ...@@ -53,10 +53,10 @@ import sun.security.jca.GetInstance.Instance;
* *
* <p> The signature algorithm can be, among others, the NIST standard * <p> The signature algorithm can be, among others, the NIST standard
* DSA, using DSA and SHA-1. The DSA algorithm using the * DSA, using DSA and SHA-1. The DSA algorithm using the
* SHA-1 message digest algorithm can be specified as <tt>SHA1withDSA</tt>. * SHA-1 message digest algorithm can be specified as {@code SHA1withDSA}.
* In the case of RSA, there are multiple choices for the message digest * In the case of RSA, there are multiple choices for the message digest
* algorithm, so the signing algorithm could be specified as, for example, * algorithm, so the signing algorithm could be specified as, for example,
* <tt>MD2withRSA</tt>, <tt>MD5withRSA</tt>, or <tt>SHA1withRSA</tt>. * {@code MD2withRSA}, {@code MD5withRSA}, or {@code SHA1withRSA}.
* The algorithm name must be specified, as there is no default. * The algorithm name must be specified, as there is no default.
* *
* <p> A Signature object can be used to generate and verify digital * <p> A Signature object can be used to generate and verify digital
...@@ -92,18 +92,18 @@ import sun.security.jca.GetInstance.Instance; ...@@ -92,18 +92,18 @@ import sun.security.jca.GetInstance.Instance;
* </ol> * </ol>
* *
* <p>Note that this class is abstract and extends from * <p>Note that this class is abstract and extends from
* <code>SignatureSpi</code> for historical reasons. * {@code SignatureSpi} for historical reasons.
* Application developers should only take notice of the methods defined in * Application developers should only take notice of the methods defined in
* this <code>Signature</code> class; all the methods in * this {@code Signature} class; all the methods in
* the superclass are intended for cryptographic service providers who wish to * the superclass are intended for cryptographic service providers who wish to
* supply their own implementations of digital signature algorithms. * supply their own implementations of digital signature algorithms.
* *
* <p> Every implementation of the Java platform is required to support the * <p> Every implementation of the Java platform is required to support the
* following standard <code>Signature</code> algorithms: * following standard {@code Signature} algorithms:
* <ul> * <ul>
* <li><tt>SHA1withDSA</tt></li> * <li>{@code SHA1withDSA}</li>
* <li><tt>SHA1withRSA</tt></li> * <li>{@code SHA1withRSA}</li>
* <li><tt>SHA256withRSA</tt></li> * <li>{@code SHA256withRSA}</li>
* </ul> * </ul>
* These algorithms are described in the <a href= * These algorithms are described in the <a href=
* "{@docRoot}/../technotes/guides/security/StandardNames.html#Signature"> * "{@docRoot}/../technotes/guides/security/StandardNames.html#Signature">
...@@ -461,7 +461,7 @@ public abstract class Signature extends SignatureSpi { ...@@ -461,7 +461,7 @@ public abstract class Signature extends SignatureSpi {
* extension field implies that the public key in * extension field implies that the public key in
* the certificate and its corresponding private key are not * the certificate and its corresponding private key are not
* supposed to be used for digital signatures, an * supposed to be used for digital signatures, an
* <code>InvalidKeyException</code> is thrown. * {@code InvalidKeyException} is thrown.
* *
* @param certificate the certificate of the identity whose signature is * @param certificate the certificate of the identity whose signature is
* going to be verified. * going to be verified.
...@@ -538,10 +538,10 @@ public abstract class Signature extends SignatureSpi { ...@@ -538,10 +538,10 @@ public abstract class Signature extends SignatureSpi {
* *
* <p>A call to this method resets this signature object to the state * <p>A call to this method resets this signature object to the state
* it was in when previously initialized for signing via a * it was in when previously initialized for signing via a
* call to <code>initSign(PrivateKey)</code>. That is, the object is * call to {@code initSign(PrivateKey)}. That is, the object is
* reset and available to generate another signature from the same * reset and available to generate another signature from the same
* signer, if desired, via new calls to <code>update</code> and * signer, if desired, via new calls to {@code update} and
* <code>sign</code>. * {@code sign}.
* *
* @return the signature bytes of the signing operation's result. * @return the signature bytes of the signing operation's result.
* *
...@@ -559,28 +559,28 @@ public abstract class Signature extends SignatureSpi { ...@@ -559,28 +559,28 @@ public abstract class Signature extends SignatureSpi {
/** /**
* Finishes the signature operation and stores the resulting signature * Finishes the signature operation and stores the resulting signature
* bytes in the provided buffer <code>outbuf</code>, starting at * bytes in the provided buffer {@code outbuf}, starting at
* <code>offset</code>. * {@code offset}.
* The format of the signature depends on the underlying * The format of the signature depends on the underlying
* signature scheme. * signature scheme.
* *
* <p>This signature object is reset to its initial state (the state it * <p>This signature object is reset to its initial state (the state it
* was in after a call to one of the <code>initSign</code> methods) and * was in after a call to one of the {@code initSign} methods) and
* can be reused to generate further signatures with the same private key. * can be reused to generate further signatures with the same private key.
* *
* @param outbuf buffer for the signature result. * @param outbuf buffer for the signature result.
* *
* @param offset offset into <code>outbuf</code> where the signature is * @param offset offset into {@code outbuf} where the signature is
* stored. * stored.
* *
* @param len number of bytes within <code>outbuf</code> allotted for the * @param len number of bytes within {@code outbuf} allotted for the
* signature. * signature.
* *
* @return the number of bytes placed into <code>outbuf</code>. * @return the number of bytes placed into {@code outbuf}.
* *
* @exception SignatureException if this signature object is not * @exception SignatureException if this signature object is not
* initialized properly, if this signature algorithm is unable to * initialized properly, if this signature algorithm is unable to
* process the input data provided, or if <code>len</code> is less * process the input data provided, or if {@code len} is less
* than the actual signature length. * than the actual signature length.
* *
* @since 1.2 * @since 1.2
...@@ -606,9 +606,9 @@ public abstract class Signature extends SignatureSpi { ...@@ -606,9 +606,9 @@ public abstract class Signature extends SignatureSpi {
* *
* <p>A call to this method resets this signature object to the state * <p>A call to this method resets this signature object to the state
* it was in when previously initialized for verification via a * it was in when previously initialized for verification via a
* call to <code>initVerify(PublicKey)</code>. That is, the object is * call to {@code initVerify(PublicKey)}. That is, the object is
* reset and available to verify another signature from the identity * reset and available to verify another signature from the identity
* whose public key was specified in the call to <code>initVerify</code>. * whose public key was specified in the call to {@code initVerify}.
* *
* @param signature the signature bytes to be verified. * @param signature the signature bytes to be verified.
* *
...@@ -633,9 +633,9 @@ public abstract class Signature extends SignatureSpi { ...@@ -633,9 +633,9 @@ public abstract class Signature extends SignatureSpi {
* *
* <p>A call to this method resets this signature object to the state * <p>A call to this method resets this signature object to the state
* it was in when previously initialized for verification via a * it was in when previously initialized for verification via a
* call to <code>initVerify(PublicKey)</code>. That is, the object is * call to {@code initVerify(PublicKey)}. That is, the object is
* reset and available to verify another signature from the identity * reset and available to verify another signature from the identity
* whose public key was specified in the call to <code>initVerify</code>. * whose public key was specified in the call to {@code initVerify}.
* *
* *
* @param signature the signature bytes to be verified. * @param signature the signature bytes to be verified.
...@@ -648,11 +648,11 @@ public abstract class Signature extends SignatureSpi { ...@@ -648,11 +648,11 @@ public abstract class Signature extends SignatureSpi {
* initialized properly, the passed-in signature is improperly * initialized properly, the passed-in signature is improperly
* encoded or of the wrong type, if this signature algorithm is unable to * encoded or of the wrong type, if this signature algorithm is unable to
* process the input data provided, etc. * process the input data provided, etc.
* @exception IllegalArgumentException if the <code>signature</code> * @exception IllegalArgumentException if the {@code signature}
* byte array is null, or the <code>offset</code> or <code>length</code> * byte array is null, or the {@code offset} or {@code length}
* is less than 0, or the sum of the <code>offset</code> and * is less than 0, or the sum of the {@code offset} and
* <code>length</code> is greater than the length of the * {@code length} is greater than the length of the
* <code>signature</code> byte array. * {@code signature} byte array.
* @since 1.4 * @since 1.4
*/ */
public final boolean verify(byte[] signature, int offset, int length) public final boolean verify(byte[] signature, int offset, int length)
...@@ -722,8 +722,8 @@ public abstract class Signature extends SignatureSpi { ...@@ -722,8 +722,8 @@ public abstract class Signature extends SignatureSpi {
/** /**
* Updates the data to be signed or verified using the specified * Updates the data to be signed or verified using the specified
* ByteBuffer. Processes the <code>data.remaining()</code> bytes * ByteBuffer. Processes the {@code data.remaining()} bytes
* starting at at <code>data.position()</code>. * starting at at {@code data.position()}.
* Upon return, the buffer's position will be equal to its limit; * Upon return, the buffer's position will be equal to its limit;
* its limit will not have changed. * its limit will not have changed.
* *
...@@ -790,7 +790,7 @@ public abstract class Signature extends SignatureSpi { ...@@ -790,7 +790,7 @@ public abstract class Signature extends SignatureSpi {
* @param param the string identifier of the parameter. * @param param the string identifier of the parameter.
* @param value the parameter value. * @param value the parameter value.
* *
* @exception InvalidParameterException if <code>param</code> is an * @exception InvalidParameterException if {@code param} is an
* invalid parameter for this signature algorithm engine, * invalid parameter for this signature algorithm engine,
* the parameter is already set * the parameter is already set
* and cannot be set again, a security exception occurs, and so on. * and cannot be set again, a security exception occurs, and so on.
...@@ -856,7 +856,7 @@ public abstract class Signature extends SignatureSpi { ...@@ -856,7 +856,7 @@ public abstract class Signature extends SignatureSpi {
* @return the object that represents the parameter value, or null if * @return the object that represents the parameter value, or null if
* there is none. * there is none.
* *
* @exception InvalidParameterException if <code>param</code> is an invalid * @exception InvalidParameterException if {@code param} is an invalid
* parameter for this engine, or another exception occurs while * parameter for this engine, or another exception occurs while
* trying to get this parameter. * trying to get this parameter.
* *
...@@ -876,7 +876,7 @@ public abstract class Signature extends SignatureSpi { ...@@ -876,7 +876,7 @@ public abstract class Signature extends SignatureSpi {
* @return a clone if the implementation is cloneable. * @return a clone if the implementation is cloneable.
* *
* @exception CloneNotSupportedException if this is called * @exception CloneNotSupportedException if this is called
* on an implementation that does not support <code>Cloneable</code>. * on an implementation that does not support {@code Cloneable}.
*/ */
public Object clone() throws CloneNotSupportedException { public Object clone() throws CloneNotSupportedException {
if (this instanceof Cloneable) { if (this instanceof Cloneable) {
...@@ -940,7 +940,7 @@ public abstract class Signature extends SignatureSpi { ...@@ -940,7 +940,7 @@ public abstract class Signature extends SignatureSpi {
* @return a clone if the delegate is cloneable. * @return a clone if the delegate is cloneable.
* *
* @exception CloneNotSupportedException if this is called on a * @exception CloneNotSupportedException if this is called on a
* delegate that does not support <code>Cloneable</code>. * delegate that does not support {@code Cloneable}.
*/ */
public Object clone() throws CloneNotSupportedException { public Object clone() throws CloneNotSupportedException {
chooseFirstProvider(); chooseFirstProvider();
......
/* /*
* Copyright (c) 1996, 2003, 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
...@@ -56,13 +56,13 @@ public class SignatureException extends GeneralSecurityException { ...@@ -56,13 +56,13 @@ public class SignatureException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>SignatureException</code> with the specified * Creates a {@code SignatureException} with the specified
* detail message and cause. * detail message and cause.
* *
* @param message the detail message (which is saved for later retrieval * @param message the detail message (which is saved for later retrieval
* by the {@link #getMessage()} method). * by the {@link #getMessage()} method).
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
...@@ -71,13 +71,13 @@ public class SignatureException extends GeneralSecurityException { ...@@ -71,13 +71,13 @@ public class SignatureException extends GeneralSecurityException {
} }
/** /**
* Creates a <code>SignatureException</code> with the specified cause * Creates a {@code SignatureException} with the specified cause
* and a detail message of <tt>(cause==null ? null : cause.toString())</tt> * and a detail message of {@code (cause==null ? null : cause.toString())}
* (which typically contains the class and detail message of * (which typically contains the class and detail message of
* <tt>cause</tt>). * {@code cause}).
* *
* @param cause the cause (which is saved for later retrieval by the * @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method). (A <tt>null</tt> value is permitted, * {@link #getCause()} method). (A {@code null} value is permitted,
* and indicates that the cause is nonexistent or unknown.) * and indicates that the cause is nonexistent or unknown.)
* @since 1.5 * @since 1.5
*/ */
......
/* /*
* 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
...@@ -35,7 +35,7 @@ import sun.security.jca.JCAUtil; ...@@ -35,7 +35,7 @@ import sun.security.jca.JCAUtil;
/** /**
* 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>Signature</code> class, which is used to provide the * for the {@code Signature} class, which is used to provide the
* functionality of a digital signature algorithm. Digital signatures are used * functionality of a digital signature algorithm. Digital signatures are used
* for authentication and integrity assurance of digital data. * for authentication and integrity assurance of digital data.
*. *.
...@@ -130,8 +130,8 @@ public abstract class SignatureSpi { ...@@ -130,8 +130,8 @@ public abstract class SignatureSpi {
/** /**
* Updates the data to be signed or verified using the specified * Updates the data to be signed or verified using the specified
* ByteBuffer. Processes the <code>data.remaining()</code> bytes * ByteBuffer. Processes the {@code data.remaining()} bytes
* starting at at <code>data.position()</code>. * starting at at {@code data.position()}.
* Upon return, the buffer's position will be equal to its limit; * Upon return, the buffer's position will be equal to its limit;
* its limit will not have changed. * its limit will not have changed.
* *
...@@ -183,14 +183,14 @@ public abstract class SignatureSpi { ...@@ -183,14 +183,14 @@ public abstract class SignatureSpi {
/** /**
* Finishes this signature operation and stores the resulting signature * Finishes this signature operation and stores the resulting signature
* bytes in the provided buffer <code>outbuf</code>, starting at * bytes in the provided buffer {@code outbuf}, starting at
* <code>offset</code>. * {@code offset}.
* The format of the signature depends on the underlying * The format of the signature depends on the underlying
* signature scheme. * signature scheme.
* *
* <p>The signature implementation is reset to its initial state * <p>The signature implementation is reset to its initial state
* (the state it was in after a call to one of the * (the state it was in after a call to one of the
* <code>engineInitSign</code> methods) * {@code engineInitSign} methods)
* and can be reused to generate further signatures with the same private * and can be reused to generate further signatures with the same private
* key. * key.
* *
...@@ -200,10 +200,10 @@ public abstract class SignatureSpi { ...@@ -200,10 +200,10 @@ public abstract class SignatureSpi {
* *
* @param outbuf buffer for the signature result. * @param outbuf buffer for the signature result.
* *
* @param offset offset into <code>outbuf</code> where the signature is * @param offset offset into {@code outbuf} where the signature is
* stored. * stored.
* *
* @param len number of bytes within <code>outbuf</code> allotted for the * @param len number of bytes within {@code outbuf} allotted for the
* signature. * signature.
* Both this default implementation and the SUN provider do not * Both this default implementation and the SUN provider do not
* return partial digests. If the value of this parameter is less * return partial digests. If the value of this parameter is less
...@@ -212,11 +212,11 @@ public abstract class SignatureSpi { ...@@ -212,11 +212,11 @@ public abstract class SignatureSpi {
* This parameter is ignored if its value is greater than or equal to * This parameter is ignored if its value is greater than or equal to
* the actual signature length. * the actual signature length.
* *
* @return the number of bytes placed into <code>outbuf</code> * @return the number of bytes placed into {@code outbuf}
* *
* @exception SignatureException if the engine is not * @exception SignatureException if the engine is not
* initialized properly, if this signature algorithm is unable to * initialized properly, if this signature algorithm is unable to
* process the input data provided, or if <code>len</code> is less * process the input data provided, or if {@code len} is less
* than the actual signature length. * than the actual signature length.
* *
* @since 1.2 * @since 1.2
...@@ -293,7 +293,7 @@ public abstract class SignatureSpi { ...@@ -293,7 +293,7 @@ public abstract class SignatureSpi {
* *
* @param value the parameter value. * @param value the parameter value.
* *
* @exception InvalidParameterException if <code>param</code> is an * @exception InvalidParameterException if {@code param} is an
* invalid parameter for this signature algorithm engine, * invalid parameter for this signature algorithm engine,
* the parameter is already set * the parameter is already set
* and cannot be set again, a security exception occurs, and so on. * and cannot be set again, a security exception occurs, and so on.
...@@ -362,7 +362,7 @@ public abstract class SignatureSpi { ...@@ -362,7 +362,7 @@ public abstract class SignatureSpi {
* @return the object that represents the parameter value, or null if * @return the object that represents the parameter value, or null if
* there is none. * there is none.
* *
* @exception InvalidParameterException if <code>param</code> is an * @exception InvalidParameterException if {@code param} is an
* invalid parameter for this engine, or another exception occurs while * invalid parameter for this engine, or another exception occurs while
* trying to get this parameter. * trying to get this parameter.
* *
...@@ -378,7 +378,7 @@ public abstract class SignatureSpi { ...@@ -378,7 +378,7 @@ public abstract class SignatureSpi {
* @return a clone if the implementation is cloneable. * @return a clone if the implementation is cloneable.
* *
* @exception CloneNotSupportedException if this is called * @exception CloneNotSupportedException if this is called
* on an implementation that does not support <code>Cloneable</code>. * on an implementation that does not support {@code Cloneable}.
*/ */
public Object clone() throws CloneNotSupportedException { public Object clone() throws CloneNotSupportedException {
if (this instanceof Cloneable) { if (this instanceof Cloneable) {
......
/* /*
* 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
...@@ -40,44 +40,44 @@ import java.io.*; ...@@ -40,44 +40,44 @@ import java.io.*;
* the original object has no side effect on the copy. * the original object has no side effect on the copy.
* *
* <p> The underlying signing algorithm is designated by the Signature * <p> The underlying signing algorithm is designated by the Signature
* object passed to the constructor and the <code>verify</code> method. * object passed to the constructor and the {@code verify} method.
* A typical usage for signing is the following: * A typical usage for signing is the following:
* *
* <p> <code> <pre> * <p> <pre>{@code
* Signature signingEngine = Signature.getInstance(algorithm, * Signature signingEngine = Signature.getInstance(algorithm,
* provider); * provider);
* SignedObject so = new SignedObject(myobject, signingKey, * SignedObject so = new SignedObject(myobject, signingKey,
* signingEngine); * signingEngine);
* </pre> </code> * }</pre>
* *
* <p> A typical usage for verification is the following (having * <p> A typical usage for verification is the following (having
* received SignedObject <code>so</code>): * received SignedObject {@code so}):
* *
* <p> <code> <pre> * <p> <pre>{@code
* Signature verificationEngine = * Signature verificationEngine =
* Signature.getInstance(algorithm, provider); * Signature.getInstance(algorithm, provider);
* if (so.verify(publickey, verificationEngine)) * if (so.verify(publickey, verificationEngine))
* try { * try {
* Object myobj = so.getObject(); * Object myobj = so.getObject();
* } catch (java.lang.ClassNotFoundException e) {}; * } catch (java.lang.ClassNotFoundException e) {};
* </pre> </code> * }</pre>
* *
* <p> Several points are worth noting. First, there is no need to * <p> Several points are worth noting. First, there is no need to
* initialize the signing or verification engine, as it will be * initialize the signing or verification engine, as it will be
* re-initialized inside the constructor and the <code>verify</code> * re-initialized inside the constructor and the {@code verify}
* method. Secondly, for verification to succeed, the specified * method. Secondly, for verification to succeed, the specified
* public key must be the public key corresponding to the private key * public key must be the public key corresponding to the private key
* used to generate the SignedObject. * used to generate the SignedObject.
* *
* <p> More importantly, for flexibility reasons, the * <p> More importantly, for flexibility reasons, the
* constructor and <code>verify</code> method allow for * constructor and {@code verify} method allow for
* customized signature engines, which can implement signature * customized signature engines, which can implement signature
* algorithms that are not installed formally as part of a crypto * algorithms that are not installed formally as part of a crypto
* provider. However, it is crucial that the programmer writing the * provider. However, it is crucial that the programmer writing the
* verifier code be aware what <code>Signature</code> engine is being * verifier code be aware what {@code Signature} engine is being
* used, as its own implementation of the <code>verify</code> method * used, as its own implementation of the {@code verify} method
* is invoked to verify a signature. In other words, a malicious * is invoked to verify a signature. In other words, a malicious
* <code>Signature</code> may choose to always return true on * {@code Signature} may choose to always return true on
* verification in an attempt to bypass a security check. * verification in an attempt to bypass a security check.
* *
* <p> The signature algorithm can be, among others, the NIST standard * <p> The signature algorithm can be, among others, the NIST standard
...@@ -92,7 +92,7 @@ import java.io.*; ...@@ -92,7 +92,7 @@ import java.io.*;
* *
* <p> The name of the Cryptography Package Provider is designated * <p> The name of the Cryptography Package Provider is designated
* also by the Signature parameter to the constructor and the * also by the Signature parameter to the constructor and the
* <code>verify</code> method. If the provider is not * {@code verify} method. If the provider is not
* specified, the default provider is used. Each installation can * specified, the default provider is used. Each installation can
* be configured to use a particular provider as default. * be configured to use a particular provider as default.
* *
...@@ -214,8 +214,8 @@ public final class SignedObject implements Serializable { ...@@ -214,8 +214,8 @@ public final class SignedObject implements Serializable {
* @exception SignatureException if signature verification failed. * @exception SignatureException if signature verification failed.
* @exception InvalidKeyException if the verification key is invalid. * @exception InvalidKeyException if the verification key is invalid.
* *
* @return <tt>true</tt> if the signature * @return {@code true} if the signature
* is valid, <tt>false</tt> otherwise * is valid, {@code false} otherwise
*/ */
public boolean verify(PublicKey verificationKey, public boolean verify(PublicKey verificationKey,
Signature verificationEngine) Signature verificationEngine)
......
/* /*
* Copyright (c) 1996, 2006, 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
...@@ -40,9 +40,9 @@ import java.io.*; ...@@ -40,9 +40,9 @@ import java.io.*;
* @author Benjamin Renaud * @author Benjamin Renaud
* *
* @deprecated This class is no longer used. Its functionality has been * @deprecated This class is no longer used. Its functionality has been
* replaced by <code>java.security.KeyStore</code>, the * replaced by {@code java.security.KeyStore}, the
* <code>java.security.cert</code> package, and * {@code java.security.cert} package, and
* <code>java.security.Principal</code>. * {@code java.security.Principal}.
*/ */
@Deprecated @Deprecated
public abstract class Signer extends Identity { public abstract class Signer extends Identity {
...@@ -92,15 +92,15 @@ public abstract class Signer extends Identity { ...@@ -92,15 +92,15 @@ public abstract class Signer extends Identity {
/** /**
* Returns this signer's private key. * Returns this signer's private key.
* *
* <p>First, if there is a security manager, its <code>checkSecurityAccess</code> * <p>First, if there is a security manager, its {@code checkSecurityAccess}
* method is called with <code>"getSignerPrivateKey"</code> * method is called with {@code "getSignerPrivateKey"}
* as its argument to see if it's ok to return the private key. * as its argument to see if it's ok to return the private key.
* *
* @return this signer's private key, or null if the private key has * @return this signer's private key, or null if the private key has
* not yet been set. * not yet been set.
* *
* @exception SecurityException if a security manager exists and its * @exception SecurityException if a security manager exists and its
* <code>checkSecurityAccess</code> method doesn't allow * {@code checkSecurityAccess} method doesn't allow
* returning the private key. * returning the private key.
* *
* @see SecurityManager#checkSecurityAccess * @see SecurityManager#checkSecurityAccess
...@@ -113,8 +113,8 @@ public abstract class Signer extends Identity { ...@@ -113,8 +113,8 @@ public abstract class Signer extends Identity {
/** /**
* Sets the key pair (public key and private key) for this signer. * Sets the key pair (public key and private key) for this signer.
* *
* <p>First, if there is a security manager, its <code>checkSecurityAccess</code> * <p>First, if there is a security manager, its {@code checkSecurityAccess}
* method is called with <code>"setSignerKeyPair"</code> * method is called with {@code "setSignerKeyPair"}
* as its argument to see if it's ok to set the key pair. * as its argument to see if it's ok to set the key pair.
* *
* @param pair an initialized key pair. * @param pair an initialized key pair.
...@@ -124,7 +124,7 @@ public abstract class Signer extends Identity { ...@@ -124,7 +124,7 @@ public abstract class Signer extends Identity {
* @exception KeyException if the key pair cannot be set for any * @exception KeyException if the key pair cannot be set for any
* other reason. * other reason.
* @exception SecurityException if a security manager exists and its * @exception SecurityException if a security manager exists and its
* <code>checkSecurityAccess</code> method doesn't allow * {@code checkSecurityAccess} method doesn't allow
* setting the key pair. * setting the key pair.
* *
* @see SecurityManager#checkSecurityAccess * @see SecurityManager#checkSecurityAccess
......
/* /*
* 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
...@@ -72,11 +72,11 @@ import java.security.cert.*; ...@@ -72,11 +72,11 @@ import java.security.cert.*;
* the class provides a zero, one, and/or two-argument constructor. * the class provides a zero, one, and/or two-argument constructor.
* The zero-argument constructor would be used to instantiate * The zero-argument constructor would be used to instantiate
* a permission without a name and without actions. * a permission without a name and without actions.
* A one-arg constructor is assumed to take a <code>String</code> * A one-arg constructor is assumed to take a {@code String}
* name as input, and a two-arg constructor is assumed to take a * name as input, and a two-arg constructor is assumed to take a
* <code>String</code> name and <code>String</code> actions * {@code String} name and {@code String} actions
* as input. UnresolvedPermission may invoke a * as input. UnresolvedPermission may invoke a
* constructor with a <code>null</code> name and/or actions. * constructor with a {@code null} name and/or actions.
* If an appropriate permission constructor is not available, * If an appropriate permission constructor is not available,
* the UnresolvedPermission is ignored and the relevant permission * the UnresolvedPermission is ignored and the relevant permission
* will not be granted to executing code. * will not be granted to executing code.
...@@ -84,9 +84,9 @@ import java.security.cert.*; ...@@ -84,9 +84,9 @@ import java.security.cert.*;
* <p> The newly created permission object replaces the * <p> The newly created permission object replaces the
* UnresolvedPermission, which is removed. * UnresolvedPermission, which is removed.
* *
* <p> Note that the <code>getName</code> method for an * <p> Note that the {@code getName} method for an
* <code>UnresolvedPermission</code> returns the * {@code UnresolvedPermission} returns the
* <code>type</code> (class name) for the underlying permission * {@code type} (class name) for the underlying permission
* that has not been resolved. * that has not been resolved.
* *
* @see java.security.Permission * @see java.security.Permission
...@@ -440,7 +440,7 @@ implements java.io.Serializable ...@@ -440,7 +440,7 @@ implements java.io.Serializable
* has not been resolved. * has not been resolved.
* *
* @return the target name of the underlying permission that * @return the target name of the underlying permission that
* has not been resolved, or <code>null</code>, * has not been resolved, or {@code null},
* if there is no targe name * if there is no targe name
* *
* @since 1.5 * @since 1.5
...@@ -454,7 +454,7 @@ implements java.io.Serializable ...@@ -454,7 +454,7 @@ implements java.io.Serializable
* has not been resolved. * has not been resolved.
* *
* @return the actions for the underlying permission that * @return the actions for the underlying permission that
* has not been resolved, or <code>null</code> * has not been resolved, or {@code null}
* if there are no actions * if there are no actions
* *
* @since 1.5 * @since 1.5
...@@ -503,16 +503,16 @@ implements java.io.Serializable ...@@ -503,16 +503,16 @@ implements java.io.Serializable
/** /**
* Writes this object out to a stream (i.e., serializes it). * Writes this object out to a stream (i.e., serializes it).
* *
* @serialData An initial <code>String</code> denoting the * @serialData An initial {@code String} denoting the
* <code>type</code> is followed by a <code>String</code> denoting the * {@code type} is followed by a {@code String} denoting the
* <code>name</code> is followed by a <code>String</code> denoting the * {@code name} is followed by a {@code String} denoting the
* <code>actions</code> is followed by an <code>int</code> indicating the * {@code actions} is followed by an {@code int} indicating the
* number of certificates to follow * number of certificates to follow
* (a value of "zero" denotes that there are no certificates associated * (a value of "zero" denotes that there are no certificates associated
* with this object). * with this object).
* Each certificate is written out starting with a <code>String</code> * Each certificate is written out starting with a {@code String}
* denoting the certificate type, followed by an * denoting the certificate type, followed by an
* <code>int</code> specifying the length of the certificate encoding, * {@code int} specifying the length of the certificate encoding,
* followed by the certificate encoding itself which is written out as an * followed by the certificate encoding itself which is written out as an
* array of bytes. * array of bytes.
*/ */
......
/* /*
* Copyright (c) 1996, 2004, 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
...@@ -66,19 +66,19 @@ import java.security.Principal; ...@@ -66,19 +66,19 @@ import java.security.Principal;
* *
* </ul> * </ul>
* *
* The <code> java.security.acl </code> package provides the * The {@code java.security.acl } package provides the
* interfaces to the ACL and related data structures (ACL entries, * interfaces to the ACL and related data structures (ACL entries,
* groups, permissions, etc.), and the <code> sun.security.acl </code> * groups, permissions, etc.), and the {@code sun.security.acl }
* classes provide a default implementation of the interfaces. For * classes provide a default implementation of the interfaces. For
* example, <code> java.security.acl.Acl </code> provides the * example, {@code java.security.acl.Acl } provides the
* interface to an ACL and the <code> sun.security.acl.AclImpl </code> * interface to an ACL and the {@code sun.security.acl.AclImpl }
* class provides the default implementation of the interface.<p> * class provides the default implementation of the interface.<p>
* *
* The <code> java.security.acl.Acl </code> interface extends the * The {@code java.security.acl.Acl } interface extends the
* <code> java.security.acl.Owner </code> interface. The Owner * {@code java.security.acl.Owner } interface. The Owner
* interface is used to maintain a list of owners for each ACL. Only * interface is used to maintain a list of owners for each ACL. Only
* owners are allowed to modify an ACL. For example, only an owner can * owners are allowed to modify an ACL. For example, only an owner can
* call the ACL's <code>addEntry</code> method to add a new ACL entry * call the ACL's {@code addEntry} method to add a new ACL entry
* to the ACL. * to the ACL.
* *
* @see java.security.acl.AclEntry * @see java.security.acl.AclEntry
...@@ -217,7 +217,7 @@ public interface Acl extends Owner { ...@@ -217,7 +217,7 @@ public interface Acl extends Owner {
* More specifically, this method checks whether the passed permission * More specifically, this method checks whether the passed permission
* is a member of the allowed permission set of the specified principal. * is a member of the allowed permission set of the specified principal.
* The allowed permission set is determined by the same algorithm as is * The allowed permission set is determined by the same algorithm as is
* used by the <code>getPermissions</code> method. * used by the {@code getPermissions} method.
* *
* @param principal the principal, assumed to be a valid authenticated * @param principal the principal, assumed to be a valid authenticated
* Principal. * Principal.
......
/* /*
* Copyright (c) 1996, 2004, 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
...@@ -84,7 +84,7 @@ public interface AclEntry extends Cloneable { ...@@ -84,7 +84,7 @@ public interface AclEntry extends Cloneable {
* specified in the entry. * specified in the entry.
* *
* Note: ACL entries are by default positive. An entry becomes a * Note: ACL entries are by default positive. An entry becomes a
* negative entry only if this <code>setNegativePermissions</code> * negative entry only if this {@code setNegativePermissions}
* method is called on it. * method is called on it.
*/ */
public void setNegativePermissions(); public void setNegativePermissions();
......
/* /*
* Copyright (c) 1996, 2004, 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
...@@ -35,7 +35,7 @@ import java.security.Principal; ...@@ -35,7 +35,7 @@ import java.security.Principal;
* Note that Group extends Principal. Thus, either a Principal or a Group can * Note that Group extends Principal. Thus, either a Principal or a Group can
* be passed as an argument to methods containing a Principal parameter. For * be passed as an argument to methods containing a Principal parameter. For
* example, you can add either a Principal or a Group to a Group object by * example, you can add either a Principal or a Group to a Group object by
* calling the object's <code>addMember</code> method, passing it the * calling the object's {@code addMember} method, passing it the
* Principal or Group. * Principal or Group.
* *
* @author Satish Dharmaraj * @author Satish Dharmaraj
......
/* /*
* Copyright (c) 1996, 1997, 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
...@@ -30,7 +30,7 @@ import java.security.Principal; ...@@ -30,7 +30,7 @@ import java.security.Principal;
/** /**
* Interface for managing owners of Access Control Lists (ACLs) or ACL * Interface for managing owners of Access Control Lists (ACLs) or ACL
* configurations. (Note that the Acl interface in the * configurations. (Note that the Acl interface in the
* <code> java.security.acl </code> package extends this Owner * {@code java.security.acl} package extends this Owner
* interface.) The initial owner Principal should be specified as an * interface.) The initial owner Principal should be specified as an
* argument to the constructor of the class implementing this interface. * argument to the constructor of the class implementing this interface.
* *
......
/*
* Copyright (c) 1998, 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.
*/
/**
* The classes and interfaces in this package have been
* superseded by classes in the java.security package.
* See that package and, for example, java.security.Permission for details.
*
* @since JDK1.1
*/
package java.security.acl;
<DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!--
Copyright (c) 1998, 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">
The classes and interfaces in this package have been
superseded by classes in the java.security package.
See that package and, for example, java.security.Permission for details.
<!--
<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.1
</body>
</html>
/*
* Copyright (c) 1998, 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.
*/
/**
* Provides classes and interfaces for parsing and managing
* certificates, certificate revocation lists (CRLs), and
* certification paths. It contains support for X.509 v3
* certificates and X.509 v2 CRLs.
*
* <h2>Package Specification</h2>
*
* <ul>
* <li><a href="{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
* <b>Java&trade;
* Cryptography Architecture (JCA) Reference Guide</b></a>
* <li>RFC 5280: Internet X.509 Public Key Infrastructure Certificate and
* Certificate Revocation List (CRL) Profile
* <li>RFC 2560: X.509 Internet Public Key Infrastructure Online Certificate
* Status Protocol - OCSP
* <li><a href="{@docRoot}/../technotes/guides/security/StandardNames.html">
* <b>Java&trade;
* Cryptography Architecture Standard Algorithm Name
* Documentation</b></a></li>
* </ul>
*
* <h2>Related Documentation</h2>
*
* For information about X.509 certificates and CRLs, please see:
* <ul>
* <li><a href="http://www.ietf.org/rfc/rfc5280.txt">
* http://www.ietf.org/rfc/rfc5280.txt</a>
* <li><a href=
* "{@docRoot}/../technotes/guides/security/certpath/CertPathProgGuide.html">
* <b>Java&trade;
* PKI Programmer's Guide</b></a>
* <li><a href="{@docRoot}/../technotes/guides/security/cert3.html">
* <b>X.509 Certificates and Certificate Revocation Lists (CRLs)</b></a>
* </ul>
*
* @since 1.2
*/
package java.security.cert;
<!--
Copyright (c) 1998, 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.
-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<body bgcolor="white">
Provides classes and interfaces for parsing and managing
certificates, certificate revocation lists (CRLs), and
certification paths. It contains support for X.509 v3
certificates and X.509 v2 CRLs.
<h2>Package Specification</h2>
<ul>
<li><a href="{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
<b>Java<FONT SIZE=-2><SUP>TM</SUP></FONT>
Cryptography Architecture (JCA) Reference Guide</b></a>
<li>RFC 5280: Internet X.509 Public Key Infrastructure Certificate and
Certificate Revocation List (CRL) Profile
<li>RFC 2560: X.509 Internet Public Key Infrastructure Online Certificate
Status Protocol - OCSP
<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 information about X.509 certificates and CRLs, please see:
<ul>
<li><a href="http://www.ietf.org/rfc/rfc5280.txt">
http://www.ietf.org/rfc/rfc5280.txt</a>
<li><a href=
"{@docRoot}/../technotes/guides/security/certpath/CertPathProgGuide.html">
<b>Java<FONT SIZE=-2><SUP>TM</SUP></FONT>
PKI Programmer's Guide</a>
<li><a href="{@docRoot}/../technotes/guides/security/cert3.html">
X.509 Certificates and Certificate Revocation Lists (CRLs)</a>
</ul>
@since 1.2
</body>
</html>
/* /*
* Copyright (c) 1997, 2012, 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,8 +30,8 @@ import java.security.*; ...@@ -30,8 +30,8 @@ import java.security.*;
/** /**
* An interface to an object capable of generating DSA key pairs. * An interface to an object capable of generating DSA key pairs.
* *
* <p>The <code>initialize</code> methods may each be called any number * <p>The {@code initialize} methods may each be called any number
* of times. If no <code>initialize</code> method is called on a * of times. If no {@code initialize} method is called on a
* DSAKeyPairGenerator, the default is to generate 1024-bit keys, using * DSAKeyPairGenerator, the default is to generate 1024-bit keys, using
* precomputed p, q and g parameters and an instance of SecureRandom as * precomputed p, q and g parameters and an instance of SecureRandom as
* the random bit source. * the random bit source.
...@@ -42,22 +42,22 @@ import java.security.*; ...@@ -42,22 +42,22 @@ import java.security.*;
* <ol> * <ol>
* *
* <li>Get a key pair generator for the DSA algorithm by calling the * <li>Get a key pair generator for the DSA algorithm by calling the
* KeyPairGenerator <code>getInstance</code> method with "DSA" * KeyPairGenerator {@code getInstance} method with "DSA"
* as its argument.<p> * as its argument.<p>
* *
* <li>Initialize the generator by casting the result to a DSAKeyPairGenerator * <li>Initialize the generator by casting the result to a DSAKeyPairGenerator
* and calling one of the * and calling one of the
* <code>initialize</code> methods from this DSAKeyPairGenerator interface.<p> * {@code initialize} methods from this DSAKeyPairGenerator interface.<p>
* *
* <li>Generate a key pair by calling the <code>generateKeyPair</code> * <li>Generate a key pair by calling the {@code generateKeyPair}
* method from the KeyPairGenerator class. * method from the KeyPairGenerator class.
* *
* </ol> * </ol>
* *
* <p>Note: it is not always necessary to do do algorithm-specific * <p>Note: it is not always necessary to do do algorithm-specific
* initialization for a DSA key pair generator. That is, it is not always * initialization for a DSA key pair generator. That is, it is not always
* necessary to call an <code>initialize</code> method in this interface. * necessary to call an {@code initialize} method in this interface.
* Algorithm-independent initialization using the <code>initialize</code> method * Algorithm-independent initialization using the {@code initialize} method
* in the KeyPairGenerator * in the KeyPairGenerator
* interface is all that is needed when you accept defaults for algorithm-specific * interface is all that is needed when you accept defaults for algorithm-specific
* parameters. * parameters.
...@@ -80,7 +80,7 @@ public interface DSAKeyPairGenerator { ...@@ -80,7 +80,7 @@ public interface DSAKeyPairGenerator {
* @param random the random bit source to use to generate key bits; * @param random the random bit source to use to generate key bits;
* can be null. * can be null.
* *
* @exception InvalidParameterException if the <code>params</code> * @exception InvalidParameterException if the {@code params}
* value is invalid, null, or unsupported. * value is invalid, null, or unsupported.
*/ */
public void initialize(DSAParams params, SecureRandom random) public void initialize(DSAParams params, SecureRandom random)
...@@ -92,7 +92,7 @@ public interface DSAKeyPairGenerator { ...@@ -92,7 +92,7 @@ public interface DSAKeyPairGenerator {
* If a SecureRandom bit source is needed but not supplied, i.e. * If a SecureRandom bit source is needed but not supplied, i.e.
* null, a default SecureRandom instance will be used. * null, a default SecureRandom instance will be used.
* *
* <p>If <code>genParams</code> is true, this method generates new * <p>If {@code genParams} is true, this method generates new
* p, q and g parameters. If it is false, the method uses precomputed * p, q and g parameters. If it is false, the method uses precomputed
* parameters for the modulus length requested. If there are no * parameters for the modulus length requested. If there are no
* precomputed parameters for that modulus length, an exception will be * precomputed parameters for that modulus length, an exception will be
...@@ -108,8 +108,8 @@ public interface DSAKeyPairGenerator { ...@@ -108,8 +108,8 @@ public interface DSAKeyPairGenerator {
* @param genParams whether or not to generate new parameters for * @param genParams whether or not to generate new parameters for
* the modulus length requested. * the modulus length requested.
* *
* @exception InvalidParameterException if <code>modlen</code> is * @exception InvalidParameterException if {@code modlen} is
* invalid, or unsupported, or if <code>genParams</code> is false and there * invalid, or unsupported, or if {@code genParams} is false and there
* are no precomputed parameters for the requested modulus length. * are no precomputed parameters for the requested modulus length.
*/ */
public void initialize(int modlen, boolean genParams, SecureRandom random) public void initialize(int modlen, boolean genParams, SecureRandom random)
......
/* /*
* Copyright (c) 1996, 1998, 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
...@@ -42,23 +42,23 @@ import java.math.BigInteger; ...@@ -42,23 +42,23 @@ import java.math.BigInteger;
public interface DSAParams { public interface DSAParams {
/** /**
* Returns the prime, <code>p</code>. * Returns the prime, {@code p}.
* *
* @return the prime, <code>p</code>. * @return the prime, {@code p}.
*/ */
public BigInteger getP(); public BigInteger getP();
/** /**
* Returns the subprime, <code>q</code>. * Returns the subprime, {@code q}.
* *
* @return the subprime, <code>q</code>. * @return the subprime, {@code q}.
*/ */
public BigInteger getQ(); public BigInteger getQ();
/** /**
* Returns the base, <code>g</code>. * Returns the base, {@code g}.
* *
* @return the base, <code>g</code>. * @return the base, {@code g}.
*/ */
public BigInteger getG(); public BigInteger getG();
} }
/* /*
* Copyright (c) 1997, 1999, 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
...@@ -50,9 +50,9 @@ public interface DSAPrivateKey extends DSAKey, java.security.PrivateKey { ...@@ -50,9 +50,9 @@ public interface DSAPrivateKey extends DSAKey, java.security.PrivateKey {
static final long serialVersionUID = 7776497482533790279L; static final long serialVersionUID = 7776497482533790279L;
/** /**
* Returns the value of the private key, <code>x</code>. * Returns the value of the private key, {@code x}.
* *
* @return the value of the private key, <code>x</code>. * @return the value of the private key, {@code x}.
*/ */
public BigInteger getX(); public BigInteger getX();
} }
/* /*
* Copyright (c) 1996, 1999, 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
...@@ -50,9 +50,9 @@ public interface DSAPublicKey extends DSAKey, java.security.PublicKey { ...@@ -50,9 +50,9 @@ public interface DSAPublicKey extends DSAKey, java.security.PublicKey {
static final long serialVersionUID = 1234526332779022332L; static final long serialVersionUID = 1234526332779022332L;
/** /**
* Returns the value of the public key, <code>y</code>. * Returns the value of the public key, {@code y}.
* *
* @return the value of the public key, <code>y</code>. * @return the value of the public key, {@code y}.
*/ */
public BigInteger getY(); public BigInteger getY();
} }
/*
* Copyright (c) 1998, 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.
*/
/**
* Provides interfaces for generating RSA (Rivest, Shamir and
* Adleman AsymmetricCipher algorithm)
* keys as defined in the RSA Laboratory Technical Note
* PKCS#1, and DSA (Digital Signature
* Algorithm) keys as defined in NIST's FIPS-186.
* <P>
* Note that these interfaces are intended only for key
* implementations whose key material is accessible and
* available. These interfaces are not intended for key
* implementations whose key material resides in
* inaccessible, protected storage (such as in a
* hardware device).
* <P>
* For more developer information on how to use these
* interfaces, including information on how to design
* {@code Key} classes for hardware devices, please refer
* to these cryptographic provider developer guides:
* <ul>
* <li><a href=
* "{@docRoot}/../technotes/guides/security/crypto/HowToImplAProvider.html">
* <b>How to Implement a Provider for the
* Java&trade; Cryptography Architecture
* </b></a></li>
* </ul>
*
* <h2>Package Specification</h2>
*
* <ul>
* <li>PKCS #1: RSA Encryption Standard, Version 1.5, November 1993 </li>
* <li>Federal Information Processing Standards Publication (FIPS PUB) 186:
* Digital Signature Standard (DSS) </li>
* </ul>
*
* <h2>Related Documentation</h2>
*
* For further documentation, please see:
* <ul>
* <li>
* <a href=
* "{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
* <b>Java&trade;
* Cryptography Architecture API Specification and Reference
* </b></a></li>
* </ul>
*
* @since JDK1.1
*/
package java.security.interfaces;
<!--
Copyright (c) 1998, 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.
-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<body bgcolor="white">
Provides interfaces for generating RSA (Rivest, Shamir and
Adleman AsymmetricCipher algorithm)
keys as defined in the RSA Laboratory Technical Note
PKCS#1, and DSA (Digital Signature
Algorithm) keys as defined in NIST's FIPS-186.
<P>
Note that these interfaces are intended only for key
implementations whose key material is accessible and
available. These interfaces are not intended for key
implementations whose key material resides in
inaccessible, protected storage (such as in a
hardware device).
<P>
For more developer information on how to use these
interfaces, including information on how to design
<code>Key</code> classes for hardware devices, please refer
to these cryptographic provider developer guides:
<ul>
<li><a href=
"{@docRoot}/../technotes/guides/security/crypto/HowToImplAProvider.html">
<b>How to Implement a Provider for the
Java<FONT SIZE=-2><SUP>TM</SUP></FONT> Cryptography Architecture
</b></a></li>
</ul>
<h2>Package Specification</h2>
<ul>
<li>PKCS #1: RSA Encryption Standard, Version 1.5, November 1993 </li>
<li>Federal Information Processing Standards Publication (FIPS PUB) 186:
Digital Signature Standard (DSS) </li>
</ul>
<h2>Related Documentation</h2>
For further documentation, please see:
<ul>
<li>
<a href=
"{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
<b>Java<FONT SIZE=-2><SUP>TM</SUP></FONT>
Cryptography Architecture API Specification and Reference
</b></a></li>
</ul>
@since JDK1.1
</body>
</html>
/*
* Copyright (c) 1998, 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.
*/
/**
* Provides the classes and interfaces for the security framework.
* This includes classes that implement an easily configurable,
* fine-grained access control security architecture.
* This package also supports
* the generation and storage of cryptographic public key pairs,
* as well as a number of exportable cryptographic operations
* including those for message digest and signature generation. Finally,
* this package provides classes that support signed/guarded objects
* and secure random number generation.
*
* Many of the classes provided in this package (the cryptographic
* and secure random number generator classes in particular) are
* provider-based. The class itself defines a programming interface
* to which applications may write. The implementations themselves may
* then be written by independent third-party vendors and plugged
* in seamlessly as needed. Therefore application developers may
* take advantage of any number of provider-based implementations
* without having to add or rewrite code.
*
* <h2>Package Specification</h2>
*
* <ul>
* <li><a href="{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
* <b>Java&trade;
* Cryptography Architecture (JCA) Reference Guide</b></a></li>
*
* <li>PKCS #8: Private-Key Information Syntax Standard, Version 1.2,
* November 1993</li>
*
* <li><a href="{@docRoot}/../technotes/guides/security/StandardNames.html">
* <b>Java&trade;
* Cryptography Architecture Standard Algorithm Name
* Documentation</b></a></li>
* </ul>
*
* <h2>Related Documentation</h2>
*
* For further documentation, please see:
* <ul>
* <li><a href=
* "{@docRoot}/../technotes/guides/security/spec/security-spec.doc.html">
* <b>Java&trade;
* SE Platform Security Architecture</b></a></li>
*
* <li><a href=
* "{@docRoot}/../technotes/guides/security/crypto/HowToImplAProvider.html">
* <b>How to Implement a Provider in the
* Java&trade; Cryptography Architecture
* </b></a></li>
*
* <li><a href=
* "{@docRoot}/../technotes/guides/security/PolicyFiles.html"><b>
* Default Policy Implementation and Policy File Syntax
* </b></a></li>
*
* <li><a href=
* "{@docRoot}/../technotes/guides/security/permissions.html"><b>
* Permissions in the
* Java&trade; SE Development Kit (JDK)
* </b></a></li>
*
* <li><a href=
* "{@docRoot}/../technotes/guides/security/SecurityToolsSummary.html"><b>
* Summary of Tools for
* Java&trade; Platform Security
* </b></a></li>
*
* <li><b>keytool</b>
* (<a href="{@docRoot}/../technotes/tools/solaris/keytool.html">
* for Solaris/Linux</a>)
* (<a href="{@docRoot}/../technotes/tools/windows/keytool.html">
* for Windows</a>)
* </li>
*
* <li><b>jarsigner</b>
* (<a href="{@docRoot}/../technotes/tools/solaris/jarsigner.html">
* for Solaris/Linux</a>)
* (<a href="{@docRoot}/../technotes/tools/windows/jarsigner.html">
* for Windows</a>)
* </li>
*
* </ul>
*
* @since 1.1
*/
package java.security;
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!--
Copyright (c) 1998, 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">
Provides the classes and interfaces for the security framework.
This includes classes that implement an easily configurable,
fine-grained access control security architecture.
This package also supports
the generation and storage of cryptographic public key pairs,
as well as a number of exportable cryptographic operations
including those for message digest and signature generation. Finally,
this package provides classes that support signed/guarded objects
and secure random number generation.
Many of the classes provided in this package (the cryptographic
and secure random number generator classes in particular) are
provider-based. The class itself defines a programming interface
to which applications may write. The implementations themselves may
then be written by independent third-party vendors and plugged
in seamlessly as needed. Therefore application developers may
take advantage of any number of provider-based implementations
without having to add or rewrite code.
<h2>Package Specification</h2>
<ul>
<li><a href="{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
<b>Java<FONT SIZE=-2><SUP>TM</SUP></FONT>
Cryptography Architecture (JCA) Reference Guide</b></a></li>
<li>PKCS #8: Private-Key Information Syntax Standard, Version 1.2,
November 1993</li>
<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 further documentation, please see:
<ul>
<li><a href=
"{@docRoot}/../technotes/guides/security/spec/security-spec.doc.html">
<b>Java<FONT SIZE=-2><SUP>TM</SUP></FONT>
SE Platform Security Architecture</b></a></li>
<li><a href=
"{@docRoot}/../technotes/guides/security/crypto/HowToImplAProvider.html">
<b>How to Implement a Provider in the
Java<FONT SIZE=-2><SUP>TM</SUP></FONT> Cryptography Architecture
</b></a></li>
<li><a href=
"{@docRoot}/../technotes/guides/security/PolicyFiles.html"><b>
Default Policy Implementation and Policy File Syntax
</b></a></li>
<li><a href=
"{@docRoot}/../technotes/guides/security/permissions.html"><b>
Permissions in the
Java<FONT SIZE=-2><SUP>TM</SUP></FONT> SE Development Kit (JDK)
</b></a></li>
<li><a href=
"{@docRoot}/../technotes/guides/security/SecurityToolsSummary.html"><b>
Summary of Tools for
Java<FONT SIZE=-2><SUP>TM</SUP></FONT> Platform Security
</b></a></li>
<li><b>keytool</b>
(<a href="{@docRoot}/../technotes/tools/solaris/keytool.html">
for Solaris/Linux</a>)
(<a href="{@docRoot}/../technotes/tools/windows/keytool.html">
for Windows</a>)
</li>
<li><b>jarsigner</b>
(<a href="{@docRoot}/../technotes/tools/solaris/jarsigner.html">
for Solaris/Linux</a>)
(<a href="{@docRoot}/../technotes/tools/windows/jarsigner.html">
for Windows</a>)
</li>
</ul>
@since 1.1
</body>
</html>
/*
* Copyright (c) 1998, 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.
*/
/**
* Provides classes and interfaces for key specifications and algorithm
* parameter specifications.
*
* <p>A key specification is a transparent representation of the key material
* that constitutes a key. A key may be specified in an algorithm-specific
* way, or in an algorithm-independent encoding format (such as ASN.1).
* This package contains key specifications for DSA public and private keys,
* RSA public and private keys, PKCS #8 private keys in DER-encoded format,
* and X.509 public and private keys in DER-encoded format.
*
* <p>An algorithm parameter specification is a transparent representation
* of the sets of parameters used with an algorithm. This package contains
* an algorithm parameter specification for parameters used with the
* DSA algorithm.
*
* <h2>Package Specification</h2>
*
* <ul>
* <li>PKCS #1: RSA Encryption Standard, Version 1.5, November 1993</li>
* <li>PKCS #8: Private-Key Information Syntax Standard,
* Version 1.2, November 1993</li>
* <li>Federal Information Processing Standards Publication (FIPS PUB) 186:
* Digital Signature Standard (DSS)</li>
* </ul>
*
* <h2>Related Documentation</h2>
*
* For documentation that includes information about algorithm parameter
* and key specifications, please see:
* <ul>
* <li>
* <a href=
* "{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
* <b>Java&trade;
* Cryptography Architecture API Specification and Reference
* </b></a></li>
* <li>
* <a href=
* "{@docRoot}/../technotes/guides/security/crypto/HowToImplAProvider.html">
* <b>How to Implement a Provider for the
* Java&trade; Cryptography Architecture
* </b></a></li>
* </ul>
*
* @since 1.2
*/
package java.security.spec;
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!--
Copyright (c) 1998, 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">
Provides classes and interfaces for key specifications and algorithm
parameter specifications.
<p>A key specification is a transparent representation of the key material
that constitutes a key. A key may be specified in an algorithm-specific
way, or in an algorithm-independent encoding format (such as ASN.1).
This package contains key specifications for DSA public and private keys,
RSA public and private keys, PKCS #8 private keys in DER-encoded format,
and X.509 public and private keys in DER-encoded format.
<p>An algorithm parameter specification is a transparent representation
of the sets of parameters used with an algorithm. This package contains
an algorithm parameter specification for parameters used with the
DSA algorithm.
<h2>Package Specification</h2>
<ul>
<li>PKCS #1: RSA Encryption Standard, Version 1.5, November 1993</li>
<li>PKCS #8: Private-Key Information Syntax Standard,
Version 1.2, November 1993</li>
<li>Federal Information Processing Standards Publication (FIPS PUB) 186:
Digital Signature Standard (DSS)</li>
</ul>
<h2>Related Documentation</h2>
For documentation that includes information about algorithm parameter
and key specifications, please see:
<ul>
<li>
<a href=
"{@docRoot}/../technotes/guides/security/crypto/CryptoSpec.html">
<b>Java<FONT SIZE=-2><SUP>TM</SUP></FONT>
Cryptography Architecture API Specification and Reference
</b></a></li>
<li>
<a href=
"{@docRoot}/../technotes/guides/security/crypto/HowToImplAProvider.html">
<b>How to Implement a Provider for the
Java<FONT SIZE=-2><SUP>TM</SUP></FONT> Cryptography Architecture
</b></a></li>
</ul>
@since 1.2
</body>
</html>
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册