From fc0e196e4fd302d681725c9e5549e34b93a91075 Mon Sep 17 00:00:00 2001 From: Timo Weingärtner Date: Thu, 22 Apr 2021 23:31:12 +0200 Subject: use std:: containers instead of C-style arrays --- ssh-agent-filter.C | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/ssh-agent-filter.C b/ssh-agent-filter.C index c658b62..cede337 100644 --- a/ssh-agent-filter.C +++ b/ssh-agent-filter.C @@ -108,17 +108,17 @@ string md5_hex (string const & s) { struct md5_ctx ctx; md5_init(&ctx); md5_update(&ctx, s.size(), reinterpret_cast(s.data())); - uint8_t bin[MD5_DIGEST_SIZE]; - md5_digest(&ctx, MD5_DIGEST_SIZE, bin); - char hex[BASE16_ENCODE_LENGTH(MD5_DIGEST_SIZE)]; - base16_encode_update(hex, MD5_DIGEST_SIZE, bin); - return {hex, sizeof(hex)}; + std::array bin; + md5_digest(&ctx, MD5_DIGEST_SIZE, bin.data()); + std::array hex; + base16_encode_update(hex.data(), MD5_DIGEST_SIZE, bin.data()); + return {begin(hex), end(hex)}; } string base64_encode (string const & s) { - char b64[BASE64_ENCODE_RAW_LENGTH(s.size())]; - base64_encode_raw(b64, s.size(), reinterpret_cast(s.data())); - return {b64, sizeof(b64)}; + std::vector b64(BASE64_ENCODE_RAW_LENGTH(s.size())); + base64_encode_raw(b64.data(), s.size(), reinterpret_cast(s.data())); + return {begin(b64), end(b64)}; } void cloexec (int fd) { @@ -315,9 +315,9 @@ bool confirm (string const & question) { throw runtime_error("fork()"); if (pid == 0) { // child - char const * args[3] = { sap, question.c_str(), nullptr }; + std::array const args{ sap, question.c_str(), nullptr }; // see execvp(3p) for cast rationale - execvp(sap, const_cast(args)); + execvp(sap, const_cast(args.data())); throw system_error(errno, system_category(), "exec"); } else { // parent -- cgit v1.2.3