/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#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




