]> wagner.pp.ru Git - openssl-gost/engine.git/blobdiff - tcl_tests/ossltest.tcl
MSVC: Fix unresolved externals (cipher_gost_grasshopper_ctracpkm)
[openssl-gost/engine.git] / tcl_tests / ossltest.tcl
index c02d566679a9d8b2f166c9ffffe42fdde92515a8..792c0718e35c409840b73b8d71bdcc8e06822423 100644 (file)
@@ -61,6 +61,16 @@ package require test
 set test::suffix ""
 package require base64
 
+#
+# set  up test::src variable
+#
+
+if {[info exists env(TESTSRC)]} {
+       set ::test::src [file normalize $env(TESTSRC)]
+} else {
+       set ::test::src [pwd]
+}      
+
 #
 # set  up test::dir variable
 #
@@ -543,7 +553,16 @@ proc param_pubkey {alg} {
 }
 
 
-proc param_hash_long_name {hash_alg} {
+proc param_hash_long_name {hash_alg {pk_alg {}}} {
+    # R 1323565.1.023-2018 (5.2.1.2) not recommends or forbids encoding
+    # hash oid into TC26 (2012) parameters in AlgorithmIdentifier, so
+    # this is removed.
+    # Note:
+    # Commit d47b346 reverts this behavior for 512-bit 0,A,B parameters
+    switch -glob $pk_alg {
+       gost2012_256:TC* {return}
+       gost2012_512:C {return}
+    }
     switch -glob $hash_alg {
         *hash_94 {return "id-GostR3411-94-CryptoProParamSet"}
         hash_12_256 {return "GOST R 34.11-2012 with 256 bit hash"}
@@ -563,23 +582,27 @@ proc pubkey_long_name {alg} {
                gost2001:C {return "id-GostR3410-2001-CryptoPro-C-ParamSet"}
                gost2001:XA {return "id-GostR3410-2001-CryptoPro-XchA-ParamSet"}
                gost2001:XB {return "id-GostR3410-2001-CryptoPro-XchB-ParamSet"}
-               #gost2012_256:0 {return param_pubkey01_cptest}
+               gost2012_256:0 {return "id-GostR3410-2001-TestParamSet"}
                gost2012_256:A {return "id-GostR3410-2001-CryptoPro-A-ParamSet"}
                gost2012_256:B {return "id-GostR3410-2001-CryptoPro-B-ParamSet"}
                gost2012_256:C {return "id-GostR3410-2001-CryptoPro-C-ParamSet"}
                gost2012_256:XA {return "id-GostR3410-2001-CryptoPro-XchA-ParamSet"}
                gost2012_256:XB {return "id-GostR3410-2001-CryptoPro-XchB-ParamSet"}
+               gost2012_256:TCA {return "GOST R 34.10-2012 (256 bit) ParamSet A"}
+               gost2012_256:TCB {return "GOST R 34.10-2012 (256 bit) ParamSet B"}
+               gost2012_256:TCC {return "GOST R 34.10-2012 (256 bit) ParamSet C"}
+               gost2012_256:TCD {return "GOST R 34.10-2012 (256 bit) ParamSet D"}
                #gost2012_512:0 {return param_pubkey12_512_0}
                gost2012_512:A {return  "GOST R 34.10-2012 (512 bit) ParamSet A"}
                gost2012_512:B {return  "GOST R 34.10-2012 (512 bit) ParamSet B"}
+               gost2012_512:C {return  "GOST R 34.10-2012 (512 bit) ParamSet C"}
        }
 }
 
-
-
 proc mkObjList {args} {
        set out ""
        foreach name $args {
+               if {$name eq {}} continue
                append out " OBJECT            :$name\n"
        }
        return $out