+my @smime_cms_cades_tests = (
+
+ [ "signed content DER format, RSA key, CAdES-BES compatible",
+ [ "{cmd1}", "-sign", "-cades", "-in", $smcont, "-outform", "DER",
+ "-nodetach",
+ "-certfile", catfile($smdir, "smroot.pem"),
+ "-signer", catfile($smdir, "smrsa1.pem"), "-out", "{output}.cms" ],
+ [ "{cmd2}", "-verify", "-cades", "-in", "{output}.cms", "-inform", "DER",
+ "-CAfile", catfile($smdir, "smroot.pem"), "-out", "{output}.txt" ],
+ \&final_compare
+ ],
+
+ [ "signed content DER format, RSA key, SHA256 md, CAdES-BES compatible",
+ [ "{cmd1}", "-sign", "-cades", "-md", "sha256", "-in", $smcont, "-outform",
+ "DER", "-nodetach", "-certfile", catfile($smdir, "smroot.pem"),
+ "-signer", catfile($smdir, "smrsa1.pem"), "-out", "{output}.cms" ],
+ [ "{cmd2}", "-verify", "-cades", "-in", "{output}.cms", "-inform", "DER",
+ "-CAfile", catfile($smdir, "smroot.pem"), "-out", "{output}.txt" ],
+ \&final_compare
+ ],
+
+ [ "signed content DER format, RSA key, SHA512 md, CAdES-BES compatible",
+ [ "{cmd1}", "-sign", "-cades", "-md", "sha512", "-in", $smcont, "-outform",
+ "DER", "-nodetach", "-certfile", catfile($smdir, "smroot.pem"),
+ "-signer", catfile($smdir, "smrsa1.pem"), "-out", "{output}.cms" ],
+ [ "{cmd2}", "-verify", "-cades", "-in", "{output}.cms", "-inform", "DER",
+ "-CAfile", catfile($smdir, "smroot.pem"), "-out", "{output}.txt" ],
+ \&final_compare
+ ],
+
+ [ "signed content DER format, RSA key, SHA256 md, CAdES-BES compatible",
+ [ "{cmd1}", "-sign", "-cades", "-binary", "-nodetach", "-nosmimecap", "-md", "sha256",
+ "-in", $smcont, "-outform", "DER",
+ "-certfile", catfile($smdir, "smroot.pem"),
+ "-signer", catfile($smdir, "smrsa1.pem"),
+ "-outform", "DER", "-out", "{output}.cms" ],
+ [ "{cmd2}", "-verify", "-cades", "-in", "{output}.cms", "-inform", "DER",
+ "-CAfile", catfile($smdir, "smroot.pem"), "-out", "{output}.txt" ],
+ \&final_compare
+ ],
+
+ [ "resigned content DER format, RSA key, SHA256 md, CAdES-BES compatible",
+ [ "{cmd1}", "-sign", "-cades", "-binary", "-nodetach", "-nosmimecap", "-md", "sha256",
+ "-in", $smcont, "-outform", "DER",
+ "-certfile", catfile($smdir, "smroot.pem"),
+ "-signer", catfile($smdir, "smrsa1.pem"),
+ "-outform", "DER", "-out", "{output}.cms" ],
+ [ "{cmd1}", "-resign", "-cades", "-binary", "-nodetach", "-nosmimecap", "-md", "sha256",
+ "-inform", "DER", "-in", "{output}.cms",
+ "-certfile", catfile($smdir, "smroot.pem"),
+ "-signer", catfile($smdir, "smrsa2.pem"),
+ "-outform", "DER", "-out", "{output}2.cms" ],
+
+ [ "{cmd2}", "-verify", "-cades", "-in", "{output}2.cms", "-inform", "DER",
+ "-CAfile", catfile($smdir, "smroot.pem"), "-out", "{output}.txt" ],
+ \&final_compare
+ ],
+);
+
+my @smime_cms_cades_ko_tests = (
+ [ "signed content DER format, RSA key, but verified as CAdES-BES compatible",
+ [ "-sign", "-in", $smcont, "-outform", "DER", "-nodetach",
+ "-certfile", catfile($smdir, "smroot.pem"),
+ "-signer", catfile($smdir, "smrsa1.pem"), "-out", "{output}.cms" ],
+ [ "-verify", "-cades", "-in", "{output}.cms", "-inform", "DER",
+ "-CAfile", catfile($smdir, "smroot.pem"), "-out", "{output}.txt" ],
+ \&final_compare
+ ]
+);
+
+# cades options test - check that some combinations are rejected
+my @smime_cms_cades_invalid_option_tests = (
+ [
+ [ "-cades", "-noattr" ],
+ ],[
+ [ "-verify", "-cades", "-noattr" ],
+ ],[
+ [ "-verify", "-cades", "-noverify" ],
+ ],
+);
+