# ***** BEGIN LICENSE BLOCK ***** # Version: MPL 1.1/GPL 2.0/LGPL 2.1 # # The contents of this file are subject to the Mozilla Public License Version # 1.1 (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # http://www.mozilla.org/MPL/ # # Software distributed under the License is distributed on an "AS IS" basis, # WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License # for the specific language governing rights and limitations under the # License. # # The Original Code is the Netscape security libraries. # # The Initial Developer of the Original Code is # Netscape Communications Corporation. # Portions created by the Initial Developer are Copyright (C) 1994-2009 # the Initial Developer. All Rights Reserved. # # Contributor(s): # # Alternatively, the contents of this file may be used under the terms of # either the GNU General Public License Version 2 or later (the "GPL"), or # the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), # in which case the provisions of the GPL or the LGPL are applicable instead # of those above. If you wish to allow use of your version of this file only # under the terms of either the GPL or the LGPL, and not to allow others to # use your version of this file under the terms of the MPL, indicate your # decision by deleting the provisions above and replace them with the notice # and other provisions required by the GPL or the LGPL. If you do not delete # the provisions above, a recipient may use your version of this file under # the terms of any one of the MPL, the GPL or the LGPL. # # ***** END LICENSE BLOCK ***** # # File syntax: # '#' comments. # If the line starts from '!'('! TEST_N Test Name String'), # then 'Test Name String' will be the name of a test(starting # from second space till the rest of the line). # All uncommented lines are hard codded answers to certutil # extension questions. # Line '= N string1|string2|string3': '=' is a stop sign # of certutil inputs and start of the test. 'N' is the number # of extension that will be tested. 'string1|string2|string3' # are grep patterns for test result verification. '_' in stringN # will be replaced to a space. # ################################################################ ! TEST_1 Certificate Key Usage Extension 0 1 2 3 4 5 6 10 n = 1 Certificate_Key_Usage|Digital_Signature|Non-Repudiation|Key_Encipherment|Data_Encipherment|Key_Agreement|Certificate_Signing|CRL_Signing # ################################################################ ! TEST_2 Certificate Key Usage Extension 0 1 2 3 4 5 6 10 y = 1 Certificate_Key_Usage|Digital_Signature|Critical:_True # ################################################################ ! TEST_3 Certificate Basic Constraints Extension y -1 n = 2 Name:_Certificate_Basic_Constraints|Data:_Is_a_CA_with_no_maximum # ################################################################ ! TEST_4 Certificate Basic Constraints Extension n -1 y = 2 Name:_Certificate_Basic_Constraints|Data:_Is_not_a_CA|Critical:_True # ################################################################ ! TEST_5 Certificate Authority Key Identifier Extension y 12341235123 y = 3 Name:_Certificate_Authority_Key_Identifier|Critical:_True|Key_ID:|12341235123 # ################################################################ ! TEST_6 Certificate Authority Key Identifier Extension y 3 test.com 214123 y = 3 Name:_Certificate_Authority_Key_Identifier|Critical:_True|Issuer:|DNS_name:_"test.com"|Serial_Number:|214123 # ################################################################ ! TEST_7 CRL Distribution Points Extension 1 2 rfc822@name.tld 3 test.com 8 1.2.3.4 9 OID.0.2.213 10 0 10 n n = 4 Name:_CRL_Distribution_Points|rfc822@name.tld # ################################################################# ! TEST_8 CRL Distribution Points Extension 2 SN=asdfsdf 4 3 test.com 10 n n = 4 Name:_CRL_Distribution_Points|asdfsdf|Reasons:|DNS_name:_"test.com" # ################################################################ ! TEST_9 Certificate Type Extension 0 1 2 10 n = 5 Name:_Certificate_Type|Data:_ # ################################################################ ! TEST_10 Extended Key Usage Extension 0 1 2 3 4 5 6 10 y = 6 Name:_Extended_Key_Usage|Critical:_True|TLS_Web_Server_Authentication_Certificate|TLS_Web_Client_Authentication_Certificate|Code_Signing_Certificate|E-Mail_Protection_Certificate|Time_Stamping_Certifcate|OCSP_Responder_Certificate|Strong_Crypto_Export_Approved # ################################################################ ! TEST_11 Certificate Key Usage Extension 1 2 3 4 5 6 10 n = 1 Certificate_Key_Usage|!Digital_Signature|Non-Repudiation|Key_Encipherment|Data_Encipherment|Key_Agreement|Certificate_Signing|CRL_Signing