X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/7f2d1eef183dbebaaabe07a296d9a97e9cfd0f4a..6dc85f53d92b9763a1509a6472227c54bc70b01d:/apt-pkg/indexfile.cc?ds=sidebyside diff --git a/apt-pkg/indexfile.cc b/apt-pkg/indexfile.cc index 148ed5d98..934943205 100644 --- a/apt-pkg/indexfile.cc +++ b/apt-pkg/indexfile.cc @@ -137,6 +137,7 @@ std::string IndexTarget::Option(OptionKeys const EnumKey) const /*{{{*/ APT_CASE(ARCHITECTURE); APT_CASE(BASE_URI); APT_CASE(REPO_URI); + APT_CASE(IDENTIFIER); APT_CASE(TARGET_OF); APT_CASE(CREATED_BY); APT_CASE(FALLBACK_OF); @@ -146,8 +147,17 @@ std::string IndexTarget::Option(OptionKeys const EnumKey) const /*{{{*/ APT_CASE(SOURCESENTRY); APT_CASE(BY_HASH); APT_CASE(KEEPCOMPRESSEDAS); + APT_CASE(ALLOW_INSECURE); + APT_CASE(ALLOW_WEAK); + APT_CASE(ALLOW_DOWNGRADE_TO_INSECURE); #undef APT_CASE - case FILENAME: return _config->FindDir("Dir::State::lists") + URItoFileName(URI); + case FILENAME: + { + auto const M = Options.find("FILENAME"); + if (M == Options.end()) + return _config->FindDir("Dir::State::lists") + URItoFileName(URI); + return M->second; + } case EXISTING_FILENAME: std::string const filename = Option(FILENAME); std::vector const types = VectorizeString(Option(COMPRESSIONTYPES), ' '); @@ -169,7 +179,7 @@ std::string IndexTarget::Option(OptionKeys const EnumKey) const /*{{{*/ /*}}}*/ bool IndexTarget::OptionBool(OptionKeys const EnumKey) const /*{{{*/ { - return StringToBool(Option(EnumKey)); + return StringToBool(Option(EnumKey), false); } /*}}}*/ std::string IndexTarget::Format(std::string format) const /*{{{*/