# ***** 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:_<SSL_Client,SSL_Server,S/MIME>
# ################################################################
! 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
