Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions tool-openssl/dgst.cc
Original file line number Diff line number Diff line change
Expand Up @@ -511,3 +511,6 @@ bool dgstTool(const args_list_t &args) {
bool md5Tool(const args_list_t &args) {
return dgstToolInternal(args, EVP_md5());
}
bool sha1Tool(const args_list_t &args) {
return dgstToolInternal(args, EVP_sha1());
}
57 changes: 56 additions & 1 deletion tool-openssl/dgst_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -246,6 +246,47 @@ TEST_F(DgstComparisonTest, SignAndVerify) {
EXPECT_EQ(awslc_hash, openssl_hash);
}

class MD5ComparisonTest : public DgstComparisonTest {};
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice. thanks for adding coverage here :)


TEST_F(MD5ComparisonTest, Digest) {
// default digest
std::string awslc_command = std::string(awslc_executable_path) +
" md5 -out " + out_path_awslc + " " + in_path;

std::string openssl_command = std::string(openssl_executable_path) +
" md5 -out " + out_path_openssl + " " + in_path;

RunCommandsAndCompareOutput(awslc_command, openssl_command, out_path_awslc,
out_path_openssl, awslc_output_str,
openssl_output_str);

std::string awslc_hash = GetHash(awslc_output_str);
std::string openssl_hash = GetHash(openssl_output_str);

EXPECT_EQ(awslc_hash, openssl_hash);
}

class SHA1ComparisonTest : public DgstComparisonTest {};

TEST_F(SHA1ComparisonTest, Digest) {
// default digest
std::string awslc_command = std::string(awslc_executable_path) +
" sha1 -out " + out_path_awslc + " " + in_path;

std::string openssl_command = std::string(openssl_executable_path) +
" sha1 -out " + out_path_openssl + " " +
in_path;

RunCommandsAndCompareOutput(awslc_command, openssl_command, out_path_awslc,
out_path_openssl, awslc_output_str,
openssl_output_str);

std::string awslc_hash = GetHash(awslc_output_str);
std::string openssl_hash = GetHash(openssl_output_str);

EXPECT_EQ(awslc_hash, openssl_hash);
}

class DgstTest : public ::testing::Test {
protected:
void SetUp() override {
Expand Down Expand Up @@ -330,7 +371,7 @@ TEST_F(DgstTest, DigestDefault) {
EXPECT_TRUE(dgstTool(args));
}

TEST_F(DgstTest, DigestSHA1) {
TEST_F(DgstTest, CustomDigest) {
args_list_t args = {"-sha1", in_path};
EXPECT_TRUE(dgstTool(args));
}
Expand Down Expand Up @@ -404,3 +445,17 @@ TEST_F(DgstTest, PassinBasicIntegrationTest) {
bool result = dgstTool(args);
ASSERT_TRUE(result);
}

class MD5Test : public DgstTest {};

TEST_F(MD5Test, Sign) {
args_list_t args = {in_path};
EXPECT_TRUE(md5Tool(args));
}

class SHA1Test : public DgstTest {};

TEST_F(SHA1Test, Sign) {
args_list_t args = {in_path};
EXPECT_TRUE(sha1Tool(args));
}
1 change: 1 addition & 0 deletions tool-openssl/internal.h
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@ bool pkeyutlTool(const args_list_t &args);
bool RehashTool(const args_list_t &args);
bool reqTool(const args_list_t &args);
bool rsaTool(const args_list_t &args);
bool sha1Tool(const args_list_t &args);
bool SClientTool(const args_list_t &args);
bool VerifyTool(const args_list_t &args);
bool VersionTool(const args_list_t &args);
Expand Down
3 changes: 2 additions & 1 deletion tool-openssl/tool.cc
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

#include "./internal.h"

static const std::array<Tool, 17> kTools = {{
static const std::array<Tool, 18> kTools = {{
{"crl", CRLTool},
{"dgst", dgstTool},
{"dhparam", dhparamTool},
Expand All @@ -29,6 +29,7 @@ static const std::array<Tool, 17> kTools = {{
{"rehash", RehashTool},
{"req", reqTool},
{"rsa", rsaTool},
{"sha1", sha1Tool},
{"s_client", SClientTool},
{"verify", VerifyTool},
{"version", VersionTool},
Expand Down
Loading