1 /*
2  * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved.
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * This code is free software; you can redistribute it and/or modify it
6  * under the terms of the GNU General Public License version 2 only, as
7  * published by the Free Software Foundation.  Oracle designates this
8  * particular file as subject to the "Classpath" exception as provided
9  * by Oracle in the LICENSE file that accompanied this code.
10  *
11  * This code is distributed in the hope that it will be useful, but WITHOUT
12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14  * version 2 for more details (a copy is included in the LICENSE file that
15  * accompanied this code).
16  *
17  * You should have received a copy of the GNU General Public License version
18  * 2 along with this work; if not, write to the Free Software Foundation,
19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20  *
21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22  * or visit www.oracle.com if you need additional information or have any
23  * questions.
24  */
25 
26 package java.security.cert;
27 
28 /**
29  * The CRLReason enumeration specifies the reason that a certificate
30  * is revoked, as defined in <a href="http://www.ietf.org/rfc/rfc3280.txt">
31  * RFC 3280: Internet X.509 Public Key Infrastructure Certificate and CRL
32  * Profile</a>.
33  *
34  * @author Sean Mullan
35  * @since 1.7
36  * @see X509CRLEntry#getRevocationReason
37  * @see CertificateRevokedException#getRevocationReason
38  */
39 public enum CRLReason {
40     /**
41      * This reason indicates that it is unspecified as to why the
42      * certificate has been revoked.
43      */
44     UNSPECIFIED,
45 
46     /**
47      * This reason indicates that it is known or suspected that the
48      * certificate subject's private key has been compromised. It applies
49      * to end-entity certificates only.
50      */
51     KEY_COMPROMISE,
52 
53     /**
54      * This reason indicates that it is known or suspected that the
55      * certificate subject's private key has been compromised. It applies
56      * to certificate authority (CA) certificates only.
57      */
58     CA_COMPROMISE,
59 
60     /**
61      * This reason indicates that the subject's name or other information
62      * has changed.
63      */
64     AFFILIATION_CHANGED,
65 
66     /**
67      * This reason indicates that the certificate has been superseded.
68      */
69     SUPERSEDED,
70 
71     /**
72      * This reason indicates that the certificate is no longer needed.
73      */
74     CESSATION_OF_OPERATION,
75 
76     /**
77      * This reason indicates that the certificate has been put on hold.
78      */
79     CERTIFICATE_HOLD,
80 
81     /**
82      * Unused reason.
83      */
84     UNUSED,
85 
86     /**
87      * This reason indicates that the certificate was previously on hold
88      * and should be removed from the CRL. It is for use with delta CRLs.
89      */
90     REMOVE_FROM_CRL,
91 
92     /**
93      * This reason indicates that the privileges granted to the subject of
94      * the certificate have been withdrawn.
95      */
96     PRIVILEGE_WITHDRAWN,
97 
98     /**
99      * This reason indicates that it is known or suspected that the
100      * certificate subject's private key has been compromised. It applies
101      * to authority attribute (AA) certificates only.
102      */
103     AA_COMPROMISE
104 }
105