From 0e69c1fa5b8a4a1237933fa47113ea839a66f8a0 Mon Sep 17 00:00:00 2001 From: Julian Andres Klode Date: Sat, 23 Nov 2024 17:45:11 +0100 Subject: Do not implode key file name vector for calling gpgv Converting it to a comma-separated string and back loses precision. --- apt-pkg/contrib/gpgv.cc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'apt-pkg/contrib/gpgv.cc') diff --git a/apt-pkg/contrib/gpgv.cc b/apt-pkg/contrib/gpgv.cc index aab7851a1..6def6d625 100644 --- a/apt-pkg/contrib/gpgv.cc +++ b/apt-pkg/contrib/gpgv.cc @@ -140,6 +140,13 @@ static void APT_PRINTF(5) apt_msg(std::string const &tag, std::ostream &outterm, } void ExecGPGV(std::string const &File, std::string const &FileGPG, int const &statusfd, int fd[2], std::string const &key) +{ + auto const keyFiles = VectorizeString(key, ','); + ExecGPGV(File, FileGPG, statusfd, fd, keyFiles); +} + +void ExecGPGV(std::string const &File, std::string const &FileGPG, + int const &statusfd, int fd[2], std::vector const &KeyFiles) { #define EINTERNAL 111 std::string const aptkey = _config->Find("Dir::Bin::apt-key", CMAKE_INSTALL_FULL_BINDIR "/apt-key"); @@ -160,8 +167,7 @@ void ExecGPGV(std::string const &File, std::string const &FileGPG, Args.push_back(aptkey.c_str()); Args.push_back("--quiet"); Args.push_back("--readonly"); - auto const keysFileFpr = VectorizeString(key, ','); - for (auto const &k: keysFileFpr) + for (auto const &k : KeyFiles) { if (unlikely(k.empty())) continue; -- cgit v1.2.3-70-g09d2