Check in PKCS #11 test suite.

This commit is contained in:
relyea%netscape.com 2000-11-21 23:56:51 +00:00
parent 1849aa8f24
commit 3cb959d7b5
31 changed files with 55382 additions and 0 deletions

View File

@ -0,0 +1,76 @@
#! gmake
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
#######################################################################
# (1) Include initial platform-independent assignments (MANDATORY). #
#######################################################################
include manifest.mn
#######################################################################
# (2) Include "global" configuration information. (OPTIONAL) #
#######################################################################
include $(CORE_DEPTH)/coreconf/config.mk
#######################################################################
# (3) Include "component" configuration information. (OPTIONAL) #
#######################################################################
#######################################################################
# (4) Include "local" platform-dependent assignments (OPTIONAL). #
#######################################################################
include config.mk
#######################################################################
# (5) Execute "global" rules. (OPTIONAL) #
#######################################################################
include $(CORE_DEPTH)/coreconf/rules.mk
#######################################################################
# (6) Execute "component" rules. (OPTIONAL) #
#######################################################################
# include $(CORE_DEPTH)/$(MODULE)/config/rules.mk
#######################################################################
# (7) Execute "local" rules. (OPTIONAL). #
#######################################################################

View File

@ -0,0 +1,42 @@
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
all::
release:: release_security abort_rule
release_security:
@echo "cd security; $(MAKE) release"
$(MAKE) -C security release
abort_rule:
@"Security Complete. (Don't worry about this, it really should abort here!)"

View File

@ -0,0 +1,46 @@
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
CORE_DEPTH = ../../../../..
# MODULE = sectools
# IMPORTS = nspr20/19971209C \
# dbm/DBM_1_5 \
# security/HCL_1_5 \
# sectools/bin/19971218 \
# sectools/lib/19971218 \
# $(NULL)
DIRS = security \
$(NULL)

View File

@ -0,0 +1,75 @@
#! gmake
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
#######################################################################
# (1) Include initial platform-independent assignments (MANDATORY). #
#######################################################################
include manifest.mn
#######################################################################
# (2) Include "global" configuration information. (OPTIONAL) #
#######################################################################
include $(CORE_DEPTH)/coreconf/config.mk
#######################################################################
# (3) Include "component" configuration information. (OPTIONAL) #
#######################################################################
#######################################################################
# (4) Include "local" platform-dependent assignments (OPTIONAL). #
#######################################################################
include config.mk
#######################################################################
# (5) Execute "global" rules. (OPTIONAL) #
#######################################################################
include $(CORE_DEPTH)/coreconf/rules.mk
#######################################################################
# (6) Execute "component" rules. (OPTIONAL) #
#######################################################################
#include $(CORE_DEPTH)/$(MODULE)/config/rules.mk
#######################################################################
# (7) Execute "local" rules. (OPTIONAL). #
#######################################################################

View File

@ -0,0 +1,54 @@
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
all::
release:: release_des release_des3 release_sha1 release_dsa abort_rule
release_des:
@echo "cd des; $(MAKE) release"
$(MAKE) -C des release
release_des3:
@echo "cd des3; $(MAKE) release"
$(MAKE) -C des3 release
release_sha1:
@echo "cd sha1; $(MAKE) release"
$(MAKE) -C sha1 release
release_dsa:
@echo "cd dsa; $(MAKE) release"
$(MAKE) -C dsa release
abort_rule:
@"Security Suites Complete. (Don't worry about this, it really should abort here!)"

View File

@ -0,0 +1,40 @@
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
CORE_DEPTH = ../../../../../..
#MODULE = sectools
DIRS = pkcs11 \
ssl \
$(NULL)

View File

@ -0,0 +1,76 @@
#! gmake
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
#######################################################################
# (1) Include initial platform-independent assignments (MANDATORY). #
#######################################################################
include manifest.mn
#######################################################################
# (2) Include "global" configuration information. (OPTIONAL) #
#######################################################################
include $(CORE_DEPTH)/coreconf/config.mk
#######################################################################
# (3) Include "component" configuration information. (OPTIONAL) #
#######################################################################
#include $(CORE_DEPTH)/$(MODULE)/config/config.mk
#######################################################################
# (4) Include "local" platform-dependent assignments (OPTIONAL). #
#######################################################################
include config.mk
#######################################################################
# (5) Execute "global" rules. (OPTIONAL) #
#######################################################################
include $(CORE_DEPTH)/coreconf/rules.mk
#######################################################################
# (6) Execute "component" rules. (OPTIONAL) #
#######################################################################
#include $(CORE_DEPTH)/$(MODULE)/config/rules.mk
include $(CORE_DEPTH)/nss/cmd/platlibs.mk
include $(CORE_DEPTH)/nss/cmd/platrules.mk
#######################################################################
# (7) Execute "local" rules. (OPTIONAL). #
#######################################################################
include rules.mk

View File

@ -0,0 +1,57 @@
#
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
#######################################################################
# Adjust specific variables for all platforms #
#######################################################################
OS_CFLAGS += -DNSPR20=1
#######################################################################
# Set the LDFLAGS value to encompass all normal link options, all #
# library names, and all special system linking options #
#######################################################################
LDFLAGS = $(LDOPTS) $(LIBSECMOD) $(LIBHASH) $(LIBCERT) $(LIBKEY) \
$(LIBCRYPTO) $(LIBSECUTIL) $(LIBDBM) $(LIBPLC) $(LIBPLDS) $(LIBPR) \
$(LIBSECTOOLS) $(DLLSYSTEM)
# These are the libraries from the PKCS #5 suite:
#LDFLAGS = $(LDOPTS) $(LIBSECTOOLS) $(LIBSSL) $(LIBPKCS7) $(LIBCERT) $(LIBKEY) $(LIBSECMOD) $(LIBCRYPTO) $(LIBSECUTIL) $(LIBSECMOD) $(LIBSSL) $(LIBPKCS7) $(LIBCERT) $(LIBKEY) $(LIBCRYPTO) $(LIBSECUTIL) $(LIBHASH) $(LIBDBM) $(LIBPLDS) $(LIBPLC) $(LIBPR) $(DLLSYSTEM)
#######################################################################
# Set the TARGETS value to build one executable from each object file #
#######################################################################
# TARGETS = $(OBJS:$(OBJ_SUFFIX)=$(PROG_SUFFIX))

View File

@ -0,0 +1,46 @@
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
CORE_DEPTH=../../../../../../..
#MODULE = sectools
CSRCS = pk11test.c
PROGRAM = pk11test
REQUIRES = seccmd dbm security
REGRESSION_SPEC = pkcs11.reg
RESULTS_SUBDIR = security/pkcs11

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,111 @@
/*
* 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 Netscape are
* Copyright (C) 1994-2000 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License Version 2 or later (the
* "GPL"), in which case the provisions of the GPL are applicable
* instead of those above. If you wish to allow use of your
* version of this file only under the terms of the GPL and not to
* allow others to use your version of this file under the MPL,
* indicate your decision by deleting the provisions above and
* replace them with the notice and other provisions required by
* the GPL. If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
#ifndef PK11TEST_H
#define PK11TEST_H
#define REP_SYMKEY_MECHANISM CKM_DES_KEY_GEN
/* symmetric key size in bytes */
#define REP_SYMKEY_SIZE 8
#define REP_PK_KEY_SIZE 1024
#define REP_PLAINTEXT_LEN 8
#define REP_MECHANISM mechanism[testId/2/2%46]
#define REP_USE_CORRECT_PIN UseCorrectPin[testId%2]
#define REP_KEYGEN_ON_TARGET KeyGenOnTarget[testId/2%2]
#define CKM_NO_OP 0x80001111
int testId = 0;
PRBool UseCorrectPin[] = {
PR_TRUE,
PR_FALSE
};
PRBool KeyGenOnTarget[] = {
PR_TRUE,
PR_FALSE
};
CK_MECHANISM_TYPE mechanism[] = {
CKM_NO_OP,
CKM_RSA_PKCS,
CKM_RSA_9796,
CKM_RSA_X_509,
CKM_MD2_RSA_PKCS,
CKM_MD5_RSA_PKCS,
CKM_SHA1_RSA_PKCS,
CKM_DSA,
CKM_DSA_SHA1,
CKM_ECDSA,
CKM_ECDSA_SHA1,
CKM_RC2_ECB,
CKM_RC2_CBC,
CKM_RC4,
CKM_RC5_ECB,
CKM_RC5_CBC,
CKM_DES_ECB,
CKM_DES_CBC,
CKM_DES3_ECB,
CKM_DES3_CBC,
CKM_CAST_ECB,
CKM_CAST_CBC,
CKM_CAST3_ECB,
CKM_CAST3_CBC,
CKM_CAST5_ECB,
CKM_CAST5_CBC,
CKM_IDEA_ECB,
CKM_IDEA_CBC,
CKM_CDMF_ECB,
CKM_CDMF_CBC,
CKM_SKIPJACK_ECB64,
CKM_SKIPJACK_CBC64,
CKM_SKIPJACK_OFB64,
CKM_SKIPJACK_CFB64,
CKM_SKIPJACK_CFB32,
CKM_SKIPJACK_CFB16,
CKM_SKIPJACK_CFB8,
CKM_BATON_ECB128,
CKM_BATON_ECB96,
CKM_BATON_CBC128,
CKM_BATON_COUNTER,
CKM_BATON_SHUFFLE,
CKM_JUNIPER_ECB128,
CKM_JUNIPER_CBC128,
CKM_JUNIPER_COUNTER,
CKM_JUNIPER_SHUFFLE
};
#endif

View File

@ -0,0 +1,50 @@
/*
* 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 Netscape are
* Copyright (C) 1994-2000 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License Version 2 or later (the
* "GPL"), in which case the provisions of the GPL are applicable
* instead of those above. If you wish to allow use of your
* version of this file only under the terms of the GPL and not to
* allow others to use your version of this file under the MPL,
* indicate your decision by deleting the provisions above and
* replace them with the notice and other provisions required by
* the GPL. If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
#ifndef PK11TEST_H
#define PK11TEST_H
#define REP_SYMKEY_MECHANISM CKM_DES_KEY_GEN
/* symmetric key size in bytes */
#define REP_SYMKEY_SIZE 8
#define REP_PK_KEY_SIZE 1024
#define REP_PLAINTEXT_LEN 8
#define REP_MECHANISM $[mechanism]
#define REP_USE_CORRECT_PIN $[UseCorrectPin]
#define REP_KEYGEN_ON_TARGET $[KeyGenOnTarget]
#define CKM_NO_OP 0x80001111
$[DATA-TO-TEST]
#endif

View File

@ -0,0 +1,190 @@
/*
* 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 Netscape are
* Copyright (C) 1994-2000 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License Version 2 or later (the
* "GPL"), in which case the provisions of the GPL are applicable
* instead of those above. If you wish to allow use of your
* version of this file only under the terms of the GPL and not to
* allow others to use your version of this file under the MPL,
* indicate your decision by deleting the provisions above and
* replace them with the notice and other provisions required by
* the GPL. If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
#ifndef PKCS11_H
#define PKCS11_H
#define NULL_OP 0x00
#define ENCRYPT_OP 0x01
#define SIGN_OP 0x02
#define KEYGEN_OP 0x04
#define DIGEST_OP 0x08
#define HMAC_OP 0x10
typedef struct {
CK_MECHANISM_TYPE type;
int op;
CK_MECHANISM_TYPE keygenMech;
} MechInfo;
static int numMechs=118;
static MechInfo mechInfo[] = {
{CKM_RSA_PKCS_KEY_PAIR_GEN,
KEYGEN_OP, CKM_RSA_PKCS_KEY_PAIR_GEN},
{CKM_RSA_PKCS, ENCRYPT_OP | SIGN_OP,
CKM_RSA_PKCS_KEY_PAIR_GEN},
{CKM_RSA_9796, SIGN_OP, CKM_RSA_PKCS_KEY_PAIR_GEN},
{CKM_RSA_X_509, ENCRYPT_OP | SIGN_OP,
CKM_RSA_PKCS_KEY_PAIR_GEN},
{CKM_MD2_RSA_PKCS, SIGN_OP, CKM_RSA_PKCS_KEY_PAIR_GEN},
{CKM_MD5_RSA_PKCS, SIGN_OP, CKM_RSA_PKCS_KEY_PAIR_GEN},
{CKM_SHA1_RSA_PKCS, SIGN_OP, CKM_RSA_PKCS_KEY_PAIR_GEN},
{CKM_DSA_KEY_PAIR_GEN, KEYGEN_OP, CKM_DSA_KEY_PAIR_GEN},
{CKM_DSA, SIGN_OP, CKM_DSA_KEY_PAIR_GEN},
{CKM_DSA_SHA1, SIGN_OP, CKM_DSA_KEY_PAIR_GEN},
{CKM_DH_PKCS_KEY_PAIR_GEN,
KEYGEN_OP, CKM_DH_PKCS_KEY_PAIR_GEN},
{CKM_DH_PKCS_DERIVE, NULL_OP, 0},
{CKM_RC2_KEY_GEN, KEYGEN_OP, CKM_RC2_KEY_GEN},
{CKM_RC2_ECB, ENCRYPT_OP, CKM_RC2_KEY_GEN},
{CKM_RC2_CBC, ENCRYPT_OP, CKM_RC2_KEY_GEN},
{CKM_RC2_MAC, NULL_OP, CKM_RC2_KEY_GEN},
{CKM_RC2_MAC_GENERAL, NULL_OP, CKM_RC2_KEY_GEN},
{CKM_RC2_CBC_PAD, NULL_OP, CKM_RC2_KEY_GEN},
{CKM_RC4_KEY_GEN, KEYGEN_OP, CKM_RC4_KEY_GEN},
{CKM_RC4, ENCRYPT_OP, CKM_RC4_KEY_GEN},
{CKM_DES_KEY_GEN, KEYGEN_OP, CKM_DES_KEY_GEN},
{CKM_DES_ECB, ENCRYPT_OP, CKM_DES_KEY_GEN},
{CKM_DES_CBC, ENCRYPT_OP, CKM_DES_KEY_GEN},
{CKM_DES_MAC, NULL_OP, CKM_DES_KEY_GEN},
{CKM_DES_MAC_GENERAL, NULL_OP, CKM_DES_KEY_GEN},
{CKM_DES_CBC_PAD, NULL_OP, CKM_DES_KEY_GEN},
{CKM_DES2_KEY_GEN, KEYGEN_OP, CKM_DES2_KEY_GEN},
{CKM_DES3_KEY_GEN, KEYGEN_OP, CKM_DES3_KEY_GEN},
{CKM_DES3_ECB, ENCRYPT_OP, CKM_DES3_KEY_GEN},
{CKM_DES3_CBC, ENCRYPT_OP, CKM_DES3_KEY_GEN},
{CKM_DES3_MAC, NULL_OP, CKM_DES3_KEY_GEN},
{CKM_DES3_MAC_GENERAL, NULL_OP, CKM_DES3_KEY_GEN},
{CKM_DES3_CBC_PAD, NULL_OP, CKM_DES3_KEY_GEN},
{CKM_CDMF_KEY_GEN, KEYGEN_OP, CKM_CDMF_KEY_GEN},
{CKM_CDMF_ECB, ENCRYPT_OP, CKM_CDMF_KEY_GEN},
{CKM_CDMF_CBC, ENCRYPT_OP, CKM_CDMF_KEY_GEN},
{CKM_CDMF_MAC, NULL_OP, CKM_CDMF_KEY_GEN},
{CKM_CDMF_MAC_GENERAL, NULL_OP, CKM_CDMF_KEY_GEN},
{CKM_CDMF_CBC_PAD, NULL_OP, CKM_CDMF_KEY_GEN},
{CKM_MD2, DIGEST_OP, 0},
{CKM_MD2_HMAC, HMAC_OP, 0},
{CKM_MD2_HMAC_GENERAL, HMAC_OP, 0},
{CKM_MD5, DIGEST_OP, 0},
{CKM_MD5_HMAC, HMAC_OP, 0},
{CKM_MD5_HMAC_GENERAL, HMAC_OP, 0},
{CKM_SHA_1, DIGEST_OP, 0},
{CKM_SHA_1_HMAC, HMAC_OP, 0},
{CKM_SHA_1_HMAC_GENERAL,HMAC_OP, 0},
{CKM_CAST_KEY_GEN, KEYGEN_OP, CKM_CAST_KEY_GEN},
{CKM_CAST_ECB, ENCRYPT_OP, CKM_CAST_KEY_GEN},
{CKM_CAST_CBC, ENCRYPT_OP, CKM_CAST_KEY_GEN},
{CKM_CAST_MAC, NULL_OP, CKM_CAST_KEY_GEN},
{CKM_CAST_MAC_GENERAL, NULL_OP, CKM_CAST_KEY_GEN},
{CKM_CAST_CBC_PAD, NULL_OP, CKM_CAST_KEY_GEN},
{CKM_CAST3_KEY_GEN, KEYGEN_OP, CKM_CAST3_KEY_GEN},
{CKM_CAST3_ECB, ENCRYPT_OP, CKM_CAST3_KEY_GEN},
{CKM_CAST3_CBC, ENCRYPT_OP, CKM_CAST3_KEY_GEN},
{CKM_CAST3_MAC, NULL_OP, CKM_CAST3_KEY_GEN},
{CKM_CAST3_MAC_GENERAL, NULL_OP, CKM_CAST3_KEY_GEN},
{CKM_CAST3_CBC_PAD, NULL_OP, CKM_CAST3_KEY_GEN},
{CKM_CAST5_KEY_GEN, KEYGEN_OP, CKM_CAST5_KEY_GEN},
{CKM_CAST5_ECB, ENCRYPT_OP, CKM_CAST5_KEY_GEN},
{CKM_CAST5_CBC, ENCRYPT_OP, CKM_CAST5_KEY_GEN},
{CKM_CAST5_MAC, NULL_OP, CKM_CAST5_KEY_GEN},
{CKM_CAST5_MAC_GENERAL, NULL_OP, CKM_CAST5_KEY_GEN},
{CKM_CAST5_CBC_PAD, NULL_OP, CKM_CAST5_KEY_GEN},
{CKM_RC5_KEY_GEN, KEYGEN_OP, CKM_RC5_KEY_GEN},
{CKM_RC5_ECB, ENCRYPT_OP, CKM_RC5_KEY_GEN},
{CKM_RC5_CBC, ENCRYPT_OP, CKM_RC5_KEY_GEN},
{CKM_RC5_MAC, NULL_OP, CKM_RC5_KEY_GEN},
{CKM_RC5_MAC_GENERAL, NULL_OP, CKM_RC5_KEY_GEN},
{CKM_RC5_CBC_PAD, NULL_OP, CKM_RC5_KEY_GEN},
{CKM_IDEA_KEY_GEN, KEYGEN_OP, CKM_IDEA_KEY_GEN},
{CKM_IDEA_ECB, ENCRYPT_OP, CKM_IDEA_KEY_GEN},
{CKM_IDEA_CBC, ENCRYPT_OP, CKM_IDEA_KEY_GEN},
{CKM_IDEA_MAC, NULL_OP, CKM_IDEA_KEY_GEN},
{CKM_IDEA_MAC_GENERAL, NULL_OP, CKM_IDEA_KEY_GEN},
{CKM_IDEA_CBC_PAD, NULL_OP, CKM_IDEA_KEY_GEN},
{CKM_GENERIC_SECRET_KEY_GEN,
KEYGEN_OP, CKM_GENERIC_SECRET_KEY_GEN},
/* SSL mechanisms?
{CKM_SSL3_PRE_MASTER_KEY_GEN},
{CKM_SSL3_MASTER_KEY_DERIVE},
{CKM_SSL3_KEY_AND_MAC_DERIVE},
{CKM_SSL3_MD5_MAC},
{CKM_SSL3_SHA1_MAC},
*/
{CKM_PBE_MD2_DES_CBC, KEYGEN_OP, 0},
{CKM_PBE_MD5_DES_CBC, KEYGEN_OP, 0},
{CKM_PBE_MD5_CAST_CBC, KEYGEN_OP, 0},
{CKM_PBE_MD5_CAST3_CBC, KEYGEN_OP, 0},
{CKM_PBE_MD5_CAST5_CBC, KEYGEN_OP, 0},
{CKM_PBE_MD5_CAST128_CBC,
KEYGEN_OP, 0},
{CKM_PBE_SHA1_CAST5_CBC,KEYGEN_OP, 0},
{CKM_PBE_SHA1_CAST128_CBC,
KEYGEN_OP, 0},
{CKM_PBE_SHA1_RC4_128, KEYGEN_OP, 0},
{CKM_PBE_SHA1_RC4_40, KEYGEN_OP, 0},
{CKM_PBE_SHA1_DES3_EDE_CBC,
KEYGEN_OP, 0},
{CKM_PBE_SHA1_DES2_EDE_CBC,
KEYGEN_OP, 0},
{CKM_PBE_SHA1_RC2_128_CBC,
KEYGEN_OP, 0},
{CKM_PBE_SHA1_RC2_40_CBC,
KEYGEN_OP, 0},
{CKM_PBA_SHA1_WITH_SHA1_HMAC,
KEYGEN_OP, 0},
{CKM_SKIPJACK_KEY_GEN, KEYGEN_OP, CKM_SKIPJACK_KEY_GEN},
{CKM_SKIPJACK_ECB64, ENCRYPT_OP, CKM_SKIPJACK_KEY_GEN},
{CKM_SKIPJACK_CBC64, ENCRYPT_OP, CKM_SKIPJACK_KEY_GEN},
{CKM_SKIPJACK_OFB64, ENCRYPT_OP, CKM_SKIPJACK_KEY_GEN},
{CKM_SKIPJACK_CFB64, ENCRYPT_OP, CKM_SKIPJACK_KEY_GEN},
{CKM_SKIPJACK_CFB32, ENCRYPT_OP, CKM_SKIPJACK_KEY_GEN},
{CKM_SKIPJACK_CFB16, ENCRYPT_OP, CKM_SKIPJACK_KEY_GEN},
{CKM_SKIPJACK_CFB8, ENCRYPT_OP, CKM_SKIPJACK_KEY_GEN},
{CKM_KEA_KEY_PAIR_GEN, KEYGEN_OP, 0},
{CKM_BATON_KEY_GEN, KEYGEN_OP, CKM_BATON_KEY_GEN},
{CKM_BATON_ECB128, ENCRYPT_OP, CKM_BATON_KEY_GEN},
{CKM_BATON_ECB96, ENCRYPT_OP, CKM_BATON_KEY_GEN},
{CKM_BATON_CBC128, ENCRYPT_OP, CKM_BATON_KEY_GEN},
{CKM_BATON_COUNTER, ENCRYPT_OP, CKM_BATON_KEY_GEN},
{CKM_BATON_SHUFFLE, ENCRYPT_OP, CKM_BATON_KEY_GEN},
{CKM_ECDSA_KEY_PAIR_GEN,KEYGEN_OP, CKM_ECDSA_KEY_PAIR_GEN},
{CKM_ECDSA, SIGN_OP, CKM_ECDSA_KEY_PAIR_GEN},
{CKM_ECDSA_SHA1, SIGN_OP, CKM_ECDSA_KEY_PAIR_GEN},
{CKM_JUNIPER_KEY_GEN, KEYGEN_OP, CKM_JUNIPER_KEY_GEN},
{CKM_JUNIPER_ECB128, ENCRYPT_OP, CKM_JUNIPER_KEY_GEN},
{CKM_JUNIPER_CBC128, ENCRYPT_OP, CKM_JUNIPER_KEY_GEN},
{CKM_JUNIPER_COUNTER, ENCRYPT_OP, CKM_JUNIPER_KEY_GEN},
{CKM_JUNIPER_SHUFFLE, ENCRYPT_OP, CKM_JUNIPER_KEY_GEN},
{CKM_FASTHASH, DIGEST_OP, 0}
};
#endif

View File

@ -0,0 +1,960 @@
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
[General]
mut=PKCS11
mutversion=1.0
htmlout=NOW
reporterSpec=NOW
program=pk11test
globalArgs=internal
[Test-1]
testId=0
testname=Use supplied pin, Generate keys on target token, NO OP,
[Test-2]
testId=4
testname=Use supplied pin, Generate keys on target token, RSA PKCS,
[Test-3]
testId=8
testname=Use supplied pin, Generate keys on target token, RSA 9796,
[Test-4]
testId=12
testname=Use supplied pin, Generate keys on target token, RSA X.509,
[Test-5]
testId=16
testname=Use supplied pin, Generate keys on target token, MD2 RSA PKCS,
[Test-6]
testId=20
testname=Use supplied pin, Generate keys on target token, MD5 RSA PKCS,
[Test-7]
testId=24
testname=Use supplied pin, Generate keys on target token, SHA1 RSA PKCS,
[Test-8]
testId=28
testname=Use supplied pin, Generate keys on target token, DSA,
[Test-9]
testId=32
testname=Use supplied pin, Generate keys on target token, DSA SHA1,
[Test-10]
testId=36
testname=Use supplied pin, Generate keys on target token, ECDSA,
[Test-11]
testId=40
testname=Use supplied pin, Generate keys on target token, ECDSA SHA1,
[Test-12]
testId=44
testname=Use supplied pin, Generate keys on target token, RC2 ECB,
[Test-13]
testId=48
testname=Use supplied pin, Generate keys on target token, RC2 CBC,
[Test-14]
testId=52
testname=Use supplied pin, Generate keys on target token, RC4,
[Test-15]
testId=56
testname=Use supplied pin, Generate keys on target token, RC5 ECB,
[Test-16]
testId=60
testname=Use supplied pin, Generate keys on target token, RC5 CBC,
[Test-17]
testId=64
testname=Use supplied pin, Generate keys on target token, DES ECB,
[Test-18]
testId=68
testname=Use supplied pin, Generate keys on target token, DES CBC,
[Test-19]
testId=72
testname=Use supplied pin, Generate keys on target token, DES3 ECB,
[Test-20]
testId=76
testname=Use supplied pin, Generate keys on target token, DES3 CBC,
[Test-21]
testId=80
testname=Use supplied pin, Generate keys on target token, CAST ECB,
[Test-22]
testId=84
testname=Use supplied pin, Generate keys on target token, CAST CBC,
[Test-23]
testId=88
testname=Use supplied pin, Generate keys on target token, CAST3 ECB,
[Test-24]
testId=92
testname=Use supplied pin, Generate keys on target token, CAST3 CBC,
[Test-25]
testId=96
testname=Use supplied pin, Generate keys on target token, CAST5 ECB,
[Test-26]
testId=100
testname=Use supplied pin, Generate keys on target token, CAST5 CBC,
[Test-27]
testId=104
testname=Use supplied pin, Generate keys on target token, IDEA ECB,
[Test-28]
testId=108
testname=Use supplied pin, Generate keys on target token, IDEA CBC,
[Test-29]
testId=112
testname=Use supplied pin, Generate keys on target token, CDMF ECB,
[Test-30]
testId=116
testname=Use supplied pin, Generate keys on target token, CDMF CBC,
[Test-31]
testId=120
testname=Use supplied pin, Generate keys on target token, SKIPJACK ECB64,
[Test-32]
testId=124
testname=Use supplied pin, Generate keys on target token, SKIPJACK CBC64,
[Test-33]
testId=128
testname=Use supplied pin, Generate keys on target token, SKIPJACK OFB64,
[Test-34]
testId=132
testname=Use supplied pin, Generate keys on target token, SKIPJACK CFB64,
[Test-35]
testId=136
testname=Use supplied pin, Generate keys on target token, SKIPJACK CFB32,
[Test-36]
testId=140
testname=Use supplied pin, Generate keys on target token, SKIPJACK CFB16,
[Test-37]
testId=144
testname=Use supplied pin, Generate keys on target token, SKIPJACK CFB8,
[Test-38]
testId=148
testname=Use supplied pin, Generate keys on target token, BATON ECB128,
[Test-39]
testId=152
testname=Use supplied pin, Generate keys on target token, BATON ECB96,
[Test-40]
testId=156
testname=Use supplied pin, Generate keys on target token, BATON CBC128,
[Test-41]
testId=160
testname=Use supplied pin, Generate keys on target token, BATON counter,
[Test-42]
testId=164
testname=Use supplied pin, Generate keys on target token, BATON shuffle,
[Test-43]
testId=168
testname=Use supplied pin, Generate keys on target token, JUNIPER ECB128,
[Test-44]
testId=172
testname=Use supplied pin, Generate keys on target token, JUNIPER CBC128,
[Test-45]
testId=176
testname=Use supplied pin, Generate keys on target token, JUNIPER counter,
[Test-46]
testId=180
testname=Use supplied pin, Generate keys on target token, JUNIPER shuffle,
[Test-47]
testId=2
testname=Use supplied pin, Generate keys on internal module, NO OP,
[Test-48]
testId=6
testname=Use supplied pin, Generate keys on internal module, RSA PKCS,
[Test-49]
testId=10
testname=Use supplied pin, Generate keys on internal module, RSA 9796,
[Test-50]
testId=14
testname=Use supplied pin, Generate keys on internal module, RSA X.509,
[Test-51]
testId=18
testname=Use supplied pin, Generate keys on internal module, MD2 RSA PKCS,
[Test-52]
testId=22
testname=Use supplied pin, Generate keys on internal module, MD5 RSA PKCS,
[Test-53]
testId=26
testname=Use supplied pin, Generate keys on internal module, SHA1 RSA PKCS,
[Test-54]
testId=30
testname=Use supplied pin, Generate keys on internal module, DSA,
[Test-55]
testId=34
testname=Use supplied pin, Generate keys on internal module, DSA SHA1,
[Test-56]
testId=38
testname=Use supplied pin, Generate keys on internal module, ECDSA,
[Test-57]
testId=42
testname=Use supplied pin, Generate keys on internal module, ECDSA SHA1,
[Test-58]
testId=46
testname=Use supplied pin, Generate keys on internal module, RC2 ECB,
[Test-59]
testId=50
testname=Use supplied pin, Generate keys on internal module, RC2 CBC,
[Test-60]
testId=54
testname=Use supplied pin, Generate keys on internal module, RC4,
[Test-61]
testId=58
testname=Use supplied pin, Generate keys on internal module, RC5 ECB,
[Test-62]
testId=62
testname=Use supplied pin, Generate keys on internal module, RC5 CBC,
[Test-63]
testId=66
testname=Use supplied pin, Generate keys on internal module, DES ECB,
[Test-64]
testId=70
testname=Use supplied pin, Generate keys on internal module, DES CBC,
[Test-65]
testId=74
testname=Use supplied pin, Generate keys on internal module, DES3 ECB,
[Test-66]
testId=78
testname=Use supplied pin, Generate keys on internal module, DES3 CBC,
[Test-67]
testId=82
testname=Use supplied pin, Generate keys on internal module, CAST ECB,
[Test-68]
testId=86
testname=Use supplied pin, Generate keys on internal module, CAST CBC,
[Test-69]
testId=90
testname=Use supplied pin, Generate keys on internal module, CAST3 ECB,
[Test-70]
testId=94
testname=Use supplied pin, Generate keys on internal module, CAST3 CBC,
[Test-71]
testId=98
testname=Use supplied pin, Generate keys on internal module, CAST5 ECB,
[Test-72]
testId=102
testname=Use supplied pin, Generate keys on internal module, CAST5 CBC,
[Test-73]
testId=106
testname=Use supplied pin, Generate keys on internal module, IDEA ECB,
[Test-74]
testId=110
testname=Use supplied pin, Generate keys on internal module, IDEA CBC,
[Test-75]
testId=114
testname=Use supplied pin, Generate keys on internal module, CDMF ECB,
[Test-76]
testId=118
testname=Use supplied pin, Generate keys on internal module, CDMF CBC,
[Test-77]
testId=122
testname=Use supplied pin, Generate keys on internal module, SKIPJACK ECB64,
[Test-78]
testId=126
testname=Use supplied pin, Generate keys on internal module, SKIPJACK CBC64,
[Test-79]
testId=130
testname=Use supplied pin, Generate keys on internal module, SKIPJACK OFB64,
[Test-80]
testId=134
testname=Use supplied pin, Generate keys on internal module, SKIPJACK CFB64,
[Test-81]
testId=138
testname=Use supplied pin, Generate keys on internal module, SKIPJACK CFB32,
[Test-82]
testId=142
testname=Use supplied pin, Generate keys on internal module, SKIPJACK CFB16,
[Test-83]
testId=146
testname=Use supplied pin, Generate keys on internal module, SKIPJACK CFB8,
[Test-84]
testId=150
testname=Use supplied pin, Generate keys on internal module, BATON ECB128,
[Test-85]
testId=154
testname=Use supplied pin, Generate keys on internal module, BATON ECB96,
[Test-86]
testId=158
testname=Use supplied pin, Generate keys on internal module, BATON CBC128,
[Test-87]
testId=162
testname=Use supplied pin, Generate keys on internal module, BATON counter,
[Test-88]
testId=166
testname=Use supplied pin, Generate keys on internal module, BATON shuffle,
[Test-89]
testId=170
testname=Use supplied pin, Generate keys on internal module, JUNIPER ECB128,
[Test-90]
testId=174
testname=Use supplied pin, Generate keys on internal module, JUNIPER CBC128,
[Test-91]
testId=178
testname=Use supplied pin, Generate keys on internal module, JUNIPER counter,
[Test-92]
testId=182
testname=Use supplied pin, Generate keys on internal module, JUNIPER shuffle,
[Test-93]
testId=1
testname=Use different (incorrect) pin, Generate keys on target token, NO OP,
[Test-94]
testId=5
testname=Use different (incorrect) pin, Generate keys on target token, RSA PKCS,
[Test-95]
testId=9
testname=Use different (incorrect) pin, Generate keys on target token, RSA 9796,
[Test-96]
testId=13
testname=Use different (incorrect) pin, Generate keys on target token, RSA X.509,
[Test-97]
testId=17
testname=Use different (incorrect) pin, Generate keys on target token, MD2 RSA PKCS,
[Test-98]
testId=21
testname=Use different (incorrect) pin, Generate keys on target token, MD5 RSA PKCS,
[Test-99]
testId=25
testname=Use different (incorrect) pin, Generate keys on target token, SHA1 RSA PKCS,
[Test-100]
testId=29
testname=Use different (incorrect) pin, Generate keys on target token, DSA,
[Test-101]
testId=33
testname=Use different (incorrect) pin, Generate keys on target token, DSA SHA1,
[Test-102]
testId=37
testname=Use different (incorrect) pin, Generate keys on target token, ECDSA,
[Test-103]
testId=41
testname=Use different (incorrect) pin, Generate keys on target token, ECDSA SHA1,
[Test-104]
testId=45
testname=Use different (incorrect) pin, Generate keys on target token, RC2 ECB,
[Test-105]
testId=49
testname=Use different (incorrect) pin, Generate keys on target token, RC2 CBC,
[Test-106]
testId=53
testname=Use different (incorrect) pin, Generate keys on target token, RC4,
[Test-107]
testId=57
testname=Use different (incorrect) pin, Generate keys on target token, RC5 ECB,
[Test-108]
testId=61
testname=Use different (incorrect) pin, Generate keys on target token, RC5 CBC,
[Test-109]
testId=65
testname=Use different (incorrect) pin, Generate keys on target token, DES ECB,
[Test-110]
testId=69
testname=Use different (incorrect) pin, Generate keys on target token, DES CBC,
[Test-111]
testId=73
testname=Use different (incorrect) pin, Generate keys on target token, DES3 ECB,
[Test-112]
testId=77
testname=Use different (incorrect) pin, Generate keys on target token, DES3 CBC,
[Test-113]
testId=81
testname=Use different (incorrect) pin, Generate keys on target token, CAST ECB,
[Test-114]
testId=85
testname=Use different (incorrect) pin, Generate keys on target token, CAST CBC,
[Test-115]
testId=89
testname=Use different (incorrect) pin, Generate keys on target token, CAST3 ECB,
[Test-116]
testId=93
testname=Use different (incorrect) pin, Generate keys on target token, CAST3 CBC,
[Test-117]
testId=97
testname=Use different (incorrect) pin, Generate keys on target token, CAST5 ECB,
[Test-118]
testId=101
testname=Use different (incorrect) pin, Generate keys on target token, CAST5 CBC,
[Test-119]
testId=105
testname=Use different (incorrect) pin, Generate keys on target token, IDEA ECB,
[Test-120]
testId=109
testname=Use different (incorrect) pin, Generate keys on target token, IDEA CBC,
[Test-121]
testId=113
testname=Use different (incorrect) pin, Generate keys on target token, CDMF ECB,
[Test-122]
testId=117
testname=Use different (incorrect) pin, Generate keys on target token, CDMF CBC,
[Test-123]
testId=121
testname=Use different (incorrect) pin, Generate keys on target token, SKIPJACK ECB64,
[Test-124]
testId=125
testname=Use different (incorrect) pin, Generate keys on target token, SKIPJACK CBC64,
[Test-125]
testId=129
testname=Use different (incorrect) pin, Generate keys on target token, SKIPJACK OFB64,
[Test-126]
testId=133
testname=Use different (incorrect) pin, Generate keys on target token, SKIPJACK CFB64,
[Test-127]
testId=137
testname=Use different (incorrect) pin, Generate keys on target token, SKIPJACK CFB32,
[Test-128]
testId=141
testname=Use different (incorrect) pin, Generate keys on target token, SKIPJACK CFB16,
[Test-129]
testId=145
testname=Use different (incorrect) pin, Generate keys on target token, SKIPJACK CFB8,
[Test-130]
testId=149
testname=Use different (incorrect) pin, Generate keys on target token, BATON ECB128,
[Test-131]
testId=153
testname=Use different (incorrect) pin, Generate keys on target token, BATON ECB96,
[Test-132]
testId=157
testname=Use different (incorrect) pin, Generate keys on target token, BATON CBC128,
[Test-133]
testId=161
testname=Use different (incorrect) pin, Generate keys on target token, BATON counter,
[Test-134]
testId=165
testname=Use different (incorrect) pin, Generate keys on target token, BATON shuffle,
[Test-135]
testId=169
testname=Use different (incorrect) pin, Generate keys on target token, JUNIPER ECB128,
[Test-136]
testId=173
testname=Use different (incorrect) pin, Generate keys on target token, JUNIPER CBC128,
[Test-137]
testId=177
testname=Use different (incorrect) pin, Generate keys on target token, JUNIPER counter,
[Test-138]
testId=181
testname=Use different (incorrect) pin, Generate keys on target token, JUNIPER shuffle,
[Test-139]
testId=3
testname=Use different (incorrect) pin, Generate keys on internal module, NO OP,
[Test-140]
testId=7
testname=Use different (incorrect) pin, Generate keys on internal module, RSA PKCS,
[Test-141]
testId=11
testname=Use different (incorrect) pin, Generate keys on internal module, RSA 9796,
[Test-142]
testId=15
testname=Use different (incorrect) pin, Generate keys on internal module, RSA X.509,
[Test-143]
testId=19
testname=Use different (incorrect) pin, Generate keys on internal module, MD2 RSA PKCS,
[Test-144]
testId=23
testname=Use different (incorrect) pin, Generate keys on internal module, MD5 RSA PKCS,
[Test-145]
testId=27
testname=Use different (incorrect) pin, Generate keys on internal module, SHA1 RSA PKCS,
[Test-146]
testId=31
testname=Use different (incorrect) pin, Generate keys on internal module, DSA,
[Test-147]
testId=35
testname=Use different (incorrect) pin, Generate keys on internal module, DSA SHA1,
[Test-148]
testId=39
testname=Use different (incorrect) pin, Generate keys on internal module, ECDSA,
[Test-149]
testId=43
testname=Use different (incorrect) pin, Generate keys on internal module, ECDSA SHA1,
[Test-150]
testId=47
testname=Use different (incorrect) pin, Generate keys on internal module, RC2 ECB,
[Test-151]
testId=51
testname=Use different (incorrect) pin, Generate keys on internal module, RC2 CBC,
[Test-152]
testId=55
testname=Use different (incorrect) pin, Generate keys on internal module, RC4,
[Test-153]
testId=59
testname=Use different (incorrect) pin, Generate keys on internal module, RC5 ECB,
[Test-154]
testId=63
testname=Use different (incorrect) pin, Generate keys on internal module, RC5 CBC,
[Test-155]
testId=67
testname=Use different (incorrect) pin, Generate keys on internal module, DES ECB,
[Test-156]
testId=71
testname=Use different (incorrect) pin, Generate keys on internal module, DES CBC,
[Test-157]
testId=75
testname=Use different (incorrect) pin, Generate keys on internal module, DES3 ECB,
[Test-158]
testId=79
testname=Use different (incorrect) pin, Generate keys on internal module, DES3 CBC,
[Test-159]
testId=83
testname=Use different (incorrect) pin, Generate keys on internal module, CAST ECB,
[Test-160]
testId=87
testname=Use different (incorrect) pin, Generate keys on internal module, CAST CBC,
[Test-161]
testId=91
testname=Use different (incorrect) pin, Generate keys on internal module, CAST3 ECB,
[Test-162]
testId=95
testname=Use different (incorrect) pin, Generate keys on internal module, CAST3 CBC,
[Test-163]
testId=99
testname=Use different (incorrect) pin, Generate keys on internal module, CAST5 ECB,
[Test-164]
testId=103
testname=Use different (incorrect) pin, Generate keys on internal module, CAST5 CBC,
[Test-165]
testId=107
testname=Use different (incorrect) pin, Generate keys on internal module, IDEA ECB,
[Test-166]
testId=111
testname=Use different (incorrect) pin, Generate keys on internal module, IDEA CBC,
[Test-167]
testId=115
testname=Use different (incorrect) pin, Generate keys on internal module, CDMF ECB,
[Test-168]
testId=119
testname=Use different (incorrect) pin, Generate keys on internal module, CDMF CBC,
[Test-169]
testId=123
testname=Use different (incorrect) pin, Generate keys on internal module, SKIPJACK ECB64,
[Test-170]
testId=127
testname=Use different (incorrect) pin, Generate keys on internal module, SKIPJACK CBC64,
[Test-171]
testId=131
testname=Use different (incorrect) pin, Generate keys on internal module, SKIPJACK OFB64,
[Test-172]
testId=135
testname=Use different (incorrect) pin, Generate keys on internal module, SKIPJACK CFB64,
[Test-173]
testId=139
testname=Use different (incorrect) pin, Generate keys on internal module, SKIPJACK CFB32,
[Test-174]
testId=143
testname=Use different (incorrect) pin, Generate keys on internal module, SKIPJACK CFB16,
[Test-175]
testId=147
testname=Use different (incorrect) pin, Generate keys on internal module, SKIPJACK CFB8,
[Test-176]
testId=151
testname=Use different (incorrect) pin, Generate keys on internal module, BATON ECB128,
[Test-177]
testId=155
testname=Use different (incorrect) pin, Generate keys on internal module, BATON ECB96,
[Test-178]
testId=159
testname=Use different (incorrect) pin, Generate keys on internal module, BATON CBC128,
[Test-179]
testId=163
testname=Use different (incorrect) pin, Generate keys on internal module, BATON counter,
[Test-180]
testId=167
testname=Use different (incorrect) pin, Generate keys on internal module, BATON shuffle,
[Test-181]
testId=171
testname=Use different (incorrect) pin, Generate keys on internal module, JUNIPER ECB128,
[Test-182]
testId=175
testname=Use different (incorrect) pin, Generate keys on internal module, JUNIPER CBC128,
[Test-183]
testId=179
testname=Use different (incorrect) pin, Generate keys on internal module, JUNIPER counter,
[Test-184]
testId=183
testname=Use different (incorrect) pin, Generate keys on internal module, JUNIPER shuffle,

View File

@ -0,0 +1,157 @@
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
[General]
mut=PKCS11
mutversion=1.0
cTemplate=pk11test.htp
testPrefix=pk11test
testSuffix=.h
#timeout=
regressSpecfile=pkcs11.reg
regressOutput=NOW
reporterOutput=NOW
singleSource=TRUE
firstExitCode=100
[UseCorrectPin]
IMPORTANCE=HIGH
TYPE=PRBool
Use supplied pin, =PR_TRUE
Use different (incorrect) pin, =PR_FALSE
[KeyGenOnTarget]
IMPORTANCE=HIGH
TYPE=PRBool
Generate keys on target token, = PR_TRUE
Generate keys on internal module, = PR_FALSE
[mechanism]
IMPORTANCE=HIGH
TYPE = CK_MECHANISM_TYPE
NO OP, = CKM_NO_OP
RSA PKCS, = CKM_RSA_PKCS
RSA 9796, = CKM_RSA_9796
RSA X.509, = CKM_RSA_X_509
MD2 RSA PKCS, = CKM_MD2_RSA_PKCS
MD5 RSA PKCS, = CKM_MD5_RSA_PKCS
SHA1 RSA PKCS, = CKM_SHA1_RSA_PKCS
DSA, = CKM_DSA
DSA SHA1, = CKM_DSA_SHA1
ECDSA, = CKM_ECDSA
ECDSA SHA1, = CKM_ECDSA_SHA1
RC2 ECB, = CKM_RC2_ECB
RC2 CBC, = CKM_RC2_CBC
#RC2 CBC PAD, = CKM_RC2_CBC_PAD
#RC2 MAC general, = CKM_RC2_MAC_GENERAL
#RC2 MAC, = CKM_RC2_MAC
RC4, = CKM_RC4
RC5 ECB, = CKM_RC5_ECB
RC5 CBC, = CKM_RC5_CBC
#RC5 CBC PAD, = CKM_RC5_CBC_PAD
#RC5 MAC general, = CKM_RC5_MAC_GENERAL
#RC5 MAC, = CKM_RC5_MAC
DES ECB, = CKM_DES_ECB
DES CBC, = CKM_DES_CBC
#DES CBC PAD, = CKM_DES_CBC_PAD
#DES MAC general, = CKM_DES_MAC_GENERAL
#DES MAC, = CKM_DES_MAC
#DES2 keygen, = CKM_DES2_KEY_GEN
DES3 ECB, = CKM_DES3_ECB
DES3 CBC, = CKM_DES3_CBC
#DES3 CBC pad, = CKM_DES3_CBC_PAD
#DES3 MAC general, = CKM_DES3_MAC_GENERAL
#DES3 MAC, = CKM_DES3_MAC
CAST ECB, = CKM_CAST_ECB
CAST CBC, = CKM_CAST_CBC
#CAST CBC PAD, = CKM_CAST_CBC_PAD
#CAST MAC general, = CKM_CAST_MAC_GENERAL
#CAST MAC, = CKM_CAST_MAC
CAST3 ECB, = CKM_CAST3_ECB
CAST3 CBC, = CKM_CAST3_CBC
#CAST3 CBC PAD, = CKM_CAST3_CBC_PAD
#CAST3 MAC general, = CKM_CAST3_MAC_GENERAL
#CAST3 MAC, = CKM_CAST3_MAC
CAST5 ECB, = CKM_CAST5_ECB
CAST5 CBC, = CKM_CAST5_CBC
#CAST5 CBC PAD, = CKM_CAST5_CBC_PAD
#CAST5 MAC general, = CKM_CAST5_MAC_GENERAL
#CAST5 MAC, = CKM_CAST5_MAC
IDEA ECB, = CKM_IDEA_ECB
IDEA CBC, = CKM_IDEA_CBC
#IDEA CBC PAD, = CKM_IDEA_CBC_PAD
#IDEA MAC general, = CKM_IDEA_MAC_GENERAL
#IDEA MAC, = CKM_IDEA_MAC
CDMF ECB, = CKM_CDMF_ECB
CDMF CBC, = CKM_CDMF_CBC
#CDMF CBC PAD, = CKM_CDMF_CBC_PAD
#CDMF MAC general, = CKM_CDMF_MAC_GENERAL
#CDMF MAC, = CKM_CDMF_MAC
SKIPJACK ECB64, = CKM_SKIPJACK_ECB64
SKIPJACK CBC64, = CKM_SKIPJACK_CBC64
SKIPJACK OFB64, = CKM_SKIPJACK_OFB64
SKIPJACK CFB64, = CKM_SKIPJACK_CFB64
SKIPJACK CFB32, = CKM_SKIPJACK_CFB32
SKIPJACK CFB16, = CKM_SKIPJACK_CFB16
SKIPJACK CFB8, = CKM_SKIPJACK_CFB8
BATON ECB128, = CKM_BATON_ECB128
BATON ECB96, = CKM_BATON_ECB96
BATON CBC128, = CKM_BATON_CBC128
BATON counter, = CKM_BATON_COUNTER
BATON shuffle, = CKM_BATON_SHUFFLE
JUNIPER ECB128, = CKM_JUNIPER_ECB128
JUNIPER CBC128, = CKM_JUNIPER_CBC128
JUNIPER counter, = CKM_JUNIPER_COUNTER
JUNIPER shuffle, = CKM_JUNIPER_SHUFFLE
#MD2 digest, = CKM_MD2
#MD2 HMAC general, = CKM_MD2_HMAC_GENERAL
#MD2 HMAC, = CKM_MD2_HMAC
#MD5 digest, = CKM_MD5
#MD5 HMAC general, = CKM_MD5_HMAC_GENERAL
#MD5 HMAC, = CKM_MD5_HMAC
#SHA1 digest, = CKM_SHA_1
#SHA1 HMAC general, = CKM_SHA_1_HMAC_GENERAL
#SHA1 HMAC, = CKM_SHA_1_HMAC
#Fasthash, = CKM_FASTHASH
#CKM_PBE_MD2_DES_CBC = CKM_PBE_MD2_DES_CBC
#CKM_PBE_MD5_DES_CBC = CKM_PBE_MD5_DES_CBC
#CKM_PBE_MD5_CAST_CBC = CKM_PBE_MD5_CAST_CBC
#CKM_PBE_MD5_CAST3_CBC = CKM_PBE_MD5_CAST3_CBC
#CKM_PBE_MD5_CAST5_CBC = CKM_PBE_MD5_CAST5_CBC
#CKM_PBE_SHA1_CAST5_CBC = CKM_PBE_SHA1_CAST5_CBC
#CKM_PBE_SHA1_RC4_128 = CKM_PBE_SHA1_RC4_128
#CKM_PBE_SHA1_RC4_40 = CKM_PBE_SHA1_RC4_40
#CKM_PBE_SHA1_DES3_EDE_CBC = CKM_PBE_SHA1_DES3_EDE_CBC
#CKM_PBE_SHA1_DES2_EDE_CBC = CKM_PBE_SHA1_DES2_EDE_CBC
#CKM_PBE_SHA1_RC2_128_CBC = CKM_PBE_SHA1_RC2_128_CBC
#CKM_PBE_SHA1_RC2_40_CBC = CKM_PBE_SHA1_RC2_40_CBC
#CKM_PBA_SHA1_WITH_SHA1_HMAC = CKM_PBA_SHA1_WITH_SHA1_HMAC

View File

@ -0,0 +1,34 @@
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
pk11test.c: pk11test.h pkcs11.h

View File

@ -0,0 +1,77 @@
#! gmake
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
#######################################################################
# (1) Include initial platform-independent assignments (MANDATORY). #
#######################################################################
include manifest.mn
#######################################################################
# (2) Include "global" configuration information. (OPTIONAL) #
#######################################################################
include $(CORE_DEPTH)/coreconf/config.mk
#######################################################################
# (3) Include "component" configuration information. (OPTIONAL) #
#######################################################################
#include $(CORE_DEPTH)/$(MODULE)/config/config.mk
#######################################################################
# (4) Include "local" platform-dependent assignments (OPTIONAL). #
#######################################################################
include config.mk
#######################################################################
# (5) Execute "global" rules. (OPTIONAL) #
#######################################################################
include $(CORE_DEPTH)/coreconf/rules.mk
#######################################################################
# (6) Execute "component" rules. (OPTIONAL) #
#######################################################################
#include $(CORE_DEPTH)/$(MODULE)/config/rules.mk
include $(CORE_DEPTH)/nss/cmd/platlibs.mk
include $(CORE_DEPTH)/nss/cmd/platrules.mk
#######################################################################
# (7) Execute "local" rules. (OPTIONAL). #
#######################################################################

View File

@ -0,0 +1,11 @@
sslt.rep : Replacer specfile
sslt.c : Main source code file for test
sslt.htp : Replacer template for header file
sslt.h : Replacer-generated header file
sslc.c : Ciphersuite-related data structures and code
ssls.c : Data buffer for transmitting data
ssls.h : Data structures and defines for the main code

View File

@ -0,0 +1,61 @@
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
#######################################################################
# Set the LDFLAGS value to encompass all normal link options, all #
# library names, and all special system linking options #
#######################################################################
LDFLAGS = \
$(DYNAMIC_LIB_PATH) \
$(LDOPTS) \
$(LIBSECTOOLS) \
$(LIBSSL) \
$(LIBPKCS7) \
$(LIBCERT) \
$(LIBKEY) \
$(LIBSECMOD) \
$(LIBCRYPTO) \
$(LIBSECUTIL) \
$(LIBHASH) \
$(LIBDBM) \
$(LIBPLC) \
$(LIBPLDS) \
$(LIBPR) \
$(DLLSYSTEM)
#######################################################################
# Adjust specific variables for all platforms #
#######################################################################

View File

@ -0,0 +1,60 @@
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
CORE_DEPTH = ../../../../../../..
#MODULE = sectools
EXPORTS =
CSRCS = sslt.c \
ssls.c \
sslc.c \
$(NULL)
PROGRAM = sslt
#IMPORTS = nspr20/19980120 \
# sectools/bin/STP_1_51 \
# sectools/lib/STP_1_51 \
# security/HCL_1_51 \
# dbm/DBM_1_5 \
# $(NULL)
REQUIRES = security dbm seccmd
DEFINES = -DNSPR20 -DREPLACER
REGRESSION_SPEC = ssl.reg
RESULTS_SUBDIR = security/ssl

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,293 @@
/*
* 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 Netscape are
* Copyright (C) 1994-2000 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License Version 2 or later (the
* "GPL"), in which case the provisions of the GPL are applicable
* instead of those above. If you wish to allow use of your
* version of this file only under the terms of the GPL and not to
* allow others to use your version of this file under the MPL,
* indicate your decision by deleting the provisions above and
* replace them with the notice and other provisions required by
* the GPL. If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* include replacer-generated variables file */
#include "ssl.h"
#include "sslproto.h"
#include "sslt.h"
#include "sslc.h"
#include "ssls.h"
#include "pk11func.h"
#define MAX_CIPHERS 100
struct cipherspec cipher_array[MAX_CIPHERS];
int cipher_array_size=0;
char *password = "";
char *nickname = "SSLServer";
char *client_nick = "SSLClient";
void InitCiphers() {
int i=0;
/* These ciphers are listed in priority order. */
DIPHER(2,SSL_ALLOWED,128,40, "RC2-CBC-Export", EN_RC2_128_CBC_EXPORT40_WITH_MD5)
CIPHER(2,SSL_NOT_ALLOWED,128,128,"RC4", EN_RC4_128_WITH_MD5)
CIPHER(2,SSL_ALLOWED,128,40, "RC4-Export", EN_RC4_128_EXPORT40_WITH_MD5)
DIPHER(2,SSL_NOT_ALLOWED,128,128,"RC2-CBC", EN_RC2_128_CBC_WITH_MD5)
DIPHER(2,SSL_ALLOWED,128,40, "RC2-CBC-40", EN_RC2_128_CBC_EXPORT40_WITH_MD5)
DIPHER(2,SSL_NOT_ALLOWED,128,128,"IDEA-CBC", EN_IDEA_128_CBC_WITH_MD5)
DIPHER(2,SSL_NOT_ALLOWED,56,56, "DES-CBC", EN_DES_64_CBC_WITH_MD5)
CIPHER(2,SSL_NOT_ALLOWED,168,168,"DES-EDE3-CBC", EN_DES_192_EDE3_CBC_WITH_MD5)
/* SSL 3 suites */
CIPHER(3,SSL_RESTRICTED,128,128, "RC4", RSA_WITH_RC4_128_MD5)
DIPHER(3,SSL_RESTRICTED,128,128, "RC4", RSA_WITH_RC4_128_SHA)
CIPHER(3,SSL_RESTRICTED,168,168, "3DES-EDE-CBC", RSA_WITH_3DES_EDE_CBC_SHA)
CIPHER(3,SSL_NOT_ALLOWED,56,56,"DES-CBC", RSA_WITH_DES_CBC_SHA)
CIPHER(3,SSL_ALLOWED,128,40, "RC4-40", RSA_EXPORT_WITH_RC4_40_MD5)
CIPHER(3,SSL_ALLOWED,128,40, "RC2-CBC-40", RSA_EXPORT_WITH_RC2_CBC_40_MD5)
DIPHER(3,SSL_ALLOWED,0,0, "NULL", NULL_WITH_NULL_NULL)
DIPHER(3,SSL_ALLOWED,0,0, "NULL", RSA_WITH_NULL_MD5)
DIPHER(3,SSL_ALLOWED,0,0, "NULL", RSA_WITH_NULL_SHA)
#if 0
DIPHER(3,SSL_NOT_ALLOWED,0,0, "IDEA-CBC", RSA_WITH_IDEA_CBC_SHA)
DIPHER(3,SSL_ALLOWED,128,40, "DES-CBC-40", RSA_EXPORT_WITH_DES40_CBC_SHA)
#endif
/*
CIPHER(DH_DSS_EXPORT_WITH_DES40_CBC_SHA),
CIPHER(DH_DSS_WITH_DES_CBC_SHA),
CIPHER(DH_DSS_WITH_3DES_EDE_CBC_SHA),
CIPHER(DH_RSA_EXPORT_WITH_DES40_CBC_SHA),
CIPHER(DH_RSA_WITH_DES_CBC_SHA),
CIPHER(DH_RSA_WITH_3DES_EDE_CBC_SHA),
CIPHER(DHE_DSS_EXPORT_WITH_DES40_CBC_SHA),
CIPHER(DHE_DSS_WITH_DES_CBC_SHA),
CIPHER(DHE_DSS_WITH_3DES_EDE_CBC_SHA),
CIPHER(DHE_RSA_EXPORT_WITH_DES40_CBC_SHA),
CIPHER(DHE_RSA_WITH_DES_CBC_SHA),
CIPHER(DHE_RSA_WITH_3DES_EDE_CBC_SHA),
CIPHER(DH_ANON_EXPORT_WITH_RC4_40_MD5),
CIPHER(DH_ANON_WITH_RC4_128_MD5),
CIPHER(DH_ANON_WITH_DES_CBC_SHA),
CIPHER(DH_ANON_WITH_3DES_EDE_CBC_SHA),
CIPHER(3,SSL_NOT_ALLOWED,0,0,"Fortezza", FORTEZZA_DMS_WITH_FORTEZZA_CBC_SHA),
CIPHER(3,SSL_NOT_ALLOWED,0,0,"Fortezza", FORTEZZA_DMS_WITH_RC4_128_SHA),
*/
DIPHER(3,SSL_NOT_ALLOWED,192,192,"3DES-EDE-CBC",RSA_FIPS_WITH_3DES_EDE_CBC_SHA)
DIPHER(3,SSL_NOT_ALLOWED,64,64, "DES-CBC", RSA_FIPS_WITH_DES_CBC_SHA)
cipher_array_size =i;
}
/* ClearCiphers()
* Clear out all ciphers */
void ClearCiphers(struct ThreadData *td) {
int i;
for (i=0;i<cipher_array_size;i++) {
SSL_EnableCipher(cipher_array[i].enableid,0);
}
}
/* EnableCiphers
* enable only those ciphers set for this test */
void EnableCiphers(struct ThreadData *td) {
int i;
for (i=0;i<cipher_array_size;i++) {
if (cipher_array[i].on) {
SSL_EnableCipher(cipher_array[i].enableid,1);
}
}
}
/* SetPolicy */
void SetPolicy() {
int i;
for (i=0;i<cipher_array_size;i++) {
if (REP_Policy == POLICY_DOMESTIC) {
SSL_SetPolicy(cipher_array[i].enableid,SSL_ALLOWED);
}
else {
SSL_SetPolicy(cipher_array[i].enableid,cipher_array[i].exportable);
}
}
}
char *MyPWFunc(PK11SlotInfo *slot, PRBool retry, void *arg)
{
static PRBool called=PR_FALSE;
if(called) {
return NULL;
} else {
called = PR_TRUE;
return PL_strdup(password);
}
}
/*
* VersionEnables
* errors (40-49)
*/
int Version2Enable(PRFileDesc *s, int v) {
if (SSL_Enable(s, SSL_ENABLE_SSL2, 1) <0) return Error(43);
else return 0;
}
int Version3Enable(PRFileDesc *s) {
if (SSL_Enable(s, SSL_ENABLE_SSL3, 1) <0) return Error(42);
else return 0;
}
int Version23Clear(PRFileDesc *s) {
if (SSL_Enable(s,SSL_ENABLE_SSL2,0) <0) return Error(40);
if (SSL_Enable(s,SSL_ENABLE_SSL3,0) <0) return Error(41);
return 0;
}
char *nicknames[MAX_NICKNAME];
void SetupNickNames() {
nicknames[CLIENT_CERT_VERISIGN] = "CLIENT_CERT_VERISIGN";
nicknames[CLIENT_CERT_HARDCOREII_1024] = "CLIENT_CERT_HARDCOREII_1024";
nicknames[CLIENT_CERT_HARDCOREII_512] = "CLIENT_CERT_HARDCOREII_512";
nicknames[CLIENT_CERT_SPARK] = "CLIENT_CERT_SPARK";
nicknames[SERVER_CERT_HARDCOREII_512] = nickname;
/* nicknames[SERVER_CERT_HARDCOREII_512] = "SERVER_CERT_HARDCOREII_512"; */
nicknames[SERVER_CERT_VERISIGN_REGULAR]= "SERVER_CERT_VERISIGN_REGULAR";
nicknames[SERVER_CERT_VERISIGN_STEPUP] = "SERVER_CERT_VERISIGN_STEPUP";
nicknames[SERVER_CERT_SPARK] = "SERVER_CERT_SPARK";
}
/*
* SetServerSecParms
* errors(10-19)
*/
int SetServerSecParms(struct ThreadData *td) {
int rv;
SECKEYPrivateKey *privKey;
PRFileDesc *s;
s = td->r;
rv = SSL_Enable(s, SSL_SECURITY, 1); /* Enable security on this socket */
if (rv < 0) return Error(10);
if (SSLT_CLIENTAUTH_INITIAL == REP_ServerDoClientAuth) {
rv = SSL_Enable(s, SSL_REQUEST_CERTIFICATE, 1);
if (rv < 0) return Error(11);
}
ClearCiphers(td);
EnableCiphers(td);
PK11_SetPasswordFunc(MyPWFunc);
SSL_SetPKCS11PinArg(s,(void*) MyPWFunc);
/* Find the certificates we are going to use from the database */
/* Test for dummy certificate, which shouldn't exist */
td->cert = PK11_FindCertFromNickname("XXXXXX_CERT_HARDCOREII_1024",NULL);
if (td->cert != NULL) return Error(16);
td->cert = NULL;
if (NO_CERT != REP_ServerCert) {
td->cert = PK11_FindCertFromNickname(nicknames[REP_ServerCert],NULL);
}
/* Note: if we're set to use NO_CERT as the server cert, then we'll
* just essentially skip the rest of this (except for session ID cache setup)
*/
if ( (NULL == td->cert) && ( NO_CERT != REP_ServerCert )) {
PR_fprintf(PR_STDERR, "Can't find certificate %s\n", nicknames[REP_ServerCert]);
PR_fprintf(PR_STDERR, "Server: Seclib error: %s\n",
SECU_ErrorString ((int16) PR_GetError()));
return Error(12);
}
if ((NO_CERT != REP_ServerCert)) {
privKey = PK11_FindKeyByAnyCert(td->cert, NULL);
if (privKey == NULL) {
dbmsg((PR_STDERR, "Can't find key for this certificate\n"));
return Error(13);
}
rv = SSL_ConfigSecureServer(s,td->cert,privKey, kt_rsa);
if (rv != PR_SUCCESS) {
dbmsg((PR_STDERR, "Can't config server error(%d) \n",rv));
return Error(14);
}
}
rv = SSL_ConfigServerSessionIDCache(10, 0, 0, ".");
if (rv != 0) {
dbmsg((PR_STDERR, "Can't config server session ID cache (%d) \n",rv));
return Error(15);
}
return 0;
}

View File

@ -0,0 +1,96 @@
/*
* 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 Netscape are
* Copyright (C) 1994-2000 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License Version 2 or later (the
* "GPL"), in which case the provisions of the GPL are applicable
* instead of those above. If you wish to allow use of your
* version of this file only under the terms of the GPL and not to
* allow others to use your version of this file under the MPL,
* indicate your decision by deleting the provisions above and
* replace them with the notice and other provisions required by
* the GPL. If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
#ifndef SSLC_H
#define SSLC_H
#include "ssls.h"
struct cipherspec {
int sslversion; /* either 2 or 3 */
int exportable; /* 0=domestic cipher, 1=exportable */
int ks,sks; /* key size, secret key size (bits) */
char *name; /* name expected from SecurityStatus */
int enableid; /* the cipher id used by SSL_EnableCipher */
int on; /* 0= do not enable this cipher, 1 = enable */
};
/* Ugly way to generate code to fill in cipher_array struct */
/* I wanted to make this part of the static structure initialization,
but some compilers complain that the .on field is not constant */
#define CIPHER(p_sslversion,p_policy,p_ks,p_sks,p_name,p_x) {\
cipher_array[i].sslversion = p_sslversion; \
cipher_array[i].exportable = p_policy; \
cipher_array[i].ks = p_ks; \
cipher_array[i].sks = p_sks; \
cipher_array[i].name = p_name; \
cipher_array[i].enableid = SSL_ ## p_x; \
cipher_array[i].on = REP_Cipher_ ## p_x; \
i++; }
/* A DIPHER is a disabled-cipher (don't run the test suite) */
#define DIPHER(sslversion,policy,ks,sks,name,x) ;
/* These constants are indexes into the 'nicknames' array */
#define NO_CERT -1
#define CLIENT_CERT_VERISIGN 1
#define CLIENT_CERT_HARDCOREII_1024 2
#define CLIENT_CERT_HARDCOREII_512 3
#define CLIENT_CERT_SPARK 4
#define SERVER_CERT_HARDCOREII_512 5
#define SERVER_CERT_VERISIGN_REGULAR 6
#define SERVER_CERT_VERISIGN_STEPUP 7
#define SERVER_CERT_SPARK 8
#define MAX_NICKNAME 10
extern struct cipherspec cipher_array[];
extern int cipher_array_size;
extern void ClearCiphers();
extern void EnableCiphers();
extern void SetPolicy();
extern int Version2Enable();
extern int Version3Enable();
extern int Version23Clear();
extern char *nicknames[];
extern void SetupNickNames();
extern int SetServerSecParms(struct ThreadData *td);
#endif
/* SSLC_H */

View File

@ -0,0 +1,105 @@
/*
* 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 Netscape are
* Copyright (C) 1994-2000 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License Version 2 or later (the
* "GPL"), in which case the provisions of the GPL are applicable
* instead of those above. If you wish to allow use of your
* version of this file only under the terms of the GPL and not to
* allow others to use your version of this file under the MPL,
* indicate your decision by deleting the provisions above and
* replace them with the notice and other provisions required by
* the GPL. If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
#include "ssls.h"
#include <ssl.h>
#include <sslproto.h>
/* 21 lines x 8 chars = 168 bytes */
#if 1
unsigned char data[] = {
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x07, 0x08
};
#else
unsigned char data[] = {
0x2e, 0x86, 0x53, 0x10, 0x4f, 0x38, 0x34, 0xea,
0x4b, 0xd3, 0x88, 0xff, 0x6c, 0xd8, 0x1d, 0x4f,
0x20, 0xb9, 0xe7, 0x67, 0xb2, 0xfb, 0x14, 0x56,
0x55, 0x57, 0x93, 0x80, 0xd7, 0x71, 0x38, 0xef,
0x6c, 0xc5, 0xde, 0xfa, 0xaf, 0x04, 0x51, 0x2f,
0x0d, 0x9f, 0x27, 0x9b, 0xa5, 0xd8, 0x72, 0x60,
0xd9, 0x03, 0x1b, 0x02, 0x71, 0xbd, 0x5a, 0x0a,
0x42, 0x42, 0x50, 0xb3, 0x7c, 0x3d, 0xd9, 0x51,
0xb8, 0x06, 0x1b, 0x7e, 0xcd, 0x9a, 0x21, 0xe5,
0xf1, 0x5d, 0x0f, 0x28, 0x6b, 0x65, 0xbd, 0x28,
0xad, 0xd0, 0xcc, 0x8d, 0x6e, 0x5d, 0xeb, 0xa1,
0xe6, 0xd5, 0xf8, 0x27, 0x52, 0xad, 0x63, 0xd1,
0xec, 0xbf, 0xe3, 0xbd, 0x3f, 0x59, 0x1a, 0x5e,
0xf3, 0x56, 0x83, 0x43, 0x79, 0xd1, 0x65, 0xcd,
0x2b, 0x9f, 0x98, 0x2f, 0x20, 0x03, 0x7f, 0xa9,
0x88, 0x9d, 0xe0, 0x68, 0xa1, 0x6f, 0x0b, 0xe6,
0xe1, 0x9e, 0x27, 0x5d, 0x84, 0x6a, 0x12, 0x98,
0x32, 0x9a, 0x8e, 0xd5, 0x23, 0xd7, 0x1a, 0xec,
0xe7, 0xfc, 0xe2, 0x25, 0x57, 0xd2, 0x3c, 0x97,
0x12, 0xa9, 0xf5, 0x81, 0x7f, 0xf2, 0xd6, 0x5d,
0xa4, 0x84, 0xc3, 0xad, 0x38, 0xdc, 0x9c, 0x19
};
#endif

View File

@ -0,0 +1,127 @@
/*
* 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 Netscape are
* Copyright (C) 1994-2000 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License Version 2 or later (the
* "GPL"), in which case the provisions of the GPL are applicable
* instead of those above. If you wish to allow use of your
* version of this file only under the terms of the GPL and not to
* allow others to use your version of this file under the MPL,
* indicate your decision by deleting the provisions above and
* replace them with the notice and other provisions required by
* the GPL. If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
#ifndef SSLS_H
#define SSLS_H
#include <prinit.h>
#include <prprf.h>
#include <prsystem.h>
#include <prmem.h>
#include <plstr.h>
#include <prnetdb.h>
#include <prinrval.h>
#include <cert.h>
extern struct CipherPolicy ciphers[];
extern struct CipherPair policy[];
extern unsigned char data[];
#define BUFSIZE 3955 /* some arbitrary size not a multiple of 2^x */
struct ThreadData { /* place to put thread-local data. */
PRFileDesc *fd; /* NSPR File Desc */
PRFileDesc *s; /* The secure File Desc */
PRFileDesc *r; /* Rendezvous socket (not used right now */
PRPollDesc pd;
CERTCertificate *cert;
CERTCertificate *peercert;
struct ThreadData *peer;
PRNetAddr na;
PRThread *subthread;
int peerport;
int client;
char sendbuf[BUFSIZE];
char recvbuf[BUFSIZE];
int data_read;
int data_sent;
int data_tosend;
int state;
unsigned char xor_reading;
unsigned char xor_writing;
int exit_code;
int secerr_flag;
int secerr;
#define SSLT_INITIAL_FORCE 1
#define SSLT_FIRST_IO 2
#define SSLT_REDO 4
int status_on;
char *status_cipher;
int status_keysize;
int status_skeysize;
char *status_issuer;
char *status_subject;
};
#define POLICY_DOMESTIC 0
#define POLICY_EXPORT 1
extern int VerifyBuffer(char *recvbuf,int bufsize,int done, char xor);
extern void FillBuffer(char *sendbuf,int bufsize, int offset, char xor);
extern void HandshakeCallback(PRFileDesc *s, void *td);
#define DATABUFSIZE 168
#define CLIENTXOR 0xA5
#define BLOCKING 0
#define NON_BLOCKING 1
#define STATE_BEFORE_INITIAL_HANDSHAKE 0
#define STATE_BEFORE_REDO_HANDSHAKE 1
#define STATE_STATUS_COLLECTED 2
#define STATE_DONE_WRITING 3
#define STATE_DONE_READING 4
#define STATE_DONE 5
#define SSLT_CLIENTAUTH_OFF 1
#define SSLT_CLIENTAUTH_REDO 2
#define SSLT_CLIENTAUTH_INITIAL 3
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,238 @@
/*
* 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 Netscape are
* Copyright (C) 1994-2000 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License Version 2 or later (the
* "GPL"), in which case the provisions of the GPL are applicable
* instead of those above. If you wish to allow use of your
* version of this file only under the terms of the GPL and not to
* allow others to use your version of this file under the MPL,
* indicate your decision by deleting the provisions above and
* replace them with the notice and other provisions required by
* the GPL. If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
#ifndef SSLT_H
#define SSLT_H
extern int Error(int);
#ifndef DEBUG_stevep
#define dbmsg(x) if (debug) PR_fprintf x ;
#else
#define dbmsg(x) ;
#endif
extern PRInt32 debug;
#ifdef INSERT_TABLES
int testId = 0;
int ClientCert[] = {
NO_CERT,
CLIENT_CERT_HARDCOREII_1024
};
int ServerCert[] = {
SERVER_CERT_HARDCOREII_512
};
int Policy[] = {
POLICY_EXPORT,
POLICY_DOMESTIC
};
int SSLVersion2[] = {
PR_TRUE,
PR_FALSE
};
int SSLVersion3[] = {
PR_TRUE,
PR_FALSE
};
int ClientIOSessionLength[] = {
0,
1024
};
int ServerIOSessionLength[] = {
0,
1024
};
int ServerDoClientAuth[] = {
SSLT_CLIENTAUTH_OFF
};
PRBool ClientForceHandshake[] = {
PR_FALSE
};
PRBool ServerForceHandshake[] = {
PR_TRUE
};
PRBool ClientRedoHandshake[] = {
PR_FALSE
};
PRBool ServerRedoHandshake[] = {
PR_FALSE
};
PRBool Cipher_EN_RC4_128_WITH_MD5[] = {
PR_TRUE,
PR_FALSE
};
PRBool Cipher_EN_RC4_128_EXPORT40_WITH_MD5[] = {
PR_TRUE,
PR_FALSE
};
PRBool Cipher_EN_RC2_128_CBC_WITH_MD5[] = {
PR_TRUE,
PR_FALSE
};
PRBool Cipher_EN_DES_192_EDE3_CBC_WITH_MD5[] = {
PR_TRUE,
PR_FALSE
};
PRBool Cipher_RSA_EXPORT_WITH_RC4_40_MD5[] = {
PR_TRUE,
PR_FALSE
};
PRBool Cipher_RSA_WITH_RC4_128_MD5[] = {
PR_TRUE,
PR_FALSE
};
PRBool Cipher_RSA_EXPORT_WITH_RC2_CBC_40_MD5[] = {
PR_TRUE,
PR_FALSE
};
PRBool Cipher_RSA_WITH_DES_CBC_SHA[] = {
PR_TRUE,
PR_FALSE
};
PRBool Cipher_RSA_WITH_3DES_EDE_CBC_SHA[] = {
PR_TRUE,
PR_FALSE
};
#else
extern int ClientCert[];
extern int ServerCert[];
extern int Policy[];
extern int SSLVersion2[];
extern int SSLVersion3[];
extern int ClientIOSessionLength[];
extern int ServerIOSessionLength[];
extern int ServerDoClientAuth[];
extern PRBool ClientForceHandshake[];
extern PRBool ServerForceHandshake[];
extern PRBool ClientRedoHandshake[];
extern PRBool ServerRedoHandshake[];
extern PRBool Cipher_EN_RC4_128_WITH_MD5[];
extern PRBool Cipher_EN_RC4_128_EXPORT40_WITH_MD5[];
extern PRBool Cipher_EN_RC2_128_CBC_WITH_MD5[];
extern PRBool Cipher_EN_DES_192_EDE3_CBC_WITH_MD5[];
extern PRBool Cipher_RSA_EXPORT_WITH_RC4_40_MD5[];
extern PRBool Cipher_RSA_WITH_RC4_128_MD5[];
extern PRBool Cipher_RSA_EXPORT_WITH_RC2_CBC_40_MD5[];
extern PRBool Cipher_RSA_WITH_DES_CBC_SHA[];
extern PRBool Cipher_RSA_WITH_3DES_EDE_CBC_SHA[];
extern int testId;
#endif
#define REP_ClientCert ClientCert[testId%2]
#define REP_ServerCert ServerCert[testId/2%1]
#define REP_Policy Policy[testId/2/1%2]
#define REP_SSLVersion2 SSLVersion2[testId/2/1/2%2]
#define REP_SSLVersion3 SSLVersion3[testId/2/1/2/2%2]
#define REP_ClientIOSessionLength ClientIOSessionLength[testId/2/1/2/2/2%2]
#define REP_ServerIOSessionLength ServerIOSessionLength[testId/2/1/2/2/2/2%2]
#define REP_ServerDoClientAuth ServerDoClientAuth[testId/2/1/2/2/2/2/2%1]
#define REP_ClientForceHandshake ClientForceHandshake[testId/2/1/2/2/2/2/2/1%1]
#define REP_ServerForceHandshake ServerForceHandshake[testId/2/1/2/2/2/2/2/1/1%1]
#define REP_ClientRedoHandshake ClientRedoHandshake[testId/2/1/2/2/2/2/2/1/1/1%1]
#define REP_ServerRedoHandshake ServerRedoHandshake[testId/2/1/2/2/2/2/2/1/1/1/1%1]
#define REP_Cipher_EN_RC4_128_WITH_MD5 Cipher_EN_RC4_128_WITH_MD5[testId/2/1/2/2/2/2/2/1/1/1/1/1%2]
#define REP_Cipher_EN_RC4_128_EXPORT40_WITH_MD5 Cipher_EN_RC4_128_EXPORT40_WITH_MD5[testId/2/1/2/2/2/2/2/1/1/1/1/1/2%2]
#define REP_Cipher_EN_RC2_128_CBC_WITH_MD5 Cipher_EN_RC2_128_CBC_WITH_MD5[testId/2/1/2/2/2/2/2/1/1/1/1/1/2/2%2]
#ifdef undef
#define REP_Cipher_EN_RC2_128_CBC_EXPORT40_WITH_MD5 $[Cipher_EN_RC2_128_CBC_EXPORT40_WITH_MD5]
#define REP_Cipher_EN_IDEA_128_CBC_WITH_MD5 $[Cipher_EN_IDEA_128_CBC_WITH_MD5]
#define REP_Cipher_EN_DES_64_CBC_WITH_MD5 $[Cipher_EN_DES_64_CBC_WITH_MD5
#define REP_Cipher_RSA_WITH_NULL_SHA $[Cipher_RSA_WITH_NULL_SHA]
#define REP_Cipher_RSA_WITH_RC4_128_SHA $[Cipher_RSA_WITH_RC4_128_SHA]
#define REP_Cipher_RSA_WITH_IDEA_CBC_SHA $[Cipher_RSA_WITH_IDEA_CBC_SHA]
#define REP_Cipher_NULL_WITH_NULL_NULL $[Cipher_NULL_WITH_NULL_NULL]
#define REP_Cipher_RSA_WITH_NULL_MD5 $[Cipher_RSA_WITH_NULL_MD5]
#endif
#define REP_Cipher_EN_DES_192_EDE3_CBC_WITH_MD5 Cipher_EN_DES_192_EDE3_CBC_WITH_MD5[testId/2/1/2/2/2/2/2/1/1/1/1/1/2/2/2%2]
#define REP_Cipher_RSA_EXPORT_WITH_RC4_40_MD5 Cipher_RSA_EXPORT_WITH_RC4_40_MD5[testId/2/1/2/2/2/2/2/1/1/1/1/1/2/2/2/2%2]
#define REP_Cipher_RSA_WITH_RC4_128_MD5 Cipher_RSA_WITH_RC4_128_MD5[testId/2/1/2/2/2/2/2/1/1/1/1/1/2/2/2/2/2%2]
#define REP_Cipher_RSA_EXPORT_WITH_RC2_CBC_40_MD5 Cipher_RSA_EXPORT_WITH_RC2_CBC_40_MD5[testId/2/1/2/2/2/2/2/1/1/1/1/1/2/2/2/2/2/2%2]
#define REP_Cipher_RSA_WITH_DES_CBC_SHA Cipher_RSA_WITH_DES_CBC_SHA[testId/2/1/2/2/2/2/2/1/1/1/1/1/2/2/2/2/2/2/2%2]
#define REP_Cipher_RSA_WITH_3DES_EDE_CBC_SHA Cipher_RSA_WITH_3DES_EDE_CBC_SHA[testId/2/1/2/2/2/2/2/1/1/1/1/1/2/2/2/2/2/2/2/2%2]
#ifdef undef
#define REP_Cipher_RSA_EXPORT_WITH_DES40_CBC_SHA $[Cipher_RSA_EXPORT_WITH_DES40_CBC_SHA]
#define REP_Cipher_DH_DSS_EXPORT_WITH_DES40_CBC_SHA [Cipher_DH_DSS_EXPORT_WITH_DES40_CBC_SHA]
#define REP_Cipher_DH_DSS_WITH_DES_CBC_SHA [Cipher_DH_DSS_WITH_DES_CBC_SHA]
#define REP_Cipher_DH_DSS_WITH_3DES_EDE_CBC_SHA [Cipher_DH_DSS_WITH_3DES_EDE_CBC_SHA]
#define REP_Cipher_DH_RSA_EXPORT_WITH_DES40_CBC_SHA [Cipher_DH_RSA_EXPORT_WITH_DES40_CBC_SHA]
#define REP_Cipher_DH_RSA_WITH_DES_CBC_SHA [Cipher_DH_RSA_WITH_DES_CBC_SHA]
#define REP_Cipher_DH_RSA_WITH_3DES_EDE_CBC_SHA [Cipher_DH_RSA_WITH_3DES_EDE_CBC_SHA]
#define REP_Cipher_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA [Cipher_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA]
#define REP_Cipher_DHE_DSS_WITH_DES_CBC_SHA [Cipher_DHE_DSS_WITH_DES_CBC_SHA]
#define REP_Cipher_DHE_DSS_WITH_3DES_EDE_CBC_SHA [Cipher_DHE_DSS_WITH_3DES_EDE_CBC_SHA]
#define REP_Cipher_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA [Cipher_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA]
#define REP_Cipher_DHE_RSA_WITH_DES_CBC_SHA [Cipher_DHE_RSA_WITH_DES_CBC_SHA]
#define REP_Cipher_DHE_RSA_WITH_3DES_EDE_CBC_SHA [Cipher_DHE_RSA_WITH_3DES_EDE_CBC_SHA]
#define REP_Cipher_DH_ANON_EXPORT_WITH_RC4_40_MD5 [Cipher_DH_ANON_EXPORT_WITH_RC4_40_MD5]
#define REP_Cipher_DH_ANON_WITH_RC4_128_MD5 [Cipher_DH_ANON_WITH_RC4_128_MD5]
#define REP_Cipher_DH_ANON_WITH_DES_CBC_SHA [Cipher_DH_ANON_WITH_DES_CBC_SHA]
#define REP_Cipher_DH_ANON_WITH_3DES_EDE_CBC_SHA [Cipher_DH_ANON_WITH_3DES_EDE_CBC_SHA]
#define REP_Cipher_FORTEZZA_DMS_WITH_FORTEZZA_CBC_SHA $[Cipher_FORTEZZA_DMS_WITH_FORTEZZA_CBC_SHA]
#define REP_Cipher_FORTEZZA_DMS_WITH_RC4_128_SHA $[Cipher_FORTEZZA_DMS_WITH_RC4_128_SHA]
#endif
#define REP_Cipher_RSA_FIPS_WITH_3DES_EDE_CBC_SHA $[Cipher_RSA_FIPS_WITH_3DES_EDE_CBC_SHA]
#define REP_Cipher_RSA_FIPS_WITH_DES_CBC_SHA $[Cipher_RSA_FIPS_WITH_DES_CBC_SHA]
#endif

View File

@ -0,0 +1,136 @@
/*
* 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 Netscape are
* Copyright (C) 1994-2000 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License Version 2 or later (the
* "GPL"), in which case the provisions of the GPL are applicable
* instead of those above. If you wish to allow use of your
* version of this file only under the terms of the GPL and not to
* allow others to use your version of this file under the MPL,
* indicate your decision by deleting the provisions above and
* replace them with the notice and other provisions required by
* the GPL. If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
#ifndef SSLT_H
#define SSLT_H
extern int Error(int);
#ifndef DEBUG_stevep
#define dbmsg(x) PR_fprintf x ;
#else
#define dbmsg(x) ;
#endif
#ifdef INSERT_TABLES
$[DATA-TO-TEST]
#else
extern int ClientCert[];
extern int ServerCert[];
extern int Policy[];
extern int SSLVersion2[];
extern int SSLVersion3[];
extern int ClientIOSessionLength[];
extern int ServerIOSessionLength[];
extern int ServerDoClientAuth[];
extern PRBool ClientForceHandshake[];
extern PRBool ServerForceHandshake[];
extern PRBool ClientRedoHandshake[];
extern PRBool ServerRedoHandshake[];
extern PRBool Cipher_EN_RC4_128_WITH_MD5[];
extern PRBool Cipher_EN_RC4_128_EXPORT40_WITH_MD5[];
extern PRBool Cipher_EN_RC2_128_CBC_WITH_MD5[];
extern PRBool Cipher_EN_DES_192_EDE3_CBC_WITH_MD5[];
extern PRBool Cipher_RSA_EXPORT_WITH_RC4_40_MD5[];
extern PRBool Cipher_RSA_WITH_RC4_128_MD5[];
extern PRBool Cipher_RSA_EXPORT_WITH_RC2_CBC_40_MD5[];
extern PRBool Cipher_RSA_WITH_DES_CBC_SHA[];
extern PRBool Cipher_RSA_WITH_3DES_EDE_CBC_SHA[];
extern int testId;
#endif
#define REP_ClientCert $[ClientCert]
#define REP_ServerCert $[ServerCert]
#define REP_Policy $[Policy]
#define REP_SSLVersion2 $[SSLVersion2]
#define REP_SSLVersion3 $[SSLVersion3]
#define REP_ClientIOSessionLength $[ClientIOSessionLength]
#define REP_ServerIOSessionLength $[ServerIOSessionLength]
#define REP_ServerDoClientAuth $[ServerDoClientAuth]
#define REP_ClientForceHandshake $[ClientForceHandshake]
#define REP_ServerForceHandshake $[ServerForceHandshake]
#define REP_ClientRedoHandshake $[ClientRedoHandshake]
#define REP_ServerRedoHandshake $[ServerRedoHandshake]
#define REP_Cipher_EN_RC4_128_WITH_MD5 $[Cipher_EN_RC4_128_WITH_MD5]
#define REP_Cipher_EN_RC4_128_EXPORT40_WITH_MD5 $[Cipher_EN_RC4_128_EXPORT40_WITH_MD5]
#define REP_Cipher_EN_RC2_128_CBC_WITH_MD5 $[Cipher_EN_RC2_128_CBC_WITH_MD5]
#ifdef undef
#define REP_Cipher_EN_RC2_128_CBC_EXPORT40_WITH_MD5 $[Cipher_EN_RC2_128_CBC_EXPORT40_WITH_MD5]
#define REP_Cipher_EN_IDEA_128_CBC_WITH_MD5 $[Cipher_EN_IDEA_128_CBC_WITH_MD5]
#define REP_Cipher_EN_DES_64_CBC_WITH_MD5 $[Cipher_EN_DES_64_CBC_WITH_MD5
#define REP_Cipher_RSA_WITH_NULL_SHA $[Cipher_RSA_WITH_NULL_SHA]
#define REP_Cipher_RSA_WITH_RC4_128_SHA $[Cipher_RSA_WITH_RC4_128_SHA]
#define REP_Cipher_RSA_WITH_IDEA_CBC_SHA $[Cipher_RSA_WITH_IDEA_CBC_SHA]
#define REP_Cipher_NULL_WITH_NULL_NULL $[Cipher_NULL_WITH_NULL_NULL]
#define REP_Cipher_RSA_WITH_NULL_MD5 $[Cipher_RSA_WITH_NULL_MD5]
#endif
#define REP_Cipher_EN_DES_192_EDE3_CBC_WITH_MD5 $[Cipher_EN_DES_192_EDE3_CBC_WITH_MD5]
#define REP_Cipher_RSA_EXPORT_WITH_RC4_40_MD5 $[Cipher_RSA_EXPORT_WITH_RC4_40_MD5]
#define REP_Cipher_RSA_WITH_RC4_128_MD5 $[Cipher_RSA_WITH_RC4_128_MD5]
#define REP_Cipher_RSA_EXPORT_WITH_RC2_CBC_40_MD5 $[Cipher_RSA_EXPORT_WITH_RC2_CBC_40_MD5]
#define REP_Cipher_RSA_WITH_DES_CBC_SHA $[Cipher_RSA_WITH_DES_CBC_SHA]
#define REP_Cipher_RSA_WITH_3DES_EDE_CBC_SHA $[Cipher_RSA_WITH_3DES_EDE_CBC_SHA]
#ifdef undef
#define REP_Cipher_RSA_EXPORT_WITH_DES40_CBC_SHA $[Cipher_RSA_EXPORT_WITH_DES40_CBC_SHA]
#define REP_Cipher_DH_DSS_EXPORT_WITH_DES40_CBC_SHA [Cipher_DH_DSS_EXPORT_WITH_DES40_CBC_SHA]
#define REP_Cipher_DH_DSS_WITH_DES_CBC_SHA [Cipher_DH_DSS_WITH_DES_CBC_SHA]
#define REP_Cipher_DH_DSS_WITH_3DES_EDE_CBC_SHA [Cipher_DH_DSS_WITH_3DES_EDE_CBC_SHA]
#define REP_Cipher_DH_RSA_EXPORT_WITH_DES40_CBC_SHA [Cipher_DH_RSA_EXPORT_WITH_DES40_CBC_SHA]
#define REP_Cipher_DH_RSA_WITH_DES_CBC_SHA [Cipher_DH_RSA_WITH_DES_CBC_SHA]
#define REP_Cipher_DH_RSA_WITH_3DES_EDE_CBC_SHA [Cipher_DH_RSA_WITH_3DES_EDE_CBC_SHA]
#define REP_Cipher_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA [Cipher_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA]
#define REP_Cipher_DHE_DSS_WITH_DES_CBC_SHA [Cipher_DHE_DSS_WITH_DES_CBC_SHA]
#define REP_Cipher_DHE_DSS_WITH_3DES_EDE_CBC_SHA [Cipher_DHE_DSS_WITH_3DES_EDE_CBC_SHA]
#define REP_Cipher_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA [Cipher_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA]
#define REP_Cipher_DHE_RSA_WITH_DES_CBC_SHA [Cipher_DHE_RSA_WITH_DES_CBC_SHA]
#define REP_Cipher_DHE_RSA_WITH_3DES_EDE_CBC_SHA [Cipher_DHE_RSA_WITH_3DES_EDE_CBC_SHA]
#define REP_Cipher_DH_ANON_EXPORT_WITH_RC4_40_MD5 [Cipher_DH_ANON_EXPORT_WITH_RC4_40_MD5]
#define REP_Cipher_DH_ANON_WITH_RC4_128_MD5 [Cipher_DH_ANON_WITH_RC4_128_MD5]
#define REP_Cipher_DH_ANON_WITH_DES_CBC_SHA [Cipher_DH_ANON_WITH_DES_CBC_SHA]
#define REP_Cipher_DH_ANON_WITH_3DES_EDE_CBC_SHA [Cipher_DH_ANON_WITH_3DES_EDE_CBC_SHA]
#define REP_Cipher_FORTEZZA_DMS_WITH_FORTEZZA_CBC_SHA $[Cipher_FORTEZZA_DMS_WITH_FORTEZZA_CBC_SHA]
#define REP_Cipher_FORTEZZA_DMS_WITH_RC4_128_SHA $[Cipher_FORTEZZA_DMS_WITH_RC4_128_SHA]
#endif
#define REP_Cipher_RSA_FIPS_WITH_3DES_EDE_CBC_SHA $[Cipher_RSA_FIPS_WITH_3DES_EDE_CBC_SHA]
#define REP_Cipher_RSA_FIPS_WITH_DES_CBC_SHA $[Cipher_RSA_FIPS_WITH_DES_CBC_SHA]
#endif

View File

@ -0,0 +1,417 @@
#
# 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 Netscape are
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License Version 2 or later (the
# "GPL"), in which case the provisions of the GPL are applicable
# instead of those above. If you wish to allow use of your
# version of this file only under the terms of the GPL and not to
# allow others to use your version of this file under the MPL,
# indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by
# the GPL. If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
[General]
cTemplate = sslt.htp
makeTemplate = ssl.mtp
path = .
testPrefix = sslt
testSuffix = .h
regressSpecfile = ssl.reg
regressOutput = ssl.html
mut = SSL
mutversion = 1.0
timeout = 6
makefileOutput = Makefile
reporterOutput = ssl.rpt
singleSource = TRUE
# The names given for the Client and Server Certificates are
# nicknames from the database
[ClientCert]
IMPORTANCE = HIGH
TYPE = int
ClientCert_none = NO_CERT
ClientCert_one = CLIENT_CERT_HARDCOREII_1024
#ClientCert_oneb = CLIENT_CERT_HARDCOREII_512
#ClientCert_two = CLIENT_CERT_SPARK
#ClientCert_three = SERVER_CERT_HARDCOREII_1024
#ClientCert_four = CLIENT_CERT_VERISIGN
[ServerCert]
IMPORTANCE = HIGH
TYPE = int
#ServerCert_none = NO_CERT
ServerCert_one = SERVER_CERT_HARDCOREII_512
#ServerCert_two = CLIENT_CERT_HARDCOREII_512
#ServerCert_three = SERVER_CERT_SPARK
#ServerCert_four = SERVER_CERT_VERISIGN_REGULAR
#ServerCert_five = SERVER_CERT_VERISIGN_STEPUP
##### POLICY ####
#
# (right now, policy can only be set globally. When bug #102853 is
# fixed, I'll be able to bring ClientPolicy and ServerPolicy back)
#
[Policy]
IMPORTANCE = HIGH
TYPE = int
ExportPolicy = POLICY_EXPORT
DomesticPolicy = POLICY_DOMESTIC
#[ClientPolicy]
#IMPORTANCE = HIGH
#TYPE = int
#ExportPolicy = POLICY_EXPORT
#DomesticPolicy = POLICY_DOMESTIC
#[ServerPolicy]
#IMPORTANCE = HIGH
#TYPE = int
#ServerExportPolicy = POLICY_EXPORT
#ServerDomesticPolicy = POLICY_DOMESTIC
# Which SSL version to enable. Like the policy, this is a global
# setting, affecting both client and server sockets
[SSLVersion2]
IMPORTANCE = HIGH
TYPE = int
SSLVersion2 = PR_TRUE
NO_SSLVersion2 = PR_FALSE
[SSLVersion3]
IMPORTANCE = HIGH
TYPE = int
SSLVersion3 = PR_TRUE
NO_SSLVersion3 = PR_FALSE
#[ClientIOModel]
#IMPORTANCE = LOW
#TYPE = int
#ClientIOBlocking = 0
#ClientIONonBlocking = 1
#[ServerIOModel]
#IMPORTANCE = LOW
#TYPE = int
#ServerIOBlocking = BLOCKING
#ServerIONonBlocking = NON_BLOCKING
[ClientIOSessionLength]
IMPORTANCE = LOW
TYPE = int
ClientIOLength0 = 0
ClientIOLength1K = 1024
#ClientIOLength256K = 262144
#ClientIOLength5M = 5242880
[ServerIOSessionLength]
IMPORTANCE = LOW
TYPE = int
ServerIOLength0 = 0
ServerIOLength1K = 1024
#ServerIOLength256K = 262144
#ServerIOLength5M = 5242880
[ServerDoClientAuth]
IMPORTANCE = LOW
TYPE = int
#ClientAuthOnInitial = SSLT_CLIENTAUTH_INITIAL
#ClientAuthOnRedo = SSLT_CLIENTAUTH_REDO
ClientAuthOff = SSLT_CLIENTAUTH_OFF
[ClientForceHandshake]
IMPORTANCE = LOW
TYPE = PRBool
#ClientForceHandshake = PR_TRUE
ClientNoForceHandshake = PR_FALSE
[ServerForceHandshake]
IMPORTANCE = LOW
TYPE = PRBool
ServerForceHandshake = PR_TRUE
#ServerNoForceHandshake = PR_FALSE
[ClientRedoHandshake]
IMPORTANCE = LOW
TYPE = PRBool
#ClientRedoHandshake = PR_TRUE
ClientNoRedoHandshake = PR_FALSE
[ServerRedoHandshake]
IMPORTANCE = LOW
TYPE = PRBool
#ServerRedoHandshake = PR_TRUE
ServerNoRedoHandshake = PR_FALSE
###########################################################################
#
# C i p h e r S p e c s
#
###########################################################################
[Cipher_EN_RC4_128_WITH_MD5]
IMPORTANCE = HIGH
TYPE = PRBool
Cipher_EN_RC4_128_WITH_MD5 = PR_TRUE
No_Cipher_EN_RC4_128_WITH_MD5 = PR_FALSE
[Cipher_EN_RC4_128_EXPORT40_WITH_MD5]
IMPORTANCE = HIGH
TYPE = PRBool
Cipher_EN_RC4_128_EXPORT40_WITH_MD5 = PR_TRUE
No_Cipher_EN_RC4_128_EXPORT40_WITH_MD5 = PR_FALSE
[Cipher_EN_RC2_128_CBC_WITH_MD5]
IMPORTANCE = HIGH
TYPE = PRBool
Cipher_EN_RC2_128_CBC_WITH_MD5 = PR_TRUE
No_Cipher_EN_RC2_128_CBC_WITH_MD5 = PR_FALSE
#[Cipher_EN_RC2_128_CBC_EXPORT40_WITH_MD5]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_EN_RC2_128_CBC_EXPORT40_WITH_MD5 = PR_TRUE
#No_Cipher_EN_RC2_128_CBC_EXPORT40_WITH_MD5 = PR_FALSE
#[Cipher_EN_IDEA_128_CBC_WITH_MD5]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_EN_IDEA_128_CBC_WITH_MD5 = PR_TRUE
#No_Cipher_EN_IDEA_128_CBC_WITH_MD5 = PR_FALSE
#[Cipher_EN_DES_64_CBC_WITH_MD5]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_EN_DES_64_CBC_WITH_MD5 = PR_TRUE
#No_Cipher_EN_DES_64_CBC_WITH_MD5 = PR_FALSE
[Cipher_EN_DES_192_EDE3_CBC_WITH_MD5]
IMPORTANCE = HIGH
TYPE = PRBool
Cipher_EN_DES_192_EDE3_CBC_WITH_MD5 = PR_TRUE
No_Cipher_EN_DES_192_EDE3_CBC_WITH_MD5 = PR_FALSE
# SSL v3 Cipher Suites
#[Cipher_NULL_WITH_NULL_NULL]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_NULL_WITH_NULL_NULL = PR_TRUE
#No_Cipher_NULL_WITH_NULL_NULL = PR_FALSE
#[Cipher_RSA_WITH_NULL_MD5]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_RSA_WITH_NULL_MD5 = PR_TRUE
#No_Cipher_RSA_WITH_NULL_MD5 = PR_FALSE
#[Cipher_RSA_WITH_NULL_SHA]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_RSA_WITH_NULL_SHA = PR_TRUE
#No_Cipher_RSA_WITH_NULL_SHA = PR_FALSE
[Cipher_RSA_EXPORT_WITH_RC4_40_MD5]
IMPORTANCE = HIGH
TYPE = PRBool
Cipher_RSA_EXPORT_WITH_RC4_40_MD5 = PR_TRUE
No_Cipher_RSA_EXPORT_WITH_RC4_40_MD5 = PR_FALSE
[Cipher_RSA_WITH_RC4_128_MD5]
IMPORTANCE = HIGH
TYPE = PRBool
Cipher_RSA_WITH_RC4_128_MD5 = PR_TRUE
No_Cipher_RSA_WITH_RC4_128_MD5 = PR_FALSE
#[Cipher_RSA_WITH_RC4_128_SHA]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_RSA_WITH_RC4_128_SHA = PR_TRUE
#No_Cipher_RSA_WITH_RC4_128_SHA = PR_FALSE
[Cipher_RSA_EXPORT_WITH_RC2_CBC_40_MD5]
IMPORTANCE = HIGH
TYPE = PRBool
Cipher_RSA_EXPORT_WITH_RC2_CBC_40_MD5 = PR_TRUE
No_Cipher_RSA_EXPORT_WITH_RC2_CBC_40_MD5 = PR_FALSE
#[Cipher_RSA_WITH_IDEA_CBC_SHA]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_RSA_WITH_IDEA_CBC_SHA = PR_TRUE
#No_Cipher_RSA_WITH_IDEA_CBC_SHA = PR_FALSE
#[Cipher_RSA_EXPORT_WITH_DES40_CBC_SHA]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_RSA_EXPORT_WITH_DES40_CBC_SHA = PR_TRUE
#No_Cipher_RSA_EXPORT_WITH_DES40_CBC_SHA = PR_FALSE
[Cipher_RSA_WITH_DES_CBC_SHA]
IMPORTANCE = HIGH
TYPE = PRBool
Cipher_RSA_WITH_DES_CBC_SHA = PR_TRUE
No_Cipher_RSA_WITH_DES_CBC_SHA = PR_FALSE
[Cipher_RSA_WITH_3DES_EDE_CBC_SHA]
IMPORTANCE = HIGH
TYPE = PRBool
Cipher_RSA_WITH_3DES_EDE_CBC_SHA = PR_TRUE
No_Cipher_RSA_WITH_3DES_EDE_CBC_SHA = PR_FALSE
#[Cipher_DH_DSS_EXPORT_WITH_DES40_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DH_DSS_EXPORT_WITH_DES40_CBC_SHA = PR_TRUE
#No_Cipher_DH_DSS_EXPORT_WITH_DES40_CBC_SHA = PR_FALSE
#[Cipher_DH_DSS_WITH_DES_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DH_DSS_WITH_DES_CBC_SHA = PR_TRUE
#No_Cipher_DH_DSS_WITH_DES_CBC_SHA = PR_FALSE
#[Cipher_DH_DSS_WITH_3DES_EDE_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DH_DSS_WITH_3DES_EDE_CBC_SHA = PR_TRUE
#No_Cipher_DH_DSS_WITH_3DES_EDE_CBC_SHA = PR_FALSE
#[Cipher_DH_RSA_EXPORT_WITH_DES40_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DH_RSA_EXPORT_WITH_DES40_CBC_SHA = PR_TRUE
#No_Cipher_DH_RSA_EXPORT_WITH_DES40_CBC_SHA = PR_FALSE
#[Cipher_DH_RSA_WITH_DES_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DH_RSA_WITH_DES_CBC_SHA = PR_TRUE
#No_Cipher_DH_RSA_WITH_DES_CBC_SHA = PR_FALSE
#[Cipher_DH_RSA_WITH_3DES_EDE_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DH_RSA_WITH_3DES_EDE_CBC_SHA = PR_TRUE
#No_Cipher_DH_RSA_WITH_3DES_EDE_CBC_SHA = PR_FALSE
#[Cipher_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA = PR_TRUE
#No_Cipher_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA = PR_FALSE
#[Cipher_DHE_DSS_WITH_DES_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DHE_DSS_WITH_DES_CBC_SHA = PR_TRUE
#No_Cipher_DHE_DSS_WITH_DES_CBC_SHA = PR_FALSE
#[Cipher_DHE_DSS_WITH_3DES_EDE_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DHE_DSS_WITH_3DES_EDE_CBC_SHA = PR_TRUE
#No_Cipher_DHE_DSS_WITH_3DES_EDE_CBC_SHA = PR_FALSE
#[Cipher_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA = PR_TRUE
#No_Cipher_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA = PR_FALSE
#[Cipher_DHE_RSA_WITH_DES_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DHE_RSA_WITH_DES_CBC_SHA = PR_TRUE
#No_Cipher_DHE_RSA_WITH_DES_CBC_SHA = PR_FALSE
#[Cipher_DHE_RSA_WITH_3DES_EDE_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DHE_RSA_WITH_3DES_EDE_CBC_SHA = PR_TRUE
#No_Cipher_DHE_RSA_WITH_3DES_EDE_CBC_SHA = PR_FALSE
#[Cipher_DH_ANON_EXPORT_WITH_RC4_40_MD5]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DH_ANON_EXPORT_WITH_RC4_40_MD5 = PR_TRUE
#No_Cipher_DH_ANON_EXPORT_WITH_RC4_40_MD5 = PR_FALSE
#[Cipher_DH_ANON_WITH_RC4_128_MD5]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DH_ANON_WITH_RC4_128_MD5 = PR_TRUE
#No_Cipher_DH_ANON_WITH_RC4_128_MD5 = PR_FALSE
###define SSL_DH_ANON_EXPORT_WITH_DES40_CBC_SHA 0x0019
#[Cipher_DH_ANON_WITH_DES_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DH_ANON_WITH_DES_CBC_SHA = PR_TRUE
#No_Cipher_DH_ANON_WITH_DES_CBC_SHA = PR_FALSE
#[Cipher_DH_ANON_WITH_3DES_EDE_CBC_SHA]
#IMPORTANCE = LOW
#TYPE = PRBool
#Cipher_DH_ANON_WITH_3DES_EDE_CBC_SHA = PR_TRUE
#No_Cipher_DH_ANON_WITH_3DES_EDE_CBC_SHA = PR_FALSE
#[Cipher_FORTEZZA_DMS_WITH_FORTEZZA_CBC_SHA]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_FORTEZZA_DMS_WITH_FORTEZZA_CBC_SHA = PR_TRUE
#No_Cipher_FORTEZZA_DMS_WITH_FORTEZZA_CBC_SHA = PR_FALSE
#[Cipher_FORTEZZA_DMS_WITH_RC4_128_SHA]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_FORTEZZA_DMS_WITH_RC4_128_SHA = PR_TRUE
#No_Cipher_FORTEZZA_DMS_WITH_RC4_128_SHA = PR_FALSE
#[Cipher_RSA_FIPS_WITH_3DES_EDE_CBC_SHA]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_RSA_FIPS_WITH_3DES_EDE_CBC_SHA = PR_TRUE
#No_Cipher_RSA_FIPS_WITH_3DES_EDE_CBC_SHA = PR_FALSE
#[Cipher_RSA_FIPS_WITH_DES_CBC_SHA]
#IMPORTANCE = HIGH
#TYPE = PRBool
#Cipher_RSA_FIPS_WITH_DES_CBC_SHA = PR_TRUE
#No_Cipher_RSA_FIPS_WITH_DES_CBC_SHA = PR_FALSE