X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=test%2Fsrc%2FX509Req.cpp;h=f1dc3fce320045e558828ebcefc02f12ed7e8fb1;hb=a477eeab986cf4307f74d1b4601cc46a7b0173c0;hp=1d230627c66c9d91e4f7bd02e063d7e0e647c640;hpb=4823112fb328b52b873b8aa693f33dc1c2c18fc8;p=cassiopeia.git diff --git a/test/src/X509Req.cpp b/test/src/X509Req.cpp index 1d23062..f1dc3fc 100644 --- a/test/src/X509Req.cpp +++ b/test/src/X509Req.cpp @@ -1,27 +1,35 @@ -#include - #include -#include "X509.h" +#include + #include "util.h" +#include "crypto/X509.h" + BOOST_AUTO_TEST_SUITE( TestX509Req ) BOOST_AUTO_TEST_CASE( CSR ) { // Testing a valid CSR - std::shared_ptr req( X509Req::parse( readFile( "testdata/test.csr" ) ) ); + std::shared_ptr req( X509Req::parseCSR( readFile( "testdata/test.csr" ) ) ); BOOST_REQUIRE( req ); BOOST_CHECK( req->verify() == 1 ); + BOOST_REQUIRE( ERR_peek_error() == 0 ); // Testing a CSR, where the signature content has been tampered with - req = std::shared_ptr( X509Req::parse( readFile( "testdata/test_false_sig.csr" ) ) ); + req = std::shared_ptr( X509Req::parseCSR( readFile( "testdata/test_false_sig.csr" ) ) ); BOOST_REQUIRE( req ); BOOST_CHECK( req->verify() == 0 ); + BOOST_REQUIRE( ERR_get_error() != 0 ); // RSA_padding_check_PKCS1_type_1:block type is not 01 + BOOST_REQUIRE( ERR_get_error() != 0 ); // RSA_EAY_PUBLIC_DECRYPT:padding check failed + BOOST_REQUIRE( ERR_get_error() != 0 ); // ASN1_item_verify:EVP lib + BOOST_REQUIRE( ERR_get_error() == 0 ); // Testing a CSR, where the signature OID is something strange - req = std::shared_ptr( X509Req::parse( readFile( "testdata/test_invalid_sig.csr" ) ) ); + req = std::shared_ptr( X509Req::parseCSR( readFile( "testdata/test_invalid_sig.csr" ) ) ); BOOST_REQUIRE( req ); BOOST_CHECK( req->verify() < 0 ); + BOOST_REQUIRE( ERR_get_error() != 0 ); // ASN1_item_verify:unknown signature algorithm + BOOST_REQUIRE( ERR_get_error() == 0 ); } BOOST_AUTO_TEST_CASE( SPKAC ) {