1 /** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one or more 4 * contributor license agreements. See the NOTICE file distributed with 5 * this work for additional information regarding copyright ownership. 6 * The ASF licenses this file to You under the Apache License, Version 2.0 7 * (the "License"); you may not use this file except in compliance with 8 * the License. You may obtain a copy of the License at 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, software 13 * distributed under the License is distributed on an "AS IS" BASIS, 14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 * See the License for the specific language governing permissions and 16 * limitations under the License. 17 */ 18 19 package org.apache.geronimo.util.asn1.x509; 20 21 import org.apache.geronimo.util.asn1.DERBitString; 22 23 /** 24 * The ReasonFlags object. 25 * <pre> 26 * ReasonFlags ::= BIT STRING { 27 * unused (0), 28 * keyCompromise (1), 29 * cACompromise (2), 30 * affiliationChanged (3), 31 * superseded (4), 32 * cessationOfOperation (5), 33 * certificateHold (6), 34 * privilegeWithdrawn (7), 35 * aACompromise (8) } 36 * </pre> 37 */ 38 public class ReasonFlags 39 extends DERBitString 40 { 41 /** 42 * @deprecated use lower case version 43 */ 44 public static final int UNUSED = (1 << 7); 45 /** 46 * @deprecated use lower case version 47 */ 48 public static final int KEY_COMPROMISE = (1 << 6); 49 /** 50 * @deprecated use lower case version 51 */ 52 public static final int CA_COMPROMISE = (1 << 5); 53 /** 54 * @deprecated use lower case version 55 */ 56 public static final int AFFILIATION_CHANGED = (1 << 4); 57 /** 58 * @deprecated use lower case version 59 */ 60 public static final int SUPERSEDED = (1 << 3); 61 /** 62 * @deprecated use lower case version 63 */ 64 public static final int CESSATION_OF_OPERATION = (1 << 2); 65 /** 66 * @deprecated use lower case version 67 */ 68 public static final int CERTIFICATE_HOLD = (1 << 1); 69 /** 70 * @deprecated use lower case version 71 */ 72 public static final int PRIVILEGE_WITHDRAWN = (1 << 0); 73 /** 74 * @deprecated use lower case version 75 */ 76 public static final int AA_COMPROMISE = (1 << 15); 77 78 public static final int unused = (1 << 7); 79 public static final int keyCompromise = (1 << 6); 80 public static final int cACompromise = (1 << 5); 81 public static final int affiliationChanged = (1 << 4); 82 public static final int superseded = (1 << 3); 83 public static final int cessationOfOperation = (1 << 2); 84 public static final int certificateHold = (1 << 1); 85 public static final int privilegeWithdrawn = (1 << 0); 86 public static final int aACompromise = (1 << 15); 87 88 /** 89 * @param reasons - the bitwise OR of the Key Reason flags giving the 90 * allowed uses for the key. 91 */ 92 public ReasonFlags( 93 int reasons) 94 { 95 super(getBytes(reasons), getPadBits(reasons)); 96 } 97 98 public ReasonFlags( 99 DERBitString reasons) 100 { 101 super(reasons.getBytes(), reasons.getPadBits()); 102 } 103 }