diff options
128 files changed, 4665 insertions, 4525 deletions
diff --git a/CMake/FindGcrypt.cmake b/CMake/FindGcrypt.cmake new file mode 100644 index 000000000..56bfc9fef --- /dev/null +++ b/CMake/FindGcrypt.cmake @@ -0,0 +1,25 @@ +# - Try to find GCRYPT +# Once done, this will define +# +# GCRYPT_FOUND - system has GCRYPT +# GCRYPT_INCLUDE_DIRS - the GCRYPT include directories +# GCRYPT_LIBRARIES - the GCRYPT library +find_package(PkgConfig) + +pkg_check_modules(GCRYPT_PKGCONF libgcrypt) + +find_path(GCRYPT_INCLUDE_DIRS + NAMES gcrypt.h + PATHS ${GCRYPT_PKGCONF_INCLUDE_DIRS} +) + + +find_library(GCRYPT_LIBRARIES + NAMES gcrypt + PATHS ${GCRYPT_PKGCONF_LIBRARY_DIRS} +) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(GCRYPT DEFAULT_MSG GCRYPT_INCLUDE_DIRS GCRYPT_LIBRARIES) + +mark_as_advanced(GCRYPT_INCLUDE_DIRS GCRYPT_LIBRARIES) diff --git a/CMakeLists.txt b/CMakeLists.txt index ab08b8f4e..7ad97c40b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -134,6 +134,8 @@ if (SECCOMP_FOUND) set(HAVE_SECCOMP 1) endif() +find_package(Gcrypt REQUIRED) + # Mount()ing and stat()ing and friends check_symbol_exists(statfs sys/vfs.h HAVE_VFS_H) check_include_files(sys/params.h HAVE_PARAMS_H) @@ -202,7 +204,7 @@ check_cxx_target(HAVE_FMV_SSE42_AND_CRC32DI "sse4.2" "__builtin_ia32_crc32di(0, # Configure some variables like package, version and architecture. set(PACKAGE ${PROJECT_NAME}) set(PACKAGE_MAIL "APT Development Team <deity@lists.debian.org>") -set(PACKAGE_VERSION "1.9.5") +set(PACKAGE_VERSION "1.9.10") string(REGEX MATCH "^[0-9.]+" PROJECT_VERSION ${PACKAGE_VERSION}) if (NOT DEFINED DPKG_DATADIR) diff --git a/apt-pkg/CMakeLists.txt b/apt-pkg/CMakeLists.txt index db23a30f7..e9a629ccf 100644 --- a/apt-pkg/CMakeLists.txt +++ b/apt-pkg/CMakeLists.txt @@ -48,6 +48,7 @@ target_include_directories(apt-pkg $<$<BOOL:${UDEV_FOUND}>:${UDEV_INCLUDE_DIRS}> $<$<BOOL:${SYSTEMD_FOUND}>:${SYSTEMD_INCLUDE_DIRS}> ${ICONV_INCLUDE_DIRS} + $<$<BOOL:${GCRYPT_FOUND}>:${GCRYPT_INCLUDE_DIRS}> ) target_link_libraries(apt-pkg @@ -61,6 +62,7 @@ target_link_libraries(apt-pkg $<$<BOOL:${UDEV_FOUND}>:${UDEV_LIBRARIES}> $<$<BOOL:${SYSTEMD_FOUND}>:${SYSTEMD_LIBRARIES}> ${ICONV_LIBRARIES} + $<$<BOOL:${GCRYPT_FOUND}>:${GCRYPT_LIBRARIES}> ) set_target_properties(apt-pkg PROPERTIES VERSION ${MAJOR}.${MINOR}) set_target_properties(apt-pkg PROPERTIES SOVERSION ${MAJOR}) diff --git a/apt-pkg/acquire-item.cc b/apt-pkg/acquire-item.cc index 92931d1d7..bbbda3bd3 100644 --- a/apt-pkg/acquire-item.cc +++ b/apt-pkg/acquire-item.cc @@ -25,7 +25,6 @@ #include <apt-pkg/hashes.h> #include <apt-pkg/indexfile.h> #include <apt-pkg/metaindex.h> -#include <apt-pkg/netrc.h> #include <apt-pkg/pkgcache.h> #include <apt-pkg/pkgrecords.h> #include <apt-pkg/sourcelist.h> @@ -3387,7 +3386,6 @@ pkgAcqArchive::pkgAcqArchive(pkgAcquire *const Owner, pkgSourceList *const Sourc Trusted = false; StoreFilename.clear(); - std::vector<std::unique_ptr<FileFd>> authconfs; for (auto Vf = Version.FileList(); Vf.end() == false; ++Vf) { auto const PkgF = Vf.File(); @@ -3395,8 +3393,6 @@ pkgAcqArchive::pkgAcqArchive(pkgAcquire *const Owner, pkgSourceList *const Sourc continue; if (PkgF.Flagged(pkgCache::Flag::NotSource)) continue; - if (PkgF.Flagged(pkgCache::Flag::PackagesRequireAuthorization) && !IsAuthorized(PkgF, authconfs)) - continue; pkgIndexFile *Index; if (Sources->FindIndex(PkgF, Index) == false) continue; diff --git a/apt-pkg/acquire-method.cc b/apt-pkg/acquire-method.cc index f2a61a144..9656caf14 100644 --- a/apt-pkg/acquire-method.cc +++ b/apt-pkg/acquire-method.cc @@ -21,9 +21,6 @@ #include <apt-pkg/error.h> #include <apt-pkg/fileutl.h> #include <apt-pkg/hashes.h> -#include <apt-pkg/md5.h> -#include <apt-pkg/sha1.h> -#include <apt-pkg/sha2.h> #include <apt-pkg/strutl.h> #include <algorithm> diff --git a/apt-pkg/cachefilter-patterns.cc b/apt-pkg/cachefilter-patterns.cc index a9f76ff1d..5a58a9767 100644 --- a/apt-pkg/cachefilter-patterns.cc +++ b/apt-pkg/cachefilter-patterns.cc @@ -17,6 +17,32 @@ namespace APT namespace Internal { +static const constexpr struct +{ + APT::StringView shortName; + APT::StringView longName; + bool takesArgument; +} shortPatterns[] = { + {"r"_sv, "?architecture"_sv, true}, + {"A"_sv, "?archive"_sv, true}, + {"M"_sv, "?automatic"_sv, false}, + {"b"_sv, "?broken"_sv, false}, + {"c"_sv, "?config-files"_sv, false}, + {"E"_sv, "?essential"_sv, false}, + {"F"_sv, "?false"_sv, false}, + {"g"_sv, "?garbage"_sv, false}, + {"i"_sv, "?installed"_sv, false}, + {"n"_sv, "?name"_sv, true}, + {"o"_sv, "?obsolete"_sv, false}, + {"O"_sv, "?origin"_sv, true}, + {"s"_sv, "?section"_sv, true}, + {"e"_sv, "?source-package"_sv, true}, + {"T"_sv, "?true"_sv, false}, + {"U"_sv, "?upgradable"_sv, false}, + {"V"_sv, "?version"_sv, true}, + {"v"_sv, "?virtual"_sv, false}, +}; + template <class... Args> std::string rstrprintf(Args... args) { @@ -32,41 +58,197 @@ std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parseTop() auto node = parse(); skipSpace(); + if (node == nullptr) + throw Error{Node{0, sentence.size()}, "Expected pattern"}; + if (node->end != sentence.size()) + throw Error{Node{node->end, sentence.size()}, "Expected end of file"}; + + return node; +} + +// Parse any pattern +std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parse() +{ + return parseOr(); +} + +std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parseOr() +{ + auto start = state.offset; + std::vector<std::unique_ptr<PatternTreeParser::Node>> nodes; + + auto firstNode = parseAnd(); + + if (firstNode == nullptr) + return nullptr; + + nodes.push_back(std::move(firstNode)); + for (skipSpace(); sentence[state.offset] == '|'; skipSpace()) + { + state.offset++; + skipSpace(); + auto node = parseAnd(); + + if (node == nullptr) + throw Error{Node{state.offset, sentence.size()}, "Expected pattern after |"}; + + nodes.push_back(std::move(node)); + } + + if (nodes.size() == 0) + return nullptr; + if (nodes.size() == 1) + return std::move(nodes[0]); + + auto node = std::make_unique<PatternNode>(); + node->start = start; + node->end = nodes[nodes.size() - 1]->end; + node->term = "?or"; + node->arguments = std::move(nodes); + node->haveArgumentList = true; + + return node; +} + +std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parseAnd() +{ + auto start = state.offset; + std::vector<std::unique_ptr<PatternTreeParser::Node>> nodes; + + for (skipSpace(); state.offset < sentence.size(); skipSpace()) { - Node node2; + auto node = parseUnary(); + + if (node == nullptr) + break; - node2.start = node->end; - node2.end = sentence.size(); - throw Error{node2, "Expected end of file"}; + nodes.push_back(std::move(node)); } + if (nodes.size() == 0) + return nullptr; + if (nodes.size() == 1) + return std::move(nodes[0]); + + auto node = std::make_unique<PatternNode>(); + node->start = start; + node->end = nodes[nodes.size() - 1]->end; + node->term = "?and"; + node->arguments = std::move(nodes); + node->haveArgumentList = true; + return node; } -// Parse any pattern -std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parse() +std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parseUnary() +{ + + if (sentence[state.offset] != '!') + return parsePrimary(); + + auto start = ++state.offset; + auto primary = parsePrimary(); + + if (primary == nullptr) + throw Error{Node{start, sentence.size()}, "Expected pattern"}; + + auto node = std::make_unique<PatternNode>(); + node->start = start; + node->end = primary->end; + node->term = "?not"; + node->arguments.push_back(std::move(primary)); + node->haveArgumentList = true; + return node; +} + +std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parsePrimary() { std::unique_ptr<Node> node; + if ((node = parseShortPattern()) != nullptr) + return node; if ((node = parsePattern()) != nullptr) return node; + if ((node = parseGroup()) != nullptr) + return node; + + return nullptr; +} + +std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parseGroup() +{ + if (sentence[state.offset] != '(') + return nullptr; + + auto start = state.offset++; + + skipSpace(); + auto node = parse(); + if (node == nullptr) + throw Error{Node{state.offset, sentence.size()}, + "Expected pattern after '('"}; + skipSpace(); + + if (sentence[state.offset] != ')') + throw Error{Node{state.offset, sentence.size()}, + "Expected closing parenthesis"}; + + auto end = ++state.offset; + node->start = start; + node->end = end; + return node; +} + +std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parseArgument(bool shrt) +{ + std::unique_ptr<Node> node; if ((node = parseQuotedWord()) != nullptr) return node; - if ((node = parseWord()) != nullptr) + if ((node = parseWord(shrt)) != nullptr) + return node; + if ((node = parse()) != nullptr) + return node; + + throw Error{Node{state.offset, sentence.size()}, + "Expected pattern, quoted word, or word"}; +} + +// Parse a short pattern +std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parseShortPattern() +{ + if (sentence[state.offset] != '~') + return nullptr; + + for (auto &sp : shortPatterns) + { + if (sentence.substr(state.offset + 1, sp.shortName.size()) != sp.shortName) + continue; + + auto node = std::make_unique<PatternNode>(); + node->end = node->start = state.offset; + node->term = sp.longName; + + state.offset += sp.shortName.size() + 1; + if (sp.takesArgument) + { + node->arguments.push_back(parseArgument(true)); + node->haveArgumentList = true; + } + node->end = state.offset; + return node; + } - Node eNode; - eNode.end = eNode.start = state.offset; - throw Error{eNode, "Expected pattern, quoted word, or word"}; + throw Error{Node{state.offset, sentence.size()}, "Unknown short pattern"}; } // Parse a list pattern (or function call pattern) std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parsePattern() { - static const APT::StringView CHARS("0123456789" - "abcdefghijklmnopqrstuvwxyz" - "ABCDEFGHIJKLMNOPQRSTUVWXYZ" - "-"); + static constexpr auto CHARS = ("0123456789" + "abcdefghijklmnopqrstuvwxyz" + "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + "-"_sv); if (sentence[state.offset] != '?') return nullptr; @@ -81,6 +263,9 @@ std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parsePattern() node->term = sentence.substr(node->start, state.offset - node->start); + if (node->term.size() <= 1) + throw Error{*node, "Pattern must have a term/name"}; + node->end = skipSpace(); // We don't have any arguments, return node; if (sentence[state.offset] != '(') @@ -97,7 +282,7 @@ std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parsePattern() return node; } - node->arguments.push_back(parse()); + node->arguments.push_back(parseArgument(false)); skipSpace(); while (sentence[state.offset] == ',') { @@ -106,7 +291,7 @@ std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parsePattern() // This was a trailing comma - allow it and break the loop if (sentence[state.offset] == ')') break; - node->arguments.push_back(parse()); + node->arguments.push_back(parseArgument(false)); skipSpace(); } @@ -146,10 +331,13 @@ std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parseQuotedWord() } // Parse a bare word atom -std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parseWord() +std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parseWord(bool shrt) { - static const APT::StringView DISALLOWED_START("?~,()\0", 6); - static const APT::StringView DISALLOWED(",()\0", 4); + static const constexpr auto DISALLOWED_START = "!?~|,() \0"_sv; + static const constexpr auto DISALLOWED_LONG = "|,()\0"_sv; + static const constexpr auto DISALLOWED_SHRT = "|,() ?\0"_sv; + const auto DISALLOWED = shrt ? DISALLOWED_SHRT : DISALLOWED_LONG; + if (DISALLOWED_START.find(sentence[state.offset]) != APT::StringView::npos) return nullptr; @@ -167,20 +355,21 @@ std::unique_ptr<PatternTreeParser::Node> PatternTreeParser::parseWord() // Rendering of the tree in JSON for debugging std::ostream &PatternTreeParser::PatternNode::render(std::ostream &os) { - os << "{" - << "\"term\": \"" << term.to_string() << "\",\n" - << "\"arguments\": [\n"; - for (auto &node : arguments) - node->render(os) << "," << std::endl; - os << "null]\n"; - os << "}\n"; + + os << term.to_string(); + if (haveArgumentList) + { + os << "("; + for (auto &node : arguments) + node->render(os) << ","; + os << ")"; + } return os; } std::ostream &PatternTreeParser::WordNode::render(std::ostream &os) { - os << '"' << word.to_string() << '"'; - return os; + return quoted ? os << '"' << word.to_string() << '"' : os << word.to_string(); } std::nullptr_t PatternTreeParser::Node::error(std::string message) diff --git a/apt-pkg/cachefilter-patterns.h b/apt-pkg/cachefilter-patterns.h index bd8ce7e7e..4eeb68594 100644 --- a/apt-pkg/cachefilter-patterns.h +++ b/apt-pkg/cachefilter-patterns.h @@ -39,6 +39,8 @@ struct PatternTreeParser size_t start = 0; size_t end = 0; + explicit Node(size_t start = 0, size_t end = 0) : start(start), end(end) {} + virtual std::ostream &render(std::ostream &os) { return os; }; std::nullptr_t error(std::string message); }; @@ -71,7 +73,7 @@ struct PatternTreeParser struct State { - off_t offset = 0; + size_t offset = 0; }; APT::StringView sentence; @@ -90,11 +92,18 @@ struct PatternTreeParser /// There may not be anything before or after the pattern, except for /// whitespace. std::unique_ptr<Node> parseTop(); + std::unique_ptr<Node> parse(); // public for test cases only private: - std::unique_ptr<Node> parse(); + std::unique_ptr<Node> parseOr(); + std::unique_ptr<Node> parseAnd(); + std::unique_ptr<Node> parseUnary(); + std::unique_ptr<Node> parsePrimary(); + std::unique_ptr<Node> parseGroup(); std::unique_ptr<Node> parsePattern(); - std::unique_ptr<Node> parseWord(); + std::unique_ptr<Node> parseShortPattern(); + std::unique_ptr<Node> parseArgument(bool shrt); + std::unique_ptr<Node> parseWord(bool shrt); std::unique_ptr<Node> parseQuotedWord(); }; diff --git a/apt-pkg/cacheiterators.h b/apt-pkg/cacheiterators.h index 5c3ad9bbb..ff2b65cdf 100644 --- a/apt-pkg/cacheiterators.h +++ b/apt-pkg/cacheiterators.h @@ -116,6 +116,7 @@ class pkgCache::GrpIterator: public Iterator<Group, GrpIterator> { inline const char *Name() const {return S->Name == 0?0:Owner->StrP + S->Name;} inline PkgIterator PackageList() const; + inline VerIterator VersionsInSource() const; PkgIterator FindPkg(APT::StringView Arch = APT::StringView("any", 3)) const; /** \brief find the package with the "best" architecture @@ -193,6 +194,13 @@ class pkgCache::VerIterator : public Iterator<Version, VerIterator> { inline VerIterator& operator++() {if (S != Owner->VerP) S = Owner->VerP + S->NextVer; return *this;} inline VerIterator operator++(int) { VerIterator const tmp(*this); operator++(); return tmp; } + inline VerIterator NextInSource() + { + if (S != Owner->VerP) + S = Owner->VerP + S->NextInSource; + return *this; + } + // Comparison int CompareVer(const VerIterator &B) const; /** \brief compares two version and returns if they are similar @@ -494,6 +502,10 @@ class pkgCache::DescFileIterator : public Iterator<DescFile, DescFileIterator> { // Inlined Begin functions can't be in the class because of order problems /*{{{*/ inline pkgCache::PkgIterator pkgCache::GrpIterator::PackageList() const {return PkgIterator(*Owner,Owner->PkgP + S->FirstPackage);} + inline pkgCache::VerIterator pkgCache::GrpIterator::VersionsInSource() const + { + return VerIterator(*Owner, Owner->VerP + S->VersionsInSource); + } inline pkgCache::VerIterator pkgCache::PkgIterator::VersionList() const {return VerIterator(*Owner,Owner->VerP + S->VersionList);} inline pkgCache::VerIterator pkgCache::PkgIterator::CurrentVer() const diff --git a/apt-pkg/cacheset.cc b/apt-pkg/cacheset.cc index dd55edb4e..ae1d5ee3e 100644 --- a/apt-pkg/cacheset.cc +++ b/apt-pkg/cacheset.cc @@ -125,8 +125,16 @@ bool CacheSetHelper::PackageFromTask(PackageContainerInterface * const pci, pkgC // PackageFromRegEx - Return all packages in the cache matching a pattern /*{{{*/ bool CacheSetHelper::PackageFromRegEx(PackageContainerInterface * const pci, pkgCacheFile &Cache, std::string pattern) { static const char * const isregex = ".?+*|[^$"; - if (pattern.find_first_of(isregex) == std::string::npos) - return false; + + if (_config->FindB("APT::Cmd::Pattern-Only", false)) + { + // Only allow explicit regexp pattern. + if (pattern.size() == 0 || (pattern[0] != '^' && pattern[pattern.size() - 1] != '$')) + return false; + } else { + if (pattern.find_first_of(isregex) == std::string::npos) + return false; + } bool const wasEmpty = pci->empty(); if (wasEmpty == true) @@ -181,6 +189,8 @@ bool CacheSetHelper::PackageFromFnmatch(PackageContainerInterface * const pci, pkgCacheFile &Cache, std::string pattern) { static const char * const isfnmatch = ".?*[]!"; + if (_config->FindB("APT::Cmd::Pattern-Only", false)) + return false; if (pattern.find_first_of(isfnmatch) == std::string::npos) return false; @@ -285,7 +295,7 @@ bool CacheSetHelper::PackageFromPackageName(PackageContainerInterface * const pc bool CacheSetHelper::PackageFromPattern(PackageContainerInterface *const pci, pkgCacheFile &Cache, std::string const &pattern) { - if (pattern.size() < 1 || pattern[0] != '?') + if (pattern.size() < 1 || (pattern[0] != '?' && pattern[0] != '~')) return false; auto compiledPattern = APT::CacheFilter::ParsePattern(pattern, &Cache); diff --git a/apt-pkg/contrib/cdromutl.cc b/apt-pkg/contrib/cdromutl.cc index 9db3980da..c0fe869d2 100644 --- a/apt-pkg/contrib/cdromutl.cc +++ b/apt-pkg/contrib/cdromutl.cc @@ -15,7 +15,7 @@ #include <apt-pkg/configuration.h> #include <apt-pkg/error.h> #include <apt-pkg/fileutl.h> -#include <apt-pkg/md5.h> +#include <apt-pkg/hashes.h> #include <apt-pkg/strutl.h> #include <iostream> @@ -181,7 +181,7 @@ bool MountCdrom(string Path, string DeviceName) from effecting the outcome. */ bool IdentCdrom(string CD,string &Res,unsigned int Version) { - MD5Summation Hash; + Hashes Hash(Hashes::MD5SUM); bool writable_media = false; int dirfd = open(CD.c_str(), O_RDONLY | O_DIRECTORY | O_CLOEXEC); @@ -254,7 +254,7 @@ bool IdentCdrom(string CD,string &Res,unsigned int Version) strprintf(S, "-%u.debug", Version); closedir(D); - Res = Hash.Result().Value().append(std::move(S)); + Res = Hash.GetHashString(Hashes::MD5SUM).HashValue().append(std::move(S)); return true; } /*}}}*/ diff --git a/apt-pkg/contrib/crc-16.cc b/apt-pkg/contrib/crc-16.cc deleted file mode 100644 index 2e396ab78..000000000 --- a/apt-pkg/contrib/crc-16.cc +++ /dev/null @@ -1,77 +0,0 @@ -// -*- mode: cpp; mode: fold -*- -// Description /*{{{*/ -/* ###################################################################### - - CRC16 - Compute a 16bit crc very quickly - - This was ripped out of the linux 2.2 kernel source (irda/crc.c) and - is credited to ppp.c by Michael Callahan <callahan@maths.ox.ac.uk> and - Al Longyear <longyear@netcom.com> - - Modified by Jason Gunthorpe <jgg@debian.org> to fit the local coding - style, this code is believed to be in the Public Domain. - - ##################################################################### */ - /*}}}*/ -// Include Files /*{{{*/ -#include <config.h> - -#include <apt-pkg/crc-16.h> - /*}}}*/ - -/* - * This mysterious table is just the CRC of each possible byte. It can be - * computed using the standard bit-at-a-time methods. The polynomial can - * be seen in entry 128, 0x8408. This corresponds to x^0 + x^5 + x^12. - * Add the implicit x^16, and you have the standard CRC-CCITT. - */ -static unsigned short const crc16_table[256] = -{ - 0x0000, 0x1189, 0x2312, 0x329b, 0x4624, 0x57ad, 0x6536, 0x74bf, - 0x8c48, 0x9dc1, 0xaf5a, 0xbed3, 0xca6c, 0xdbe5, 0xe97e, 0xf8f7, - 0x1081, 0x0108, 0x3393, 0x221a, 0x56a5, 0x472c, 0x75b7, 0x643e, - 0x9cc9, 0x8d40, 0xbfdb, 0xae52, 0xdaed, 0xcb64, 0xf9ff, 0xe876, - 0x2102, 0x308b, 0x0210, 0x1399, 0x6726, 0x76af, 0x4434, 0x55bd, - 0xad4a, 0xbcc3, 0x8e58, 0x9fd1, 0xeb6e, 0xfae7, 0xc87c, 0xd9f5, - 0x3183, 0x200a, 0x1291, 0x0318, 0x77a7, 0x662e, 0x54b5, 0x453c, - 0xbdcb, 0xac42, 0x9ed9, 0x8f50, 0xfbef, 0xea66, 0xd8fd, 0xc974, - 0x4204, 0x538d, 0x6116, 0x709f, 0x0420, 0x15a9, 0x2732, 0x36bb, - 0xce4c, 0xdfc5, 0xed5e, 0xfcd7, 0x8868, 0x99e1, 0xab7a, 0xbaf3, - 0x5285, 0x430c, 0x7197, 0x601e, 0x14a1, 0x0528, 0x37b3, 0x263a, - 0xdecd, 0xcf44, 0xfddf, 0xec56, 0x98e9, 0x8960, 0xbbfb, 0xaa72, - 0x6306, 0x728f, 0x4014, 0x519d, 0x2522, 0x34ab, 0x0630, 0x17b9, - 0xef4e, 0xfec7, 0xcc5c, 0xddd5, 0xa96a, 0xb8e3, 0x8a78, 0x9bf1, - 0x7387, 0x620e, 0x5095, 0x411c, 0x35a3, 0x242a, 0x16b1, 0x0738, - 0xffcf, 0xee46, 0xdcdd, 0xcd54, 0xb9eb, 0xa862, 0x9af9, 0x8b70, - 0x8408, 0x9581, 0xa71a, 0xb693, 0xc22c, 0xd3a5, 0xe13e, 0xf0b7, - 0x0840, 0x19c9, 0x2b52, 0x3adb, 0x4e64, 0x5fed, 0x6d76, 0x7cff, - 0x9489, 0x8500, 0xb79b, 0xa612, 0xd2ad, 0xc324, 0xf1bf, 0xe036, - 0x18c1, 0x0948, 0x3bd3, 0x2a5a, 0x5ee5, 0x4f6c, 0x7df7, 0x6c7e, - 0xa50a, 0xb483, 0x8618, 0x9791, 0xe32e, 0xf2a7, 0xc03c, 0xd1b5, - 0x2942, 0x38cb, 0x0a50, 0x1bd9, 0x6f66, 0x7eef, 0x4c74, 0x5dfd, - 0xb58b, 0xa402, 0x9699, 0x8710, 0xf3af, 0xe226, 0xd0bd, 0xc134, - 0x39c3, 0x284a, 0x1ad1, 0x0b58, 0x7fe7, 0x6e6e, 0x5cf5, 0x4d7c, - 0xc60c, 0xd785, 0xe51e, 0xf497, 0x8028, 0x91a1, 0xa33a, 0xb2b3, - 0x4a44, 0x5bcd, 0x6956, 0x78df, 0x0c60, 0x1de9, 0x2f72, 0x3efb, - 0xd68d, 0xc704, 0xf59f, 0xe416, 0x90a9, 0x8120, 0xb3bb, 0xa232, - 0x5ac5, 0x4b4c, 0x79d7, 0x685e, 0x1ce1, 0x0d68, 0x3ff3, 0x2e7a, - 0xe70e, 0xf687, 0xc41c, 0xd595, 0xa12a, 0xb0a3, 0x8238, 0x93b1, - 0x6b46, 0x7acf, 0x4854, 0x59dd, 0x2d62, 0x3ceb, 0x0e70, 0x1ff9, - 0xf78f, 0xe606, 0xd49d, 0xc514, 0xb1ab, 0xa022, 0x92b9, 0x8330, - 0x7bc7, 0x6a4e, 0x58d5, 0x495c, 0x3de3, 0x2c6a, 0x1ef1, 0x0f78 -}; - -/* Recompute the FCS with one more character appended. */ -#define CalcFCS(fcs, c) (((fcs) >> 8) ^ crc16_table[((fcs) ^ (c)) & 0xff]) -unsigned short AddCRC16Byte(unsigned short fcs, unsigned char byte) -{ - return CalcFCS(fcs, byte); -} -unsigned short AddCRC16(unsigned short fcs, void const *Buf, - unsigned long long len) -{ - unsigned char const *buf = (unsigned char const *)Buf; - while (len--) - fcs = CalcFCS(fcs, *buf++); - return fcs; -} diff --git a/apt-pkg/contrib/crc-16.h b/apt-pkg/contrib/crc-16.h deleted file mode 100644 index 3e0756007..000000000 --- a/apt-pkg/contrib/crc-16.h +++ /dev/null @@ -1,19 +0,0 @@ -// -*- mode: cpp; mode: fold -*- -// Description /*{{{*/ -/* ###################################################################### - - CRC16 - Compute a 16bit crc very quickly - - ##################################################################### */ - /*}}}*/ -#ifndef APTPKG_CRC16_H -#define APTPKG_CRC16_H - -#include <apt-pkg/macros.h> - -#define INIT_FCS 0xffff -unsigned short AddCRC16Byte(unsigned short fcs, unsigned char byte) APT_PURE; -unsigned short AddCRC16(unsigned short fcs, void const *buf, - unsigned long long len) APT_PURE; - -#endif diff --git a/apt-pkg/contrib/error.h b/apt-pkg/contrib/error.h index b6291572e..5ab7b9f85 100644 --- a/apt-pkg/contrib/error.h +++ b/apt-pkg/contrib/error.h @@ -362,6 +362,6 @@ private: /*{{{*/ GlobalError *_GetErrorObj(); static struct { inline GlobalError* operator ->() { return _GetErrorObj(); } -} _error APT_UNUSED APT_PKG_590("Consider rewriting this"); +} _error APT_UNUSED; #endif diff --git a/apt-pkg/contrib/fileutl.cc b/apt-pkg/contrib/fileutl.cc index b83a4bad7..db5463be2 100644 --- a/apt-pkg/contrib/fileutl.cc +++ b/apt-pkg/contrib/fileutl.cc @@ -85,9 +85,6 @@ using namespace std; -/* Should be a multiple of the common page size (4096) */ -static constexpr unsigned long long APT_BUFFER_SIZE = 64 * 1024; - // RunScripts - Run a set of scripts from a configuration subtree /*{{{*/ // --------------------------------------------------------------------- /* */ diff --git a/apt-pkg/contrib/hashes.cc b/apt-pkg/contrib/hashes.cc index 366133b02..6afd0815f 100644 --- a/apt-pkg/contrib/hashes.cc +++ b/apt-pkg/contrib/hashes.cc @@ -15,18 +15,32 @@ #include <apt-pkg/configuration.h> #include <apt-pkg/fileutl.h> #include <apt-pkg/hashes.h> -#include <apt-pkg/md5.h> -#include <apt-pkg/sha1.h> -#include <apt-pkg/sha2.h> +#include <apt-pkg/macros.h> +#include <apt-pkg/strutl.h> #include <algorithm> #include <iostream> #include <string> +#include <assert.h> #include <stddef.h> #include <stdlib.h> #include <unistd.h> + +#include <gcrypt.h> /*}}}*/ +static const constexpr struct HashAlgo +{ + const char *name; + int gcryAlgo; + Hashes::SupportedHashes ourAlgo; +} Algorithms[] = { + {"MD5Sum", GCRY_MD_MD5, Hashes::MD5SUM}, + {"SHA1", GCRY_MD_SHA1, Hashes::SHA1SUM}, + {"SHA256", GCRY_MD_SHA256, Hashes::SHA256SUM}, + {"SHA512", GCRY_MD_SHA512, Hashes::SHA512SUM}, +}; + const char * HashString::_SupportedHashes[] = { "SHA512", "SHA256", "SHA1", "MD5Sum", "Checksum-FileSize", NULL @@ -89,27 +103,27 @@ std::string HashString::GetHashForFile(std::string filename) const /*{{{*/ FileFd Fd(filename, FileFd::ReadOnly); if(strcasecmp(Type.c_str(), "MD5Sum") == 0) { - MD5Summation MD5; + Hashes MD5(Hashes::MD5SUM); MD5.AddFD(Fd); - fileHash = (std::string)MD5.Result(); + fileHash = MD5.GetHashString(Hashes::MD5SUM).Hash; } else if (strcasecmp(Type.c_str(), "SHA1") == 0) { - SHA1Summation SHA1; + Hashes SHA1(Hashes::SHA1SUM); SHA1.AddFD(Fd); - fileHash = (std::string)SHA1.Result(); + fileHash = SHA1.GetHashString(Hashes::SHA1SUM).Hash; } else if (strcasecmp(Type.c_str(), "SHA256") == 0) { - SHA256Summation SHA256; + Hashes SHA256(Hashes::SHA256SUM); SHA256.AddFD(Fd); - fileHash = (std::string)SHA256.Result(); + fileHash = SHA256.GetHashString(Hashes::SHA256SUM).Hash; } else if (strcasecmp(Type.c_str(), "SHA512") == 0) { - SHA512Summation SHA512; + Hashes SHA512(Hashes::SHA512SUM); SHA512.AddFD(Fd); - fileHash = (std::string)SHA512.Result(); + fileHash = SHA512.GetHashString(Hashes::SHA512SUM).Hash; } else if (strcasecmp(Type.c_str(), "Checksum-FileSize") == 0) strprintf(fileHash, "%llu", Fd.FileSize()); @@ -286,43 +300,45 @@ bool HashStringList::operator!=(HashStringList const &other) const class PrivateHashes { public: unsigned long long FileSize; - unsigned int CalcHashes; + gcry_md_hd_t hd; + + explicit PrivateHashes(unsigned int const CalcHashes) : FileSize(0) + { + gcry_md_open(&hd, 0, 0); + for (auto & Algo : Algorithms) + { + if ((CalcHashes & Algo.ourAlgo) == Algo.ourAlgo) + gcry_md_enable(hd, Algo.gcryAlgo); + } + } - explicit PrivateHashes(unsigned int const CalcHashes) : FileSize(0), CalcHashes(CalcHashes) {} explicit PrivateHashes(HashStringList const &Hashes) : FileSize(0) { - unsigned int calcHashes = Hashes.usable() ? 0 : ~0; - if (Hashes.find("MD5Sum") != NULL) - calcHashes |= Hashes::MD5SUM; - if (Hashes.find("SHA1") != NULL) - calcHashes |= Hashes::SHA1SUM; - if (Hashes.find("SHA256") != NULL) - calcHashes |= Hashes::SHA256SUM; - if (Hashes.find("SHA512") != NULL) - calcHashes |= Hashes::SHA512SUM; - CalcHashes = calcHashes; + gcry_md_open(&hd, 0, 0); + for (auto & Algo : Algorithms) + { + if (not Hashes.usable() || Hashes.find(Algo.name) != NULL) + gcry_md_enable(hd, Algo.gcryAlgo); + } + } + ~PrivateHashes() + { + gcry_md_close(hd); } }; /*}}}*/ // Hashes::Add* - Add the contents of data or FD /*{{{*/ bool Hashes::Add(const unsigned char * const Data, unsigned long long const Size) { - if (Size == 0) - return true; - bool Res = true; - if ((d->CalcHashes & MD5SUM) == MD5SUM) - Res &= MD5.Add(Data, Size); - if ((d->CalcHashes & SHA1SUM) == SHA1SUM) - Res &= SHA1.Add(Data, Size); - if ((d->CalcHashes & SHA256SUM) == SHA256SUM) - Res &= SHA256.Add(Data, Size); - if ((d->CalcHashes & SHA512SUM) == SHA512SUM) - Res &= SHA512.Add(Data, Size); - d->FileSize += Size; - return Res; + if (Size != 0) + { + gcry_md_write(d->hd, Data, Size); + d->FileSize += Size; + } + return true; } bool Hashes::AddFD(int const Fd,unsigned long long Size) { - unsigned char Buf[64*64]; + unsigned char Buf[APT_BUFFER_SIZE]; bool const ToEOF = (Size == UntilEOF); while (Size != 0 || ToEOF) { @@ -341,7 +357,7 @@ bool Hashes::AddFD(int const Fd,unsigned long long Size) } bool Hashes::AddFD(FileFd &Fd,unsigned long long Size) { - unsigned char Buf[64*64]; + unsigned char Buf[APT_BUFFER_SIZE]; bool const ToEOF = (Size == 0); while (Size != 0 || ToEOF) { @@ -364,20 +380,49 @@ bool Hashes::AddFD(FileFd &Fd,unsigned long long Size) return true; } /*}}}*/ + +static APT_PURE std::string HexDigest(gcry_md_hd_t hd, int algo) +{ + char Conv[16] = + {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', + 'c', 'd', 'e', 'f'}; + + auto Size = gcry_md_get_algo_dlen(algo); + char Result[((Size)*2) + 1]; + Result[(Size)*2] = 0; + + auto Sum = gcry_md_read(hd, algo); + + // Convert each char into two letters + size_t J = 0; + size_t I = 0; + for (; I != (Size)*2; J++, I += 2) + { + Result[I] = Conv[Sum[J] >> 4]; + Result[I + 1] = Conv[Sum[J] & 0xF]; + } + return std::string(Result); +}; + HashStringList Hashes::GetHashStringList() { HashStringList hashes; - if ((d->CalcHashes & MD5SUM) == MD5SUM) - hashes.push_back(HashString("MD5Sum", MD5.Result().Value())); - if ((d->CalcHashes & SHA1SUM) == SHA1SUM) - hashes.push_back(HashString("SHA1", SHA1.Result().Value())); - if ((d->CalcHashes & SHA256SUM) == SHA256SUM) - hashes.push_back(HashString("SHA256", SHA256.Result().Value())); - if ((d->CalcHashes & SHA512SUM) == SHA512SUM) - hashes.push_back(HashString("SHA512", SHA512.Result().Value())); + for (auto & Algo : Algorithms) + if (gcry_md_is_enabled(d->hd, Algo.gcryAlgo)) + hashes.push_back(HashString(Algo.name, HexDigest(d->hd, Algo.gcryAlgo))); hashes.FileSize(d->FileSize); + return hashes; } + +HashString Hashes::GetHashString(SupportedHashes hash) +{ + for (auto & Algo : Algorithms) + if (hash == Algo.ourAlgo) + return HashString(Algo.name, HexDigest(d->hd, Algo.gcryAlgo)); + + abort(); +} Hashes::Hashes() : d(new PrivateHashes(~0)) { } Hashes::Hashes(unsigned int const Hashes) : d(new PrivateHashes(Hashes)) {} Hashes::Hashes(HashStringList const &Hashes) : d(new PrivateHashes(Hashes)) {} diff --git a/apt-pkg/contrib/hashes.h b/apt-pkg/contrib/hashes.h index e9b8a0519..e2a9927ef 100644 --- a/apt-pkg/contrib/hashes.h +++ b/apt-pkg/contrib/hashes.h @@ -13,12 +13,10 @@ #define APTPKG_HASHES_H #include <apt-pkg/macros.h> -#include <apt-pkg/md5.h> -#include <apt-pkg/sha1.h> -#include <apt-pkg/sha2.h> #include <cstring> #include <string> +#include <vector> @@ -171,19 +169,16 @@ class PrivateHashes; class Hashes { PrivateHashes * const d; - /* TODO: those will disappear in the future as it is hard to add new ones this way. - * Use Add* to build the results and get them via GetHashStringList() instead */ - MD5Summation MD5; - SHA1Summation SHA1; - SHA256Summation SHA256; - SHA512Summation SHA512; - public: static const int UntilEOF = 0; bool Add(const unsigned char * const Data, unsigned long long const Size) APT_NONNULL(2); inline bool Add(const char * const Data) APT_NONNULL(2) {return Add(reinterpret_cast<unsigned char const *>(Data),strlen(Data));}; + inline bool Add(const char *const Data, unsigned long long const Size) APT_NONNULL(2) + { + return Add(reinterpret_cast<unsigned char const *>(Data), Size); + }; inline bool Add(const unsigned char * const Beg,const unsigned char * const End) APT_NONNULL(2,3) {return Add(Beg,End-Beg);}; @@ -194,6 +189,9 @@ class Hashes HashStringList GetHashStringList(); + /** Get a specific hash. It is an error to use a hash that was not hashes */ + HashString GetHashString(SupportedHashes hash); + /** create a Hashes object to calculate all supported hashes * * If ALL is too much, you can limit which Hashes are calculated diff --git a/apt-pkg/contrib/macros.h b/apt-pkg/contrib/macros.h index 340549fbd..f37eb585b 100644 --- a/apt-pkg/contrib/macros.h +++ b/apt-pkg/contrib/macros.h @@ -116,16 +116,12 @@ // reverse-dependencies of libapt-pkg against the new SONAME. // Non-ABI-Breaks should only increase RELEASE number. // See also buildlib/libversion.mak -#define APT_PKG_MAJOR 5 -#define APT_PKG_MINOR 90 +#define APT_PKG_MAJOR 6 +#define APT_PKG_MINOR 0 #define APT_PKG_RELEASE 0 #define APT_PKG_ABI ((APT_PKG_MAJOR * 100) + APT_PKG_MINOR) - -#if APT_PKG_ABI > 590 -#define APT_PKG_590(msg) __attribute__((error(msg))) -#else -#define APT_PKG_590(msg) -#endif +/* Should be a multiple of the common page size (4096) */ +static constexpr unsigned long long APT_BUFFER_SIZE = 64 * 1024; #endif diff --git a/apt-pkg/contrib/md5.cc b/apt-pkg/contrib/md5.cc deleted file mode 100644 index c3b529922..000000000 --- a/apt-pkg/contrib/md5.cc +++ /dev/null @@ -1,279 +0,0 @@ -// -*- mode: cpp; mode: fold -*- -// Description /*{{{*/ -/* ###################################################################### - - MD5Sum - MD5 Message Digest Algorithm. - - This code implements the MD5 message-digest algorithm. The algorithm is - due to Ron Rivest. This code was written by Colin Plumb in 1993, no - copyright is claimed. This code is in the public domain; do with it what - you wish. - - Equivalent code is available from RSA Data Security, Inc. This code has - been tested against that, and is equivalent, except that you don't need to - include two pages of legalese with every copy. - - To compute the message digest of a chunk of bytes, instantiate the class, - and repeatedly call one of the Add() members. When finished the Result - method will return the Hash and finalize the value. - - Changed so as no longer to depend on Colin Plumb's `usual.h' header - definitions; now uses stuff from dpkg's config.h. - - Ian Jackson <ijackson@nyx.cs.du.edu>. - - Changed into a C++ interface and made work with APT's config.h. - - Jason Gunthorpe <jgg@gpu.srv.ualberta.ca> - - Still in the public domain. - - The classes use arrays of char that are a specific size. We cast those - arrays to uint8_t's and go from there. This allows us to advoid using - the uncommon inttypes.h in a public header or internally newing memory. - In theory if C9x becomes nicely accepted - - ##################################################################### */ - /*}}}*/ -// Include Files /*{{{*/ -#include <config.h> - -#include <apt-pkg/md5.h> - -#include <stdint.h> -#include <string.h> - /*}}}*/ - -// byteSwap - Swap bytes in a buffer /*{{{*/ -// --------------------------------------------------------------------- -/* Swap n 32 bit longs in given buffer */ -#ifdef WORDS_BIGENDIAN -static void byteSwap(uint32_t *buf, unsigned words) -{ - uint8_t *p = (uint8_t *)buf; - - do - { - *buf++ = (uint32_t)((unsigned)p[3] << 8 | p[2]) << 16 | - ((unsigned)p[1] << 8 | p[0]); - p += 4; - } while (--words); -} -#else -#define byteSwap(buf,words) -#endif - /*}}}*/ -// MD5Transform - Alters an existing MD5 hash /*{{{*/ -// --------------------------------------------------------------------- -/* The core of the MD5 algorithm, this alters an existing MD5 hash to - reflect the addition of 16 longwords of new data. Add blocks - the data and converts bytes into longwords for this routine. */ - -// The four core functions - F1 is optimized somewhat -// #define F1(x, y, z) (x & y | ~x & z) -#define F1(x, y, z) (z ^ (x & (y ^ z))) -#define F2(x, y, z) F1(z, x, y) -#define F3(x, y, z) (x ^ y ^ z) -#define F4(x, y, z) (y ^ (x | ~z)) - -// This is the central step in the MD5 algorithm. -#define MD5STEP(f,w,x,y,z,in,s) \ - (w += f(x,y,z) + in, w = (w<<s | w>>(32-s)) + x) - -static void MD5Transform(uint32_t buf[4], uint32_t const in[16]) -{ - uint32_t a, b, c, d; - - a = buf[0]; - b = buf[1]; - c = buf[2]; - d = buf[3]; - - MD5STEP(F1, a, b, c, d, in[0] + 0xd76aa478, 7); - MD5STEP(F1, d, a, b, c, in[1] + 0xe8c7b756, 12); - MD5STEP(F1, c, d, a, b, in[2] + 0x242070db, 17); - MD5STEP(F1, b, c, d, a, in[3] + 0xc1bdceee, 22); - MD5STEP(F1, a, b, c, d, in[4] + 0xf57c0faf, 7); - MD5STEP(F1, d, a, b, c, in[5] + 0x4787c62a, 12); - MD5STEP(F1, c, d, a, b, in[6] + 0xa8304613, 17); - MD5STEP(F1, b, c, d, a, in[7] + 0xfd469501, 22); - MD5STEP(F1, a, b, c, d, in[8] + 0x698098d8, 7); - MD5STEP(F1, d, a, b, c, in[9] + 0x8b44f7af, 12); - MD5STEP(F1, c, d, a, b, in[10] + 0xffff5bb1, 17); - MD5STEP(F1, b, c, d, a, in[11] + 0x895cd7be, 22); - MD5STEP(F1, a, b, c, d, in[12] + 0x6b901122, 7); - MD5STEP(F1, d, a, b, c, in[13] + 0xfd987193, 12); - MD5STEP(F1, c, d, a, b, in[14] + 0xa679438e, 17); - MD5STEP(F1, b, c, d, a, in[15] + 0x49b40821, 22); - - MD5STEP(F2, a, b, c, d, in[1] + 0xf61e2562, 5); - MD5STEP(F2, d, a, b, c, in[6] + 0xc040b340, 9); - MD5STEP(F2, c, d, a, b, in[11] + 0x265e5a51, 14); - MD5STEP(F2, b, c, d, a, in[0] + 0xe9b6c7aa, 20); - MD5STEP(F2, a, b, c, d, in[5] + 0xd62f105d, 5); - MD5STEP(F2, d, a, b, c, in[10] + 0x02441453, 9); - MD5STEP(F2, c, d, a, b, in[15] + 0xd8a1e681, 14); - MD5STEP(F2, b, c, d, a, in[4] + 0xe7d3fbc8, 20); - MD5STEP(F2, a, b, c, d, in[9] + 0x21e1cde6, 5); - MD5STEP(F2, d, a, b, c, in[14] + 0xc33707d6, 9); - MD5STEP(F2, c, d, a, b, in[3] + 0xf4d50d87, 14); - MD5STEP(F2, b, c, d, a, in[8] + 0x455a14ed, 20); - MD5STEP(F2, a, b, c, d, in[13] + 0xa9e3e905, 5); - MD5STEP(F2, d, a, b, c, in[2] + 0xfcefa3f8, 9); - MD5STEP(F2, c, d, a, b, in[7] + 0x676f02d9, 14); - MD5STEP(F2, b, c, d, a, in[12] + 0x8d2a4c8a, 20); - - MD5STEP(F3, a, b, c, d, in[5] + 0xfffa3942, 4); - MD5STEP(F3, d, a, b, c, in[8] + 0x8771f681, 11); - MD5STEP(F3, c, d, a, b, in[11] + 0x6d9d6122, 16); - MD5STEP(F3, b, c, d, a, in[14] + 0xfde5380c, 23); - MD5STEP(F3, a, b, c, d, in[1] + 0xa4beea44, 4); - MD5STEP(F3, d, a, b, c, in[4] + 0x4bdecfa9, 11); - MD5STEP(F3, c, d, a, b, in[7] + 0xf6bb4b60, 16); - MD5STEP(F3, b, c, d, a, in[10] + 0xbebfbc70, 23); - MD5STEP(F3, a, b, c, d, in[13] + 0x289b7ec6, 4); - MD5STEP(F3, d, a, b, c, in[0] + 0xeaa127fa, 11); - MD5STEP(F3, c, d, a, b, in[3] + 0xd4ef3085, 16); - MD5STEP(F3, b, c, d, a, in[6] + 0x04881d05, 23); - MD5STEP(F3, a, b, c, d, in[9] + 0xd9d4d039, 4); - MD5STEP(F3, d, a, b, c, in[12] + 0xe6db99e5, 11); - MD5STEP(F3, c, d, a, b, in[15] + 0x1fa27cf8, 16); - MD5STEP(F3, b, c, d, a, in[2] + 0xc4ac5665, 23); - - MD5STEP(F4, a, b, c, d, in[0] + 0xf4292244, 6); - MD5STEP(F4, d, a, b, c, in[7] + 0x432aff97, 10); - MD5STEP(F4, c, d, a, b, in[14] + 0xab9423a7, 15); - MD5STEP(F4, b, c, d, a, in[5] + 0xfc93a039, 21); - MD5STEP(F4, a, b, c, d, in[12] + 0x655b59c3, 6); - MD5STEP(F4, d, a, b, c, in[3] + 0x8f0ccc92, 10); - MD5STEP(F4, c, d, a, b, in[10] + 0xffeff47d, 15); - MD5STEP(F4, b, c, d, a, in[1] + 0x85845dd1, 21); - MD5STEP(F4, a, b, c, d, in[8] + 0x6fa87e4f, 6); - MD5STEP(F4, d, a, b, c, in[15] + 0xfe2ce6e0, 10); - MD5STEP(F4, c, d, a, b, in[6] + 0xa3014314, 15); - MD5STEP(F4, b, c, d, a, in[13] + 0x4e0811a1, 21); - MD5STEP(F4, a, b, c, d, in[4] + 0xf7537e82, 6); - MD5STEP(F4, d, a, b, c, in[11] + 0xbd3af235, 10); - MD5STEP(F4, c, d, a, b, in[2] + 0x2ad7d2bb, 15); - MD5STEP(F4, b, c, d, a, in[9] + 0xeb86d391, 21); - - buf[0] += a; - buf[1] += b; - buf[2] += c; - buf[3] += d; -} - /*}}}*/ -// MD5Summation::MD5Summation - Initialize the summer /*{{{*/ -// --------------------------------------------------------------------- -/* This assigns the deep magic initial values */ -MD5Summation::MD5Summation() -{ - uint32_t *buf = (uint32_t *)Buf; - uint32_t *bytes = (uint32_t *)Bytes; - - buf[0] = 0x67452301; - buf[1] = 0xefcdab89; - buf[2] = 0x98badcfe; - buf[3] = 0x10325476; - - bytes[0] = 0; - bytes[1] = 0; - Done = false; -} - /*}}}*/ -// MD5Summation::Add - 'Add' a data set to the hash /*{{{*/ -// --------------------------------------------------------------------- -/* */ -bool MD5Summation::Add(const unsigned char *data,unsigned long long len) -{ - if (Done == true) - return false; - if (len == 0) - return true; - - uint32_t *buf = (uint32_t *)Buf; - uint32_t *bytes = (uint32_t *)Bytes; - uint32_t *in = (uint32_t *)In; - - // Update byte count and carry (this could be done with a long long?) - uint32_t t = bytes[0]; - if ((bytes[0] = t + len) < t) - bytes[1]++; - - // Space available (at least 1) - t = 64 - (t & 0x3f); - if (t > len) - { - memcpy((unsigned char *)in + 64 - t,data,len); - return true; - } - - // First chunk is an odd size - memcpy((unsigned char *)in + 64 - t,data,t); - byteSwap(in, 16); - MD5Transform(buf,in); - data += t; - len -= t; - - // Process data in 64-byte chunks - while (len >= 64) - { - memcpy(in,data,64); - byteSwap(in,16); - MD5Transform(buf,in); - data += 64; - len -= 64; - } - - // Handle any remaining bytes of data. - memcpy(in,data,len); - - return true; -} - /*}}}*/ -// MD5Summation::Result - Returns the value of the sum /*{{{*/ -// --------------------------------------------------------------------- -/* Because this must add in the last bytes of the series it prevents anyone - from calling add after. */ -MD5SumValue MD5Summation::Result() -{ - uint32_t *buf = (uint32_t *)Buf; - uint32_t *bytes = (uint32_t *)Bytes; - uint32_t *in = (uint32_t *)In; - - if (Done == false) - { - // Number of bytes in In - int count = bytes[0] & 0x3f; - unsigned char *p = (unsigned char *)in + count; - - // Set the first char of padding to 0x80. There is always room. - *p++ = 0x80; - - // Bytes of padding needed to make 56 bytes (-8..55) - count = 56 - 1 - count; - - // Padding forces an extra block - if (count < 0) - { - memset(p,0,count + 8); - byteSwap(in, 16); - MD5Transform(buf,in); - p = (unsigned char *)in; - count = 56; - } - - memset(p, 0, count); - byteSwap(in, 14); - - // Append length in bits and transform - in[14] = bytes[0] << 3; - in[15] = bytes[1] << 3 | bytes[0] >> 29; - MD5Transform(buf,in); - byteSwap(buf,4); - Done = true; - } - - MD5SumValue V; - V.Set((unsigned char *)buf); - return V; -} - /*}}}*/ diff --git a/apt-pkg/contrib/md5.h b/apt-pkg/contrib/md5.h deleted file mode 100644 index d1287c573..000000000 --- a/apt-pkg/contrib/md5.h +++ /dev/null @@ -1,49 +0,0 @@ -// -*- mode: cpp; mode: fold -*- -// Description /*{{{*/ -/* ###################################################################### - - MD5SumValue - Storage for a MD5Sum - MD5Summation - MD5 Message Digest Algorithm. - - This is a C++ interface to a set of MD5Sum functions. The class can - store a MD5Sum in 16 bytes of memory. - - A MD5Sum is used to generate a (hopefully) unique 16 byte number for a - block of data. This can be used to guard against corruption of a file. - MD5 should not be used for tamper protection, use SHA or something more - secure. - - There are two classes because computing a MD5 is not a continual - operation unless 64 byte blocks are used. Also the summation requires an - extra 18*4 bytes to operate. - - ##################################################################### */ - /*}}}*/ -#ifndef APTPKG_MD5_H -#define APTPKG_MD5_H - -#include <stdint.h> - -#include "hashsum_template.h" - - -typedef HashSumValue<128> MD5SumValue; - -class MD5Summation : public SummationImplementation -{ - uint32_t Buf[4]; - unsigned char Bytes[2*4]; - unsigned char In[16*4]; - bool Done; - - public: - - bool Add(const unsigned char *inbuf, unsigned long long inlen) APT_OVERRIDE APT_NONNULL(2); - using SummationImplementation::Add; - - MD5SumValue Result(); - - MD5Summation(); -}; - -#endif diff --git a/apt-pkg/contrib/mmap.cc b/apt-pkg/contrib/mmap.cc index ee6a21c83..020491172 100644 --- a/apt-pkg/contrib/mmap.cc +++ b/apt-pkg/contrib/mmap.cc @@ -357,25 +357,26 @@ unsigned long DynamicMMap::Allocate(unsigned long ItemSize) // Look for a matching pool entry Pool *I; - Pool *Empty = 0; for (I = Pools; I != Pools + PoolCount; ++I) { - if (I->ItemSize == 0) - Empty = I; if (I->ItemSize == ItemSize) break; } - // No pool is allocated, use an unallocated one - if (I == Pools + PoolCount) + // No pool is allocated, use an unallocated one. + if (unlikely(I == Pools + PoolCount)) { + for (I = Pools; I != Pools + PoolCount; ++I) + { + if (I->ItemSize == 0) + break; + } // Woops, we ran out, the calling code should allocate more. - if (Empty == 0) + if (I == Pools + PoolCount) { _error->Error("Ran out of allocation pools"); return 0; } - - I = Empty; + I->ItemSize = ItemSize; I->Count = 0; } diff --git a/apt-pkg/contrib/netrc.cc b/apt-pkg/contrib/netrc.cc index 2069a0394..a6f408c0e 100644 --- a/apt-pkg/contrib/netrc.cc +++ b/apt-pkg/contrib/netrc.cc @@ -11,6 +11,7 @@ ##################################################################### */ /*}}}*/ #include <config.h> +#include <apti18n.h> #include <apt-pkg/configuration.h> #include <apt-pkg/error.h> @@ -47,6 +48,8 @@ bool MaybeAddAuth(FileFd &NetRCFile, URI &Uri) std::string line; while (NetRCFile.Eof() == false || line.empty() == false) { + bool protocolSpecified = false; + if (line.empty()) { if (NetRCFile.ReadLine(line) == false) @@ -75,7 +78,8 @@ bool MaybeAddAuth(FileFd &NetRCFile, URI &Uri) // If token contains a protocol: Check it first, and strip it away if // it matches. If it does not match, ignore this stanza. // If there is no protocol, only allow https protocols. - if (token.find("://") != std::string::npos) + protocolSpecified = token.find("://") != std::string::npos; + if (protocolSpecified) { if (not APT::String::Startswith(token, Uri.Access + "://")) { @@ -84,14 +88,7 @@ bool MaybeAddAuth(FileFd &NetRCFile, URI &Uri) } token.erase(0, Uri.Access.length() + 3); } - else if (Uri.Access != "https" && Uri.Access != "tor+https") - { - if (Debug) - std::clog << "MaybeAddAuth: Rejecting matching host adding '" << Uri.User << "' and '" << Uri.Password << "' for " - << (std::string)Uri << " from " << NetRCFile.Name() << "as the protocol is not https" << std::endl; - active_token = NO; - break; - } + if (token.find('/') == std::string::npos) { if (Uri.Port != 0 && Uri.Host == token) @@ -108,6 +105,15 @@ bool MaybeAddAuth(FileFd &NetRCFile, URI &Uri) else active_token = NO; } + + if (active_token == GOOD_MACHINE && not protocolSpecified) + { + if (Uri.Access != "https" && Uri.Access != "tor+https") + { + _error->Warning(_("%s: Credentials for %s match, but the protocol is not encrypted. Annotate with %s:// to use."), NetRCFile.Name().c_str(), token.c_str(), Uri.Access.c_str()); + active_token = NO; + } + } break; case GOOD_MACHINE: if (token == "login") @@ -161,46 +167,3 @@ bool MaybeAddAuth(FileFd &NetRCFile, URI &Uri) } return false; } - -/* Check if we are authorized. */ -bool IsAuthorized(pkgCache::PkgFileIterator const I, std::vector<std::unique_ptr<FileFd>> &authconfs) -{ - if (authconfs.empty()) - { - _error->PushToStack(); - auto const netrc = _config->FindFile("Dir::Etc::netrc"); - if (not netrc.empty()) - { - authconfs.emplace_back(new FileFd()); - authconfs.back()->Open(netrc, FileFd::ReadOnly); - } - - auto const netrcparts = _config->FindDir("Dir::Etc::netrcparts"); - if (not netrcparts.empty()) - { - for (auto const &netrc : GetListOfFilesInDir(netrcparts, "conf", true, true)) - { - authconfs.emplace_back(new FileFd()); - authconfs.back()->Open(netrc, FileFd::ReadOnly); - } - } - _error->RevertToStack(); - } - - // FIXME: Use the full base url - URI uri(std::string("https://") + I.Site() + "/"); - for (auto &authconf : authconfs) - { - if (not authconf->IsOpen()) - continue; - if (not authconf->Seek(0)) - continue; - - MaybeAddAuth(*authconf, uri); - - if (not uri.User.empty() || not uri.Password.empty()) - return true; - } - - return false; -} diff --git a/apt-pkg/contrib/netrc.h b/apt-pkg/contrib/netrc.h index c8a03a4b7..b13f18187 100644 --- a/apt-pkg/contrib/netrc.h +++ b/apt-pkg/contrib/netrc.h @@ -13,12 +13,9 @@ #ifndef NETRC_H #define NETRC_H -#include <memory> #include <string> -#include <vector> #include <apt-pkg/macros.h> -#include <apt-pkg/pkgcache.h> @@ -26,5 +23,4 @@ class URI; class FileFd; bool MaybeAddAuth(FileFd &NetRCFile, URI &Uri); -bool IsAuthorized(pkgCache::PkgFileIterator const I, std::vector<std::unique_ptr<FileFd>> &authconfs) APT_HIDDEN; #endif diff --git a/apt-pkg/contrib/progress.cc b/apt-pkg/contrib/progress.cc index 806bd47f8..971198270 100644 --- a/apt-pkg/contrib/progress.cc +++ b/apt-pkg/contrib/progress.cc @@ -123,7 +123,7 @@ bool OpProgress::CheckChange(float Interval) std::chrono::duration<decltype(Interval)> Delta = std::chrono::seconds(NowTime.tv_sec - LastTime.tv_sec) + - std::chrono::microseconds(NowTime.tv_sec - LastTime.tv_usec); + std::chrono::microseconds(NowTime.tv_usec - LastTime.tv_usec); if (Delta.count() < Interval) return false; diff --git a/apt-pkg/contrib/sha1.cc b/apt-pkg/contrib/sha1.cc deleted file mode 100644 index bf0b9d634..000000000 --- a/apt-pkg/contrib/sha1.cc +++ /dev/null @@ -1,273 +0,0 @@ -// -*- mode: cpp; mode: fold -*- -// Description /*{{{*/ -/* ###################################################################### - - SHA1 - SHA-1 Secure Hash Algorithm. - - This file is a Public Domain wrapper for the Public Domain SHA1 - calculation code that is at it's end. - - The algorithm was originally implemented by - Steve Reid <sreid@sea-to-sky.net> and later modified by - James H. Brown <jbrown@burgoyne.com>. - - Modifications for APT were done by Alfredo K. Kojima and Jason - Gunthorpe. - - Still in the public domain. - - Test Vectors (from FIPS PUB 180-1) - "abc" - A9993E36 4706816A BA3E2571 7850C26C 9CD0D89D - "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq" - 84983E44 1C3BD26E BAAE4AA1 F95129E5 E54670F1 - A million repetitions of "a" - 34AA973C D4C4DAA4 F61EEB2B DBAD2731 6534016F - - ##################################################################### - */ - /*}}} */ -// Include Files /*{{{*/ -#include <config.h> - -#include <apt-pkg/sha1.h> - -#include <stdint.h> -#include <string.h> - /*}}}*/ - -// SHA1Transform - Alters an existing SHA-1 hash /*{{{*/ -// --------------------------------------------------------------------- -/* The core of the SHA-1 algorithm. This alters an existing SHA-1 hash to - reflect the addition of 16 longwords of new data. Other routines convert - incoming stream data into 16 long word chunks for this routine */ - -#define rol(value,bits) (((value) << (bits)) | ((value) >> (32 - (bits)))) - -/* blk0() and blk() perform the initial expand. */ -/* I got the idea of expanding during the round function from SSLeay */ -#ifndef WORDS_BIGENDIAN -#define blk0(i) (block->l[i] = (rol(block->l[i],24)&0xFF00FF00) \ - |(rol(block->l[i],8)&0x00FF00FF)) -#else -#define blk0(i) block->l[i] -#endif -#define blk(i) (block->l[i&15] = rol(block->l[(i+13)&15]^block->l[(i+8)&15] \ - ^block->l[(i+2)&15]^block->l[i&15],1)) - -/* (R0+R1),R2,R3,R4 are the different operations used in SHA1 */ -#define R0(v,w,x,y,z,i) z+=((w&(x^y))^y)+blk0(i)+0x5A827999+rol(v,5);w=rol(w,30); -#define R1(v,w,x,y,z,i) z+=((w&(x^y))^y)+blk(i)+0x5A827999+rol(v,5);w=rol(w,30); -#define R2(v,w,x,y,z,i) z+=(w^x^y)+blk(i)+0x6ED9EBA1+rol(v,5);w=rol(w,30); -#define R3(v,w,x,y,z,i) z+=(((w|x)&y)|(w&x))+blk(i)+0x8F1BBCDC+rol(v,5);w=rol(w,30); -#define R4(v,w,x,y,z,i) z+=(w^x^y)+blk(i)+0xCA62C1D6+rol(v,5);w=rol(w,30); - -static void SHA1Transform(uint32_t state[5],uint8_t const buffer[64]) -{ - uint32_t a,b,c,d,e; - typedef union - { - uint8_t c[64]; - uint32_t l[16]; - } - CHAR64LONG16; - CHAR64LONG16 workspace, *block; - - block = &workspace; - memcpy(block,buffer,sizeof(workspace)); - - /* Copy context->state[] to working vars */ - a = state[0]; - b = state[1]; - c = state[2]; - d = state[3]; - e = state[4]; - - /* 4 rounds of 20 operations each. Loop unrolled. */ - R0(a,b,c,d,e,0); - R0(e,a,b,c,d,1); - R0(d,e,a,b,c,2); - R0(c,d,e,a,b,3); - R0(b,c,d,e,a,4); - R0(a,b,c,d,e,5); - R0(e,a,b,c,d,6); - R0(d,e,a,b,c,7); - R0(c,d,e,a,b,8); - R0(b,c,d,e,a,9); - R0(a,b,c,d,e,10); - R0(e,a,b,c,d,11); - R0(d,e,a,b,c,12); - R0(c,d,e,a,b,13); - R0(b,c,d,e,a,14); - R0(a,b,c,d,e,15); - R1(e,a,b,c,d,16); - R1(d,e,a,b,c,17); - R1(c,d,e,a,b,18); - R1(b,c,d,e,a,19); - R2(a,b,c,d,e,20); - R2(e,a,b,c,d,21); - R2(d,e,a,b,c,22); - R2(c,d,e,a,b,23); - R2(b,c,d,e,a,24); - R2(a,b,c,d,e,25); - R2(e,a,b,c,d,26); - R2(d,e,a,b,c,27); - R2(c,d,e,a,b,28); - R2(b,c,d,e,a,29); - R2(a,b,c,d,e,30); - R2(e,a,b,c,d,31); - R2(d,e,a,b,c,32); - R2(c,d,e,a,b,33); - R2(b,c,d,e,a,34); - R2(a,b,c,d,e,35); - R2(e,a,b,c,d,36); - R2(d,e,a,b,c,37); - R2(c,d,e,a,b,38); - R2(b,c,d,e,a,39); - R3(a,b,c,d,e,40); - R3(e,a,b,c,d,41); - R3(d,e,a,b,c,42); - R3(c,d,e,a,b,43); - R3(b,c,d,e,a,44); - R3(a,b,c,d,e,45); - R3(e,a,b,c,d,46); - R3(d,e,a,b,c,47); - R3(c,d,e,a,b,48); - R3(b,c,d,e,a,49); - R3(a,b,c,d,e,50); - R3(e,a,b,c,d,51); - R3(d,e,a,b,c,52); - R3(c,d,e,a,b,53); - R3(b,c,d,e,a,54); - R3(a,b,c,d,e,55); - R3(e,a,b,c,d,56); - R3(d,e,a,b,c,57); - R3(c,d,e,a,b,58); - R3(b,c,d,e,a,59); - R4(a,b,c,d,e,60); - R4(e,a,b,c,d,61); - R4(d,e,a,b,c,62); - R4(c,d,e,a,b,63); - R4(b,c,d,e,a,64); - R4(a,b,c,d,e,65); - R4(e,a,b,c,d,66); - R4(d,e,a,b,c,67); - R4(c,d,e,a,b,68); - R4(b,c,d,e,a,69); - R4(a,b,c,d,e,70); - R4(e,a,b,c,d,71); - R4(d,e,a,b,c,72); - R4(c,d,e,a,b,73); - R4(b,c,d,e,a,74); - R4(a,b,c,d,e,75); - R4(e,a,b,c,d,76); - R4(d,e,a,b,c,77); - R4(c,d,e,a,b,78); - R4(b,c,d,e,a,79); - - /* Add the working vars back into context.state[] */ - state[0] += a; - state[1] += b; - state[2] += c; - state[3] += d; - state[4] += e; -} - /*}}}*/ - -// SHA1Summation::SHA1Summation - Constructor /*{{{*/ -// --------------------------------------------------------------------- -/* */ -SHA1Summation::SHA1Summation() -{ - uint32_t *state = (uint32_t *)State; - uint32_t *count = (uint32_t *)Count; - - /* SHA1 initialization constants */ - state[0] = 0x67452301; - state[1] = 0xEFCDAB89; - state[2] = 0x98BADCFE; - state[3] = 0x10325476; - state[4] = 0xC3D2E1F0; - count[0] = 0; - count[1] = 0; - Done = false; -} - /*}}}*/ -// SHA1Summation::Result - Return checksum value /*{{{*/ -// --------------------------------------------------------------------- -/* Add() may not be called after this */ -SHA1SumValue SHA1Summation::Result() -{ - uint32_t *state = (uint32_t *)State; - uint32_t *count = (uint32_t *)Count; - - // Apply the padding - if (Done == false) - { - unsigned char finalcount[8]; - - for (unsigned i = 0; i < 8; i++) - { - // Endian independent - finalcount[i] = (unsigned char) ((count[(i >= 4 ? 0 : 1)] - >> ((3 - (i & 3)) * 8)) & 255); - } - - Add((unsigned char *) "\200",1); - while ((count[0] & 504) != 448) - Add((unsigned char *) "\0",1); - - Add(finalcount,8); /* Should cause a SHA1Transform() */ - - } - - Done = true; - - // Transfer over the result - SHA1SumValue Value; - unsigned char res[20]; - for (unsigned i = 0; i < 20; i++) - { - res[i] = (unsigned char) - ((state[i >> 2] >> ((3 - (i & 3)) * 8)) & 255); - } - Value.Set(res); - return Value; -} - /*}}}*/ -// SHA1Summation::Add - Adds content of buffer into the checksum /*{{{*/ -// --------------------------------------------------------------------- -/* May not be called after Result() is called */ -bool SHA1Summation::Add(const unsigned char *data,unsigned long long len) -{ - if (Done) - return false; - if (len == 0) - return true; - - uint32_t *state = (uint32_t *)State; - uint32_t *count = (uint32_t *)Count; - uint8_t *buffer = (uint8_t *)Buffer; - uint32_t i,j; - - j = (count[0] >> 3) & 63; - if ((count[0] += len << 3) < (len << 3)) - count[1]++; - count[1] += (len >> 29); - if ((j + len) > 63) - { - memcpy(&buffer[j],data,(i = 64 - j)); - SHA1Transform(state,buffer); - for (; i + 63 < len; i += 64) - { - SHA1Transform(state,&data[i]); - } - j = 0; - } - else - i = 0; - memcpy(&buffer[j],&data[i],len - i); - - return true; -} - /*}}}*/ diff --git a/apt-pkg/contrib/sha1.h b/apt-pkg/contrib/sha1.h deleted file mode 100644 index 7149da97f..000000000 --- a/apt-pkg/contrib/sha1.h +++ /dev/null @@ -1,38 +0,0 @@ -// -*- mode: cpp; mode: fold -*- -// Description /*{{{*/ -/* ###################################################################### - - SHA1SumValue - Storage for a SHA-1 hash. - SHA1Summation - SHA-1 Secure Hash Algorithm. - - This is a C++ interface to a set of SHA1Sum functions, that mirrors - the equivalent MD5 classes. - - ##################################################################### */ - /*}}}*/ -#ifndef APTPKG_SHA1_H -#define APTPKG_SHA1_H - -#include "hashsum_template.h" - - -typedef HashSumValue<160> SHA1SumValue; - -class SHA1Summation : public SummationImplementation -{ - /* assumes 64-bit alignment just in case */ - unsigned char Buffer[64] __attribute__((aligned(8))); - unsigned char State[5*4] __attribute__((aligned(8))); - unsigned char Count[2*4] __attribute__((aligned(8))); - bool Done; - - public: - bool Add(const unsigned char *inbuf, unsigned long long inlen) APT_OVERRIDE APT_NONNULL(2); - using SummationImplementation::Add; - - SHA1SumValue Result(); - - SHA1Summation(); -}; - -#endif diff --git a/apt-pkg/contrib/sha2.h b/apt-pkg/contrib/sha2.h deleted file mode 100644 index 5489007a2..000000000 --- a/apt-pkg/contrib/sha2.h +++ /dev/null @@ -1,103 +0,0 @@ -// -*- mode: cpp; mode: fold -*- -// Description /*{{{*/ -/* ###################################################################### - - SHA{512,256}SumValue - Storage for a SHA-{512,256} hash. - SHA{512,256}Summation - SHA-{512,256} Secure Hash Algorithm. - - This is a C++ interface to a set of SHA{512,256}Sum functions, that mirrors - the equivalent MD5 & SHA1 classes. - - ##################################################################### */ - /*}}}*/ -#ifndef APTPKG_SHA2_H -#define APTPKG_SHA2_H - -#include <cstring> - -#include "hashsum_template.h" -#include "sha2_internal.h" - - - -typedef HashSumValue<512> SHA512SumValue; -typedef HashSumValue<256> SHA256SumValue; - -class SHA2SummationBase : public SummationImplementation -{ - protected: - bool Done; - public: - bool Add(const unsigned char *inbuf, unsigned long long len) APT_OVERRIDE APT_NONNULL(2) = 0; - - void Result(); -}; - -class SHA256Summation : public SHA2SummationBase -{ - SHA256_CTX ctx; - unsigned char Sum[32]; - - public: - bool Add(const unsigned char *inbuf, unsigned long long len) APT_OVERRIDE APT_NONNULL(2) - { - if (Done) - return false; - SHA256_Update(&ctx, inbuf, len); - return true; - }; - using SummationImplementation::Add; - - SHA256SumValue Result() - { - if (!Done) { - SHA256_Final(Sum, &ctx); - Done = true; - } - SHA256SumValue res; - res.Set(Sum); - return res; - }; - SHA256Summation() - { - SHA256_Init(&ctx); - Done = false; - memset(&Sum, 0, sizeof(Sum)); - }; -}; - -class SHA512Summation : public SHA2SummationBase -{ - SHA512_CTX ctx; - unsigned char Sum[64]; - - public: - bool Add(const unsigned char *inbuf, unsigned long long len) APT_OVERRIDE APT_NONNULL(2) - { - if (Done) - return false; - SHA512_Update(&ctx, inbuf, len); - return true; - }; - using SummationImplementation::Add; - - SHA512SumValue Result() - { - if (!Done) { - SHA512_Final(Sum, &ctx); - Done = true; - } - SHA512SumValue res; - res.Set(Sum); - return res; - }; - SHA512Summation() - { - SHA512_Init(&ctx); - Done = false; - memset(&Sum, 0, sizeof(Sum)); - }; -}; - - -#endif diff --git a/apt-pkg/contrib/sha256.h b/apt-pkg/contrib/sha256.h deleted file mode 100644 index 15146c948..000000000 --- a/apt-pkg/contrib/sha256.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef APTPKG_SHA256_H -#define APTPKG_SHA256_H - -#include "sha2.h" - -#warning "This header is deprecated, please include sha2.h instead" - -#endif diff --git a/apt-pkg/contrib/sha2_internal.cc b/apt-pkg/contrib/sha2_internal.cc deleted file mode 100644 index 92a4a8619..000000000 --- a/apt-pkg/contrib/sha2_internal.cc +++ /dev/null @@ -1,1089 +0,0 @@ -/* - * FILE: sha2.c - * AUTHOR: Aaron D. Gifford - http://www.aarongifford.com/ - * - * Copyright (c) 2000-2001, Aaron D. Gifford - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the copyright holder nor the names of contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTOR(S) ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTOR(S) BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - */ -#include <config.h> - -#include "sha2_internal.h" -#include <assert.h> /* assert() */ -#include <endian.h> -#include <string.h> /* memcpy()/memset() or bcopy()/bzero() */ - -/* - * ASSERT NOTE: - * Some sanity checking code is included using assert(). On my FreeBSD - * system, this additional code can be removed by compiling with NDEBUG - * defined. Check your own systems manpage on assert() to see how to - * compile WITHOUT the sanity checking code on your system. - * - * UNROLLED TRANSFORM LOOP NOTE: - * You can define SHA2_UNROLL_TRANSFORM to use the unrolled transform - * loop version for the hash transform rounds (defined using macros - * later in this file). Either define on the command line, for example: - * - * cc -DSHA2_UNROLL_TRANSFORM -o sha2 sha2.c sha2prog.c - * - * or define below: - * - * #define SHA2_UNROLL_TRANSFORM - * - */ - - -/*** SHA-256/384/512 Machine Architecture Definitions *****************/ -/* - * BYTE_ORDER NOTE: - * - * Please make sure that your system defines BYTE_ORDER. If your - * architecture is little-endian, make sure it also defines - * LITTLE_ENDIAN and that the two (BYTE_ORDER and LITTLE_ENDIAN) are - * equivalent. - * - * If your system does not define the above, then you can do so by - * hand like this: - * - * #define LITTLE_ENDIAN 1234 - * #define BIG_ENDIAN 4321 - * - * And for little-endian machines, add: - * - * #define BYTE_ORDER LITTLE_ENDIAN - * - * Or for big-endian machines: - * - * #define BYTE_ORDER BIG_ENDIAN - * - * The FreeBSD machine this was written on defines BYTE_ORDER - * appropriately by including <sys/types.h> (which in turn includes - * <machine/endian.h> where the appropriate definitions are actually - * made). - */ -#if !defined(BYTE_ORDER) || (BYTE_ORDER != LITTLE_ENDIAN && BYTE_ORDER != BIG_ENDIAN) -#error Define BYTE_ORDER to be equal to either LITTLE_ENDIAN or BIG_ENDIAN -#endif - -/* - * Define the followingsha2_* types to types of the correct length on - * the native architecture. Most BSD systems and Linux define u_intXX_t - * types. Machines with very recent ANSI C headers, can use the - * uintXX_t definintions from inttypes.h by defining SHA2_USE_INTTYPES_H - * during compile or in the sha.h header file. - * - * Machines that support neither u_intXX_t nor inttypes.h's uintXX_t - * will need to define these three typedefs below (and the appropriate - * ones in sha.h too) by hand according to their system architecture. - * - * Thank you, Jun-ichiro itojun Hagino, for suggesting using u_intXX_t - * types and pointing out recent ANSI C support for uintXX_t in inttypes.h. - */ -#ifdef SHA2_USE_INTTYPES_H - -typedef uint8_t sha2_byte; /* Exactly 1 byte */ -typedef uint32_t sha2_word32; /* Exactly 4 bytes */ -typedef uint64_t sha2_word64; /* Exactly 8 bytes */ - -#else /* SHA2_USE_INTTYPES_H */ - -typedef u_int8_t sha2_byte; /* Exactly 1 byte */ -typedef u_int32_t sha2_word32; /* Exactly 4 bytes */ -typedef u_int64_t sha2_word64; /* Exactly 8 bytes */ - -#endif /* SHA2_USE_INTTYPES_H */ - - -/*** SHA-256/384/512 Various Length Definitions ***********************/ -/* NOTE: Most of these are in sha2.h */ -#define SHA256_SHORT_BLOCK_LENGTH (SHA256_BLOCK_LENGTH - 8) -#define SHA384_SHORT_BLOCK_LENGTH (SHA384_BLOCK_LENGTH - 16) -#define SHA512_SHORT_BLOCK_LENGTH (SHA512_BLOCK_LENGTH - 16) - - -/*** ENDIAN REVERSAL MACROS *******************************************/ -#if BYTE_ORDER == LITTLE_ENDIAN -#if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) -#define REVERSE32(w,x) { \ - (x) = __builtin_bswap32(w); \ -} -#define REVERSE64(w,x) { \ - (x) = __builtin_bswap64(w); \ -} -#else -#define REVERSE32(w,x) { \ - sha2_word32 tmp = (w); \ - tmp = (tmp >> 16) | (tmp << 16); \ - (x) = ((tmp & 0xff00ff00UL) >> 8) | ((tmp & 0x00ff00ffUL) << 8); \ -} -#define REVERSE64(w,x) { \ - sha2_word64 tmp = (w); \ - tmp = (tmp >> 32) | (tmp << 32); \ - tmp = ((tmp & 0xff00ff00ff00ff00ULL) >> 8) | \ - ((tmp & 0x00ff00ff00ff00ffULL) << 8); \ - (x) = ((tmp & 0xffff0000ffff0000ULL) >> 16) | \ - ((tmp & 0x0000ffff0000ffffULL) << 16); \ -} -#endif -#endif /* BYTE_ORDER == LITTLE_ENDIAN */ - -/* - * Macro for incrementally adding the unsigned 64-bit integer n to the - * unsigned 128-bit integer (represented using a two-element array of - * 64-bit words): - */ -#define ADDINC128(w,n) { \ - (w)[0] += (sha2_word64)(n); \ - if ((w)[0] < (n)) { \ - (w)[1]++; \ - } \ -} - -/* - * Macros for copying blocks of memory and for zeroing out ranges - * of memory. Using these macros makes it easy to switch from - * using memset()/memcpy() and using bzero()/bcopy(). - * - * Please define either SHA2_USE_MEMSET_MEMCPY or define - * SHA2_USE_BZERO_BCOPY depending on which function set you - * choose to use: - */ -#if !defined(SHA2_USE_MEMSET_MEMCPY) && !defined(SHA2_USE_BZERO_BCOPY) -/* Default to memset()/memcpy() if no option is specified */ -#define SHA2_USE_MEMSET_MEMCPY 1 -#endif -#if defined(SHA2_USE_MEMSET_MEMCPY) && defined(SHA2_USE_BZERO_BCOPY) -/* Abort with an error if BOTH options are defined */ -#error Define either SHA2_USE_MEMSET_MEMCPY or SHA2_USE_BZERO_BCOPY, not both! -#endif - -#ifdef SHA2_USE_MEMSET_MEMCPY -#define MEMSET_BZERO(p,l) memset((p), 0, (l)) -#define MEMCPY_BCOPY(d,s,l) memcpy((d), (s), (l)) -#endif -#ifdef SHA2_USE_BZERO_BCOPY -#define MEMSET_BZERO(p,l) bzero((p), (l)) -#define MEMCPY_BCOPY(d,s,l) bcopy((s), (d), (l)) -#endif - - -/*** THE SIX LOGICAL FUNCTIONS ****************************************/ -/* - * Bit shifting and rotation (used by the six SHA-XYZ logical functions: - * - * NOTE: The naming of R and S appears backwards here (R is a SHIFT and - * S is a ROTATION) because the SHA-256/384/512 description document - * (see http://csrc.nist.gov/cryptval/shs/sha256-384-512.pdf) uses this - * same "backwards" definition. - */ -/* Shift-right (used in SHA-256, SHA-384, and SHA-512): */ -#define R(b,x) ((x) >> (b)) -/* 32-bit Rotate-right (used in SHA-256): */ -#define S32(b,x) (((x) >> (b)) | ((x) << (32 - (b)))) -/* 64-bit Rotate-right (used in SHA-384 and SHA-512): */ -#define S64(b,x) (((x) >> (b)) | ((x) << (64 - (b)))) - -/* Two of six logical functions used in SHA-256, SHA-384, and SHA-512: */ -#define Ch(x,y,z) (((x) & (y)) ^ ((~(x)) & (z))) -#define Maj(x,y,z) (((x) & (y)) ^ ((x) & (z)) ^ ((y) & (z))) - -/* Four of six logical functions used in SHA-256: */ -#define Sigma0_256(x) (S32(2, (x)) ^ S32(13, (x)) ^ S32(22, (x))) -#define Sigma1_256(x) (S32(6, (x)) ^ S32(11, (x)) ^ S32(25, (x))) -#define sigma0_256(x) (S32(7, (x)) ^ S32(18, (x)) ^ R(3 , (x))) -#define sigma1_256(x) (S32(17, (x)) ^ S32(19, (x)) ^ R(10, (x))) - -/* Four of six logical functions used in SHA-384 and SHA-512: */ -#define Sigma0_512(x) (S64(28, (x)) ^ S64(34, (x)) ^ S64(39, (x))) -#define Sigma1_512(x) (S64(14, (x)) ^ S64(18, (x)) ^ S64(41, (x))) -#define sigma0_512(x) (S64( 1, (x)) ^ S64( 8, (x)) ^ R( 7, (x))) -#define sigma1_512(x) (S64(19, (x)) ^ S64(61, (x)) ^ R( 6, (x))) - -/*** INTERNAL FUNCTION PROTOTYPES *************************************/ -/* NOTE: These should not be accessed directly from outside this - * library -- they are intended for private internal visibility/use - * only. - */ -static void SHA512_Last(SHA512_CTX*); -static void SHA256_Transform(SHA256_CTX*, const sha2_word32*); -static void SHA512_Transform(SHA512_CTX*, const sha2_word64*); - - -/*** SHA-XYZ INITIAL HASH VALUES AND CONSTANTS ************************/ -/* Hash constant words K for SHA-256: */ -const static sha2_word32 K256[64] = { - 0x428a2f98UL, 0x71374491UL, 0xb5c0fbcfUL, 0xe9b5dba5UL, - 0x3956c25bUL, 0x59f111f1UL, 0x923f82a4UL, 0xab1c5ed5UL, - 0xd807aa98UL, 0x12835b01UL, 0x243185beUL, 0x550c7dc3UL, - 0x72be5d74UL, 0x80deb1feUL, 0x9bdc06a7UL, 0xc19bf174UL, - 0xe49b69c1UL, 0xefbe4786UL, 0x0fc19dc6UL, 0x240ca1ccUL, - 0x2de92c6fUL, 0x4a7484aaUL, 0x5cb0a9dcUL, 0x76f988daUL, - 0x983e5152UL, 0xa831c66dUL, 0xb00327c8UL, 0xbf597fc7UL, - 0xc6e00bf3UL, 0xd5a79147UL, 0x06ca6351UL, 0x14292967UL, - 0x27b70a85UL, 0x2e1b2138UL, 0x4d2c6dfcUL, 0x53380d13UL, - 0x650a7354UL, 0x766a0abbUL, 0x81c2c92eUL, 0x92722c85UL, - 0xa2bfe8a1UL, 0xa81a664bUL, 0xc24b8b70UL, 0xc76c51a3UL, - 0xd192e819UL, 0xd6990624UL, 0xf40e3585UL, 0x106aa070UL, - 0x19a4c116UL, 0x1e376c08UL, 0x2748774cUL, 0x34b0bcb5UL, - 0x391c0cb3UL, 0x4ed8aa4aUL, 0x5b9cca4fUL, 0x682e6ff3UL, - 0x748f82eeUL, 0x78a5636fUL, 0x84c87814UL, 0x8cc70208UL, - 0x90befffaUL, 0xa4506cebUL, 0xbef9a3f7UL, 0xc67178f2UL -}; - -/* Initial hash value H for SHA-256: */ -const static sha2_word32 sha256_initial_hash_value[8] = { - 0x6a09e667UL, - 0xbb67ae85UL, - 0x3c6ef372UL, - 0xa54ff53aUL, - 0x510e527fUL, - 0x9b05688cUL, - 0x1f83d9abUL, - 0x5be0cd19UL -}; - -/* Hash constant words K for SHA-384 and SHA-512: */ -const static sha2_word64 K512[80] = { - 0x428a2f98d728ae22ULL, 0x7137449123ef65cdULL, - 0xb5c0fbcfec4d3b2fULL, 0xe9b5dba58189dbbcULL, - 0x3956c25bf348b538ULL, 0x59f111f1b605d019ULL, - 0x923f82a4af194f9bULL, 0xab1c5ed5da6d8118ULL, - 0xd807aa98a3030242ULL, 0x12835b0145706fbeULL, - 0x243185be4ee4b28cULL, 0x550c7dc3d5ffb4e2ULL, - 0x72be5d74f27b896fULL, 0x80deb1fe3b1696b1ULL, - 0x9bdc06a725c71235ULL, 0xc19bf174cf692694ULL, - 0xe49b69c19ef14ad2ULL, 0xefbe4786384f25e3ULL, - 0x0fc19dc68b8cd5b5ULL, 0x240ca1cc77ac9c65ULL, - 0x2de92c6f592b0275ULL, 0x4a7484aa6ea6e483ULL, - 0x5cb0a9dcbd41fbd4ULL, 0x76f988da831153b5ULL, - 0x983e5152ee66dfabULL, 0xa831c66d2db43210ULL, - 0xb00327c898fb213fULL, 0xbf597fc7beef0ee4ULL, - 0xc6e00bf33da88fc2ULL, 0xd5a79147930aa725ULL, - 0x06ca6351e003826fULL, 0x142929670a0e6e70ULL, - 0x27b70a8546d22ffcULL, 0x2e1b21385c26c926ULL, - 0x4d2c6dfc5ac42aedULL, 0x53380d139d95b3dfULL, - 0x650a73548baf63deULL, 0x766a0abb3c77b2a8ULL, - 0x81c2c92e47edaee6ULL, 0x92722c851482353bULL, - 0xa2bfe8a14cf10364ULL, 0xa81a664bbc423001ULL, - 0xc24b8b70d0f89791ULL, 0xc76c51a30654be30ULL, - 0xd192e819d6ef5218ULL, 0xd69906245565a910ULL, - 0xf40e35855771202aULL, 0x106aa07032bbd1b8ULL, - 0x19a4c116b8d2d0c8ULL, 0x1e376c085141ab53ULL, - 0x2748774cdf8eeb99ULL, 0x34b0bcb5e19b48a8ULL, - 0x391c0cb3c5c95a63ULL, 0x4ed8aa4ae3418acbULL, - 0x5b9cca4f7763e373ULL, 0x682e6ff3d6b2b8a3ULL, - 0x748f82ee5defb2fcULL, 0x78a5636f43172f60ULL, - 0x84c87814a1f0ab72ULL, 0x8cc702081a6439ecULL, - 0x90befffa23631e28ULL, 0xa4506cebde82bde9ULL, - 0xbef9a3f7b2c67915ULL, 0xc67178f2e372532bULL, - 0xca273eceea26619cULL, 0xd186b8c721c0c207ULL, - 0xeada7dd6cde0eb1eULL, 0xf57d4f7fee6ed178ULL, - 0x06f067aa72176fbaULL, 0x0a637dc5a2c898a6ULL, - 0x113f9804bef90daeULL, 0x1b710b35131c471bULL, - 0x28db77f523047d84ULL, 0x32caab7b40c72493ULL, - 0x3c9ebe0a15c9bebcULL, 0x431d67c49c100d4cULL, - 0x4cc5d4becb3e42b6ULL, 0x597f299cfc657e2aULL, - 0x5fcb6fab3ad6faecULL, 0x6c44198c4a475817ULL -}; - -/* Initial hash value H for SHA-384 */ -const static sha2_word64 sha384_initial_hash_value[8] = { - 0xcbbb9d5dc1059ed8ULL, - 0x629a292a367cd507ULL, - 0x9159015a3070dd17ULL, - 0x152fecd8f70e5939ULL, - 0x67332667ffc00b31ULL, - 0x8eb44a8768581511ULL, - 0xdb0c2e0d64f98fa7ULL, - 0x47b5481dbefa4fa4ULL -}; - -/* Initial hash value H for SHA-512 */ -const static sha2_word64 sha512_initial_hash_value[8] = { - 0x6a09e667f3bcc908ULL, - 0xbb67ae8584caa73bULL, - 0x3c6ef372fe94f82bULL, - 0xa54ff53a5f1d36f1ULL, - 0x510e527fade682d1ULL, - 0x9b05688c2b3e6c1fULL, - 0x1f83d9abfb41bd6bULL, - 0x5be0cd19137e2179ULL -}; - -/* - * Constant used by SHA256/384/512_End() functions for converting the - * digest to a readable hexadecimal character string: - */ -static const char *sha2_hex_digits = "0123456789abcdef"; - - -/*** SHA-256: *********************************************************/ -void SHA256_Init(SHA256_CTX* context) { - if (context == (SHA256_CTX*)0) { - return; - } - MEMCPY_BCOPY(context->state, sha256_initial_hash_value, SHA256_DIGEST_LENGTH); - MEMSET_BZERO(context->buffer, SHA256_BLOCK_LENGTH); - context->bitcount = 0; -} - -#ifdef SHA2_UNROLL_TRANSFORM - -/* Unrolled SHA-256 round macros: */ - -#if BYTE_ORDER == LITTLE_ENDIAN - -#define ROUND256_0_TO_15(a,b,c,d,e,f,g,h) \ - REVERSE32(*data++, W256[j]); \ - T1 = (h) + Sigma1_256(e) + Ch((e), (f), (g)) + \ - K256[j] + W256[j]; \ - (d) += T1; \ - (h) = T1 + Sigma0_256(a) + Maj((a), (b), (c)); \ - j++ - - -#else /* BYTE_ORDER == LITTLE_ENDIAN */ - -#define ROUND256_0_TO_15(a,b,c,d,e,f,g,h) \ - T1 = (h) + Sigma1_256(e) + Ch((e), (f), (g)) + \ - K256[j] + (W256[j] = *data++); \ - (d) += T1; \ - (h) = T1 + Sigma0_256(a) + Maj((a), (b), (c)); \ - j++ - -#endif /* BYTE_ORDER == LITTLE_ENDIAN */ - -#define ROUND256(a,b,c,d,e,f,g,h) \ - s0 = W256[(j+1)&0x0f]; \ - s0 = sigma0_256(s0); \ - s1 = W256[(j+14)&0x0f]; \ - s1 = sigma1_256(s1); \ - T1 = (h) + Sigma1_256(e) + Ch((e), (f), (g)) + K256[j] + \ - (W256[j&0x0f] += s1 + W256[(j+9)&0x0f] + s0); \ - (d) += T1; \ - (h) = T1 + Sigma0_256(a) + Maj((a), (b), (c)); \ - j++ - -static void SHA256_Transform(SHA256_CTX* context, const sha2_word32* data) { - sha2_word32 a, b, c, d, e, f, g, h, s0, s1; - sha2_word32 T1, *W256; - int j; - - W256 = (sha2_word32*)context->buffer; - - /* Initialize registers with the prev. intermediate value */ - a = context->state[0]; - b = context->state[1]; - c = context->state[2]; - d = context->state[3]; - e = context->state[4]; - f = context->state[5]; - g = context->state[6]; - h = context->state[7]; - - j = 0; - do { - /* Rounds 0 to 15 (unrolled): */ - ROUND256_0_TO_15(a,b,c,d,e,f,g,h); - ROUND256_0_TO_15(h,a,b,c,d,e,f,g); - ROUND256_0_TO_15(g,h,a,b,c,d,e,f); - ROUND256_0_TO_15(f,g,h,a,b,c,d,e); - ROUND256_0_TO_15(e,f,g,h,a,b,c,d); - ROUND256_0_TO_15(d,e,f,g,h,a,b,c); - ROUND256_0_TO_15(c,d,e,f,g,h,a,b); - ROUND256_0_TO_15(b,c,d,e,f,g,h,a); - } while (j < 16); - - /* Now for the remaining rounds to 64: */ - do { - ROUND256(a,b,c,d,e,f,g,h); - ROUND256(h,a,b,c,d,e,f,g); - ROUND256(g,h,a,b,c,d,e,f); - ROUND256(f,g,h,a,b,c,d,e); - ROUND256(e,f,g,h,a,b,c,d); - ROUND256(d,e,f,g,h,a,b,c); - ROUND256(c,d,e,f,g,h,a,b); - ROUND256(b,c,d,e,f,g,h,a); - } while (j < 64); - - /* Compute the current intermediate hash value */ - context->state[0] += a; - context->state[1] += b; - context->state[2] += c; - context->state[3] += d; - context->state[4] += e; - context->state[5] += f; - context->state[6] += g; - context->state[7] += h; - - /* Clean up */ - a = b = c = d = e = f = g = h = T1 = 0; -} - -#else /* SHA2_UNROLL_TRANSFORM */ - -static void SHA256_Transform(SHA256_CTX* context, const sha2_word32* data) { - sha2_word32 a, b, c, d, e, f, g, h, s0, s1; - sha2_word32 T1, T2, *W256; - int j; - - W256 = (sha2_word32*)context->buffer; - - /* Initialize registers with the prev. intermediate value */ - a = context->state[0]; - b = context->state[1]; - c = context->state[2]; - d = context->state[3]; - e = context->state[4]; - f = context->state[5]; - g = context->state[6]; - h = context->state[7]; - - j = 0; - do { -#if BYTE_ORDER == LITTLE_ENDIAN - /* Copy data while converting to host byte order */ - REVERSE32(*data++,W256[j]); - /* Apply the SHA-256 compression function to update a..h */ - T1 = h + Sigma1_256(e) + Ch(e, f, g) + K256[j] + W256[j]; -#else /* BYTE_ORDER == LITTLE_ENDIAN */ - /* Apply the SHA-256 compression function to update a..h with copy */ - T1 = h + Sigma1_256(e) + Ch(e, f, g) + K256[j] + (W256[j] = *data++); -#endif /* BYTE_ORDER == LITTLE_ENDIAN */ - T2 = Sigma0_256(a) + Maj(a, b, c); - h = g; - g = f; - f = e; - e = d + T1; - d = c; - c = b; - b = a; - a = T1 + T2; - - j++; - } while (j < 16); - - do { - /* Part of the message block expansion: */ - s0 = W256[(j+1)&0x0f]; - s0 = sigma0_256(s0); - s1 = W256[(j+14)&0x0f]; - s1 = sigma1_256(s1); - - /* Apply the SHA-256 compression function to update a..h */ - T1 = h + Sigma1_256(e) + Ch(e, f, g) + K256[j] + - (W256[j&0x0f] += s1 + W256[(j+9)&0x0f] + s0); - T2 = Sigma0_256(a) + Maj(a, b, c); - h = g; - g = f; - f = e; - e = d + T1; - d = c; - c = b; - b = a; - a = T1 + T2; - - j++; - } while (j < 64); - - /* Compute the current intermediate hash value */ - context->state[0] += a; - context->state[1] += b; - context->state[2] += c; - context->state[3] += d; - context->state[4] += e; - context->state[5] += f; - context->state[6] += g; - context->state[7] += h; - - /* Clean up */ - a = b = c = d = e = f = g = h = T1 = T2 = 0; -} - -#endif /* SHA2_UNROLL_TRANSFORM */ - -void SHA256_Update(SHA256_CTX* context, const sha2_byte *data, size_t len) { - unsigned int freespace, usedspace; - - if (len == 0) { - /* Calling with no data is valid - we do nothing */ - return; - } - - /* Sanity check: */ - assert(context != (SHA256_CTX*)0 && data != (sha2_byte*)0); - - usedspace = (context->bitcount >> 3) % SHA256_BLOCK_LENGTH; - if (usedspace > 0) { - /* Calculate how much free space is available in the buffer */ - freespace = SHA256_BLOCK_LENGTH - usedspace; - - if (len >= freespace) { - /* Fill the buffer completely and process it */ - MEMCPY_BCOPY(&context->buffer[usedspace], data, freespace); - context->bitcount += freespace << 3; - len -= freespace; - data += freespace; - SHA256_Transform(context, (sha2_word32*)context->buffer); - } else { - /* The buffer is not yet full */ - MEMCPY_BCOPY(&context->buffer[usedspace], data, len); - context->bitcount += len << 3; - /* Clean up: */ - usedspace = freespace = 0; - return; - } - } - while (len >= SHA256_BLOCK_LENGTH) { - /* Process as many complete blocks as we can */ - sha2_byte buffer[SHA256_BLOCK_LENGTH]; - MEMCPY_BCOPY(buffer, data, SHA256_BLOCK_LENGTH); - SHA256_Transform(context, (sha2_word32*)buffer); - context->bitcount += SHA256_BLOCK_LENGTH << 3; - len -= SHA256_BLOCK_LENGTH; - data += SHA256_BLOCK_LENGTH; - } - if (len > 0) { - /* There's left-overs, so save 'em */ - MEMCPY_BCOPY(context->buffer, data, len); - context->bitcount += len << 3; - } - /* Clean up: */ - usedspace = freespace = 0; -} - -void SHA256_Final(sha2_byte digest[], SHA256_CTX* context) { - sha2_word32 *d = (sha2_word32*)digest; - unsigned int usedspace; - - /* Sanity check: */ - assert(context != (SHA256_CTX*)0); - - /* If no digest buffer is passed, we don't bother doing this: */ - if (digest != (sha2_byte*)0) { - usedspace = (context->bitcount >> 3) % SHA256_BLOCK_LENGTH; -#if BYTE_ORDER == LITTLE_ENDIAN - /* Convert FROM host byte order */ - REVERSE64(context->bitcount,context->bitcount); -#endif - if (usedspace > 0) { - /* Begin padding with a 1 bit: */ - context->buffer[usedspace++] = 0x80; - - if (usedspace <= SHA256_SHORT_BLOCK_LENGTH) { - /* Set-up for the last transform: */ - MEMSET_BZERO(&context->buffer[usedspace], SHA256_SHORT_BLOCK_LENGTH - usedspace); - } else { - if (usedspace < SHA256_BLOCK_LENGTH) { - MEMSET_BZERO(&context->buffer[usedspace], SHA256_BLOCK_LENGTH - usedspace); - } - /* Do second-to-last transform: */ - SHA256_Transform(context, (sha2_word32*)context->buffer); - - /* And set-up for the last transform: */ - MEMSET_BZERO(context->buffer, SHA256_SHORT_BLOCK_LENGTH); - } - } else { - /* Set-up for the last transform: */ - MEMSET_BZERO(context->buffer, SHA256_SHORT_BLOCK_LENGTH); - - /* Begin padding with a 1 bit: */ - *context->buffer = 0x80; - } - /* Set the bit count: */ - union { - sha2_byte* c; - sha2_word64* l; - } bitcount; - bitcount.c = &context->buffer[SHA256_SHORT_BLOCK_LENGTH]; - *(bitcount.l) = context->bitcount; - - /* Final transform: */ - SHA256_Transform(context, (sha2_word32*)context->buffer); - -#if BYTE_ORDER == LITTLE_ENDIAN - { - /* Convert TO host byte order */ - int j; - for (j = 0; j < 8; j++) { - REVERSE32(context->state[j],context->state[j]); - *d++ = context->state[j]; - } - } -#else - MEMCPY_BCOPY(d, context->state, SHA256_DIGEST_LENGTH); -#endif - } - - /* Clean up state data: */ - MEMSET_BZERO(context, sizeof(*context)); - usedspace = 0; -} - -char *SHA256_End(SHA256_CTX* context, char buffer[]) { - sha2_byte digest[SHA256_DIGEST_LENGTH], *d = digest; - int i; - - /* Sanity check: */ - assert(context != (SHA256_CTX*)0); - - if (buffer != (char*)0) { - SHA256_Final(digest, context); - - for (i = 0; i < SHA256_DIGEST_LENGTH; i++) { - *buffer++ = sha2_hex_digits[(*d & 0xf0) >> 4]; - *buffer++ = sha2_hex_digits[*d & 0x0f]; - d++; - } - *buffer = (char)0; - } else { - MEMSET_BZERO(context, sizeof(*context)); - } - MEMSET_BZERO(digest, SHA256_DIGEST_LENGTH); - return buffer; -} - -char* SHA256_Data(const sha2_byte* data, size_t len, char digest[SHA256_DIGEST_STRING_LENGTH]) { - SHA256_CTX context; - - SHA256_Init(&context); - SHA256_Update(&context, data, len); - return SHA256_End(&context, digest); -} - - -/*** SHA-512: *********************************************************/ -void SHA512_Init(SHA512_CTX* context) { - if (context == (SHA512_CTX*)0) { - return; - } - MEMCPY_BCOPY(context->state, sha512_initial_hash_value, SHA512_DIGEST_LENGTH); - MEMSET_BZERO(context->buffer, SHA512_BLOCK_LENGTH); - context->bitcount[0] = context->bitcount[1] = 0; -} - -#ifdef SHA2_UNROLL_TRANSFORM - -/* Unrolled SHA-512 round macros: */ -#if BYTE_ORDER == LITTLE_ENDIAN - -#define ROUND512_0_TO_15(a,b,c,d,e,f,g,h) \ - REVERSE64(*data++, W512[j]); \ - T1 = (h) + Sigma1_512(e) + Ch((e), (f), (g)) + \ - K512[j] + W512[j]; \ - (d) += T1, \ - (h) = T1 + Sigma0_512(a) + Maj((a), (b), (c)), \ - j++ - - -#else /* BYTE_ORDER == LITTLE_ENDIAN */ - -#define ROUND512_0_TO_15(a,b,c,d,e,f,g,h) \ - T1 = (h) + Sigma1_512(e) + Ch((e), (f), (g)) + \ - K512[j] + (W512[j] = *data++); \ - (d) += T1; \ - (h) = T1 + Sigma0_512(a) + Maj((a), (b), (c)); \ - j++ - -#endif /* BYTE_ORDER == LITTLE_ENDIAN */ - -#define ROUND512(a,b,c,d,e,f,g,h) \ - s0 = W512[(j+1)&0x0f]; \ - s0 = sigma0_512(s0); \ - s1 = W512[(j+14)&0x0f]; \ - s1 = sigma1_512(s1); \ - T1 = (h) + Sigma1_512(e) + Ch((e), (f), (g)) + K512[j] + \ - (W512[j&0x0f] += s1 + W512[(j+9)&0x0f] + s0); \ - (d) += T1; \ - (h) = T1 + Sigma0_512(a) + Maj((a), (b), (c)); \ - j++ - -static void SHA512_Transform(SHA512_CTX* context, const sha2_word64* data) { - sha2_word64 a, b, c, d, e, f, g, h, s0, s1; - sha2_word64 T1, *W512 = (sha2_word64*)context->buffer; - int j; - - /* Initialize registers with the prev. intermediate value */ - a = context->state[0]; - b = context->state[1]; - c = context->state[2]; - d = context->state[3]; - e = context->state[4]; - f = context->state[5]; - g = context->state[6]; - h = context->state[7]; - - j = 0; - do { - ROUND512_0_TO_15(a,b,c,d,e,f,g,h); - ROUND512_0_TO_15(h,a,b,c,d,e,f,g); - ROUND512_0_TO_15(g,h,a,b,c,d,e,f); - ROUND512_0_TO_15(f,g,h,a,b,c,d,e); - ROUND512_0_TO_15(e,f,g,h,a,b,c,d); - ROUND512_0_TO_15(d,e,f,g,h,a,b,c); - ROUND512_0_TO_15(c,d,e,f,g,h,a,b); - ROUND512_0_TO_15(b,c,d,e,f,g,h,a); - } while (j < 16); - - /* Now for the remaining rounds up to 79: */ - do { - ROUND512(a,b,c,d,e,f,g,h); - ROUND512(h,a,b,c,d,e,f,g); - ROUND512(g,h,a,b,c,d,e,f); - ROUND512(f,g,h,a,b,c,d,e); - ROUND512(e,f,g,h,a,b,c,d); - ROUND512(d,e,f,g,h,a,b,c); - ROUND512(c,d,e,f,g,h,a,b); - ROUND512(b,c,d,e,f,g,h,a); - } while (j < 80); - - /* Compute the current intermediate hash value */ - context->state[0] += a; - context->state[1] += b; - context->state[2] += c; - context->state[3] += d; - context->state[4] += e; - context->state[5] += f; - context->state[6] += g; - context->state[7] += h; - - /* Clean up */ - a = b = c = d = e = f = g = h = T1 = 0; -} - -#else /* SHA2_UNROLL_TRANSFORM */ - -static void SHA512_Transform(SHA512_CTX* context, const sha2_word64* data) { - sha2_word64 a, b, c, d, e, f, g, h, s0, s1; - sha2_word64 T1, T2, *W512 = (sha2_word64*)context->buffer; - int j; - - /* Initialize registers with the prev. intermediate value */ - a = context->state[0]; - b = context->state[1]; - c = context->state[2]; - d = context->state[3]; - e = context->state[4]; - f = context->state[5]; - g = context->state[6]; - h = context->state[7]; - - j = 0; - do { -#if BYTE_ORDER == LITTLE_ENDIAN - /* Convert TO host byte order */ - REVERSE64(*data++, W512[j]); - /* Apply the SHA-512 compression function to update a..h */ - T1 = h + Sigma1_512(e) + Ch(e, f, g) + K512[j] + W512[j]; -#else /* BYTE_ORDER == LITTLE_ENDIAN */ - /* Apply the SHA-512 compression function to update a..h with copy */ - T1 = h + Sigma1_512(e) + Ch(e, f, g) + K512[j] + (W512[j] = *data++); -#endif /* BYTE_ORDER == LITTLE_ENDIAN */ - T2 = Sigma0_512(a) + Maj(a, b, c); - h = g; - g = f; - f = e; - e = d + T1; - d = c; - c = b; - b = a; - a = T1 + T2; - - j++; - } while (j < 16); - - do { - /* Part of the message block expansion: */ - s0 = W512[(j+1)&0x0f]; - s0 = sigma0_512(s0); - s1 = W512[(j+14)&0x0f]; - s1 = sigma1_512(s1); - - /* Apply the SHA-512 compression function to update a..h */ - T1 = h + Sigma1_512(e) + Ch(e, f, g) + K512[j] + - (W512[j&0x0f] += s1 + W512[(j+9)&0x0f] + s0); - T2 = Sigma0_512(a) + Maj(a, b, c); - h = g; - g = f; - f = e; - e = d + T1; - d = c; - c = b; - b = a; - a = T1 + T2; - - j++; - } while (j < 80); - - /* Compute the current intermediate hash value */ - context->state[0] += a; - context->state[1] += b; - context->state[2] += c; - context->state[3] += d; - context->state[4] += e; - context->state[5] += f; - context->state[6] += g; - context->state[7] += h; - - /* Clean up */ - a = b = c = d = e = f = g = h = T1 = T2 = 0; -} - -#endif /* SHA2_UNROLL_TRANSFORM */ - -void SHA512_Update(SHA512_CTX* context, const sha2_byte *data, size_t len) { - unsigned int freespace, usedspace; - - if (len == 0) { - /* Calling with no data is valid - we do nothing */ - return; - } - - /* Sanity check: */ - assert(context != (SHA512_CTX*)0 && data != (sha2_byte*)0); - - usedspace = (context->bitcount[0] >> 3) % SHA512_BLOCK_LENGTH; - if (usedspace > 0) { - /* Calculate how much free space is available in the buffer */ - freespace = SHA512_BLOCK_LENGTH - usedspace; - - if (len >= freespace) { - /* Fill the buffer completely and process it */ - MEMCPY_BCOPY(&context->buffer[usedspace], data, freespace); - ADDINC128(context->bitcount, freespace << 3); - len -= freespace; - data += freespace; - SHA512_Transform(context, (sha2_word64*)context->buffer); - } else { - /* The buffer is not yet full */ - MEMCPY_BCOPY(&context->buffer[usedspace], data, len); - ADDINC128(context->bitcount, len << 3); - /* Clean up: */ - usedspace = freespace = 0; - return; - } - } - while (len >= SHA512_BLOCK_LENGTH) { - /* Process as many complete blocks as we can */ - sha2_byte buffer[SHA512_BLOCK_LENGTH]; - MEMCPY_BCOPY(buffer, data, SHA512_BLOCK_LENGTH); - SHA512_Transform(context, (sha2_word64*)buffer); - ADDINC128(context->bitcount, SHA512_BLOCK_LENGTH << 3); - len -= SHA512_BLOCK_LENGTH; - data += SHA512_BLOCK_LENGTH; - } - if (len > 0) { - /* There's left-overs, so save 'em */ - MEMCPY_BCOPY(context->buffer, data, len); - ADDINC128(context->bitcount, len << 3); - } - /* Clean up: */ - usedspace = freespace = 0; -} - -static void SHA512_Last(SHA512_CTX* context) { - unsigned int usedspace; - - usedspace = (context->bitcount[0] >> 3) % SHA512_BLOCK_LENGTH; -#if BYTE_ORDER == LITTLE_ENDIAN - /* Convert FROM host byte order */ - REVERSE64(context->bitcount[0],context->bitcount[0]); - REVERSE64(context->bitcount[1],context->bitcount[1]); -#endif - if (usedspace > 0) { - /* Begin padding with a 1 bit: */ - context->buffer[usedspace++] = 0x80; - - if (usedspace <= SHA512_SHORT_BLOCK_LENGTH) { - /* Set-up for the last transform: */ - MEMSET_BZERO(&context->buffer[usedspace], SHA512_SHORT_BLOCK_LENGTH - usedspace); - } else { - if (usedspace < SHA512_BLOCK_LENGTH) { - MEMSET_BZERO(&context->buffer[usedspace], SHA512_BLOCK_LENGTH - usedspace); - } - /* Do second-to-last transform: */ - SHA512_Transform(context, (sha2_word64*)context->buffer); - - /* And set-up for the last transform: */ - MEMSET_BZERO(context->buffer, SHA512_BLOCK_LENGTH - 2); - } - } else { - /* Prepare for final transform: */ - MEMSET_BZERO(context->buffer, SHA512_SHORT_BLOCK_LENGTH); - - /* Begin padding with a 1 bit: */ - *context->buffer = 0x80; - } - /* Store the length of input data (in bits): */ - union { - sha2_byte* c; - sha2_word64* l; - } bitcount; - bitcount.c = &context->buffer[SHA512_SHORT_BLOCK_LENGTH]; - bitcount.l[0] = context->bitcount[1]; - bitcount.l[1] = context->bitcount[0]; - - /* Final transform: */ - SHA512_Transform(context, (sha2_word64*)context->buffer); -} - -void SHA512_Final(sha2_byte digest[], SHA512_CTX* context) { - sha2_word64 *d = (sha2_word64*)digest; - - /* Sanity check: */ - assert(context != (SHA512_CTX*)0); - - /* If no digest buffer is passed, we don't bother doing this: */ - if (digest != (sha2_byte*)0) { - SHA512_Last(context); - - /* Save the hash data for output: */ -#if BYTE_ORDER == LITTLE_ENDIAN - { - /* Convert TO host byte order */ - int j; - for (j = 0; j < 8; j++) { - REVERSE64(context->state[j],context->state[j]); - *d++ = context->state[j]; - } - } -#else - MEMCPY_BCOPY(d, context->state, SHA512_DIGEST_LENGTH); -#endif - } - - /* Zero out state data */ - MEMSET_BZERO(context, sizeof(*context)); -} - -char *SHA512_End(SHA512_CTX* context, char buffer[]) { - sha2_byte digest[SHA512_DIGEST_LENGTH], *d = digest; - int i; - - /* Sanity check: */ - assert(context != (SHA512_CTX*)0); - - if (buffer != (char*)0) { - SHA512_Final(digest, context); - - for (i = 0; i < SHA512_DIGEST_LENGTH; i++) { - *buffer++ = sha2_hex_digits[(*d & 0xf0) >> 4]; - *buffer++ = sha2_hex_digits[*d & 0x0f]; - d++; - } - *buffer = (char)0; - } else { - MEMSET_BZERO(context, sizeof(*context)); - } - MEMSET_BZERO(digest, SHA512_DIGEST_LENGTH); - return buffer; -} - -char* SHA512_Data(const sha2_byte* data, size_t len, char digest[SHA512_DIGEST_STRING_LENGTH]) { - SHA512_CTX context; - - SHA512_Init(&context); - SHA512_Update(&context, data, len); - return SHA512_End(&context, digest); -} - - -/*** SHA-384: *********************************************************/ -void SHA384_Init(SHA384_CTX* context) { - if (context == (SHA384_CTX*)0) { - return; - } - MEMCPY_BCOPY(context->state, sha384_initial_hash_value, SHA512_DIGEST_LENGTH); - MEMSET_BZERO(context->buffer, SHA384_BLOCK_LENGTH); - context->bitcount[0] = context->bitcount[1] = 0; -} - -void SHA384_Update(SHA384_CTX* context, const sha2_byte* data, size_t len) { - SHA512_Update((SHA512_CTX*)context, data, len); -} - -void SHA384_Final(sha2_byte digest[], SHA384_CTX* context) { - sha2_word64 *d = (sha2_word64*)digest; - - /* Sanity check: */ - assert(context != (SHA384_CTX*)0); - - /* If no digest buffer is passed, we don't bother doing this: */ - if (digest != (sha2_byte*)0) { - SHA512_Last((SHA512_CTX*)context); - - /* Save the hash data for output: */ -#if BYTE_ORDER == LITTLE_ENDIAN - { - /* Convert TO host byte order */ - int j; - for (j = 0; j < 6; j++) { - REVERSE64(context->state[j],context->state[j]); - *d++ = context->state[j]; - } - } -#else - MEMCPY_BCOPY(d, context->state, SHA384_DIGEST_LENGTH); -#endif - } - - /* Zero out state data */ - MEMSET_BZERO(context, sizeof(*context)); -} - -char *SHA384_End(SHA384_CTX* context, char buffer[]) { - sha2_byte digest[SHA384_DIGEST_LENGTH], *d = digest; - int i; - - /* Sanity check: */ - assert(context != (SHA384_CTX*)0); - - if (buffer != (char*)0) { - SHA384_Final(digest, context); - - for (i = 0; i < SHA384_DIGEST_LENGTH; i++) { - *buffer++ = sha2_hex_digits[(*d & 0xf0) >> 4]; - *buffer++ = sha2_hex_digits[*d & 0x0f]; - d++; - } - *buffer = (char)0; - } else { - MEMSET_BZERO(context, sizeof(*context)); - } - MEMSET_BZERO(digest, SHA384_DIGEST_LENGTH); - return buffer; -} - -char* SHA384_Data(const sha2_byte* data, size_t len, char digest[SHA384_DIGEST_STRING_LENGTH]) { - SHA384_CTX context; - - SHA384_Init(&context); - SHA384_Update(&context, data, len); - return SHA384_End(&context, digest); -} - diff --git a/apt-pkg/contrib/sha2_internal.h b/apt-pkg/contrib/sha2_internal.h deleted file mode 100644 index 78d1d3618..000000000 --- a/apt-pkg/contrib/sha2_internal.h +++ /dev/null @@ -1,188 +0,0 @@ -/* - * FILE: sha2.h - * AUTHOR: Aaron D. Gifford - http://www.aarongifford.com/ - * - * Copyright (c) 2000-2001, Aaron D. Gifford - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the copyright holder nor the names of contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTOR(S) ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTOR(S) BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - */ - -#ifndef __SHA2_H__ -#define __SHA2_H__ - -/* - * Import u_intXX_t size_t type definitions from system headers. You - * may need to change this, or define these things yourself in this - * file. - */ -#include <sys/types.h> - -#ifdef SHA2_USE_INTTYPES_H - -#include <inttypes.h> -#include <stddef.h> - -#endif /* SHA2_USE_INTTYPES_H */ - - -/*** SHA-256/384/512 Various Length Definitions ***********************/ -#define SHA256_BLOCK_LENGTH 64 -#define SHA256_DIGEST_LENGTH 32 -#define SHA256_DIGEST_STRING_LENGTH (SHA256_DIGEST_LENGTH * 2 + 1) -#define SHA384_BLOCK_LENGTH 128 -#define SHA384_DIGEST_LENGTH 48 -#define SHA384_DIGEST_STRING_LENGTH (SHA384_DIGEST_LENGTH * 2 + 1) -#define SHA512_BLOCK_LENGTH 128 -#define SHA512_DIGEST_LENGTH 64 -#define SHA512_DIGEST_STRING_LENGTH (SHA512_DIGEST_LENGTH * 2 + 1) - - -/*** SHA-256/384/512 Context Structures *******************************/ -/* NOTE: If your architecture does not define either u_intXX_t types or - * uintXX_t (from inttypes.h), you may need to define things by hand - * for your system: - */ -#if 0 -typedef unsigned char u_int8_t; /* 1-byte (8-bits) */ -typedef unsigned int u_int32_t; /* 4-bytes (32-bits) */ -typedef unsigned long long u_int64_t; /* 8-bytes (64-bits) */ -#endif -/* - * Most BSD systems already define u_intXX_t types, as does Linux. - * Some systems, however, like Compaq's Tru64 Unix instead can use - * uintXX_t types defined by very recent ANSI C standards and included - * in the file: - * - * #include <inttypes.h> - * - * If you choose to use <inttypes.h> then please define: - * - * #define SHA2_USE_INTTYPES_H - * - * Or on the command line during compile: - * - * cc -DSHA2_USE_INTTYPES_H ... - */ -#ifdef SHA2_USE_INTTYPES_H - -typedef struct _SHA256_CTX { - uint32_t state[8]; - uint64_t bitcount; - uint8_t buffer[SHA256_BLOCK_LENGTH]; -} SHA256_CTX; -typedef struct _SHA512_CTX { - uint64_t state[8]; - uint64_t bitcount[2]; - uint8_t buffer[SHA512_BLOCK_LENGTH]; -} SHA512_CTX; - -#else /* SHA2_USE_INTTYPES_H */ - -typedef struct _SHA256_CTX { - u_int32_t state[8]; - u_int64_t bitcount; - u_int8_t buffer[SHA256_BLOCK_LENGTH]; -} SHA256_CTX; -typedef struct _SHA512_CTX { - u_int64_t state[8]; - u_int64_t bitcount[2]; - u_int8_t buffer[SHA512_BLOCK_LENGTH]; -} SHA512_CTX; - -#endif /* SHA2_USE_INTTYPES_H */ - -typedef SHA512_CTX SHA384_CTX; - - -/*** SHA-256/384/512 Function Prototypes ******************************/ -#ifndef NOPROTO -#ifdef SHA2_USE_INTTYPES_H - -void SHA256_Init(SHA256_CTX *); -void SHA256_Update(SHA256_CTX*, const uint8_t*, size_t); -void SHA256_Final(uint8_t[SHA256_DIGEST_LENGTH], SHA256_CTX*); -char* SHA256_End(SHA256_CTX*, char[SHA256_DIGEST_STRING_LENGTH]); -char* SHA256_Data(const uint8_t*, size_t, char[SHA256_DIGEST_STRING_LENGTH]); - -void SHA384_Init(SHA384_CTX*); -void SHA384_Update(SHA384_CTX*, const uint8_t*, size_t); -void SHA384_Final(uint8_t[SHA384_DIGEST_LENGTH], SHA384_CTX*); -char* SHA384_End(SHA384_CTX*, char[SHA384_DIGEST_STRING_LENGTH]); -char* SHA384_Data(const uint8_t*, size_t, char[SHA384_DIGEST_STRING_LENGTH]); - -void SHA512_Init(SHA512_CTX*); -void SHA512_Update(SHA512_CTX*, const uint8_t*, size_t); -void SHA512_Final(uint8_t[SHA512_DIGEST_LENGTH], SHA512_CTX*); -char* SHA512_End(SHA512_CTX*, char[SHA512_DIGEST_STRING_LENGTH]); -char* SHA512_Data(const uint8_t*, size_t, char[SHA512_DIGEST_STRING_LENGTH]); - -#else /* SHA2_USE_INTTYPES_H */ - -void SHA256_Init(SHA256_CTX *); -void SHA256_Update(SHA256_CTX*, const u_int8_t*, size_t); -void SHA256_Final(u_int8_t[SHA256_DIGEST_LENGTH], SHA256_CTX*); -char* SHA256_End(SHA256_CTX*, char[SHA256_DIGEST_STRING_LENGTH]); -char* SHA256_Data(const u_int8_t*, size_t, char[SHA256_DIGEST_STRING_LENGTH]); - -void SHA384_Init(SHA384_CTX*); -void SHA384_Update(SHA384_CTX*, const u_int8_t*, size_t); -void SHA384_Final(u_int8_t[SHA384_DIGEST_LENGTH], SHA384_CTX*); -char* SHA384_End(SHA384_CTX*, char[SHA384_DIGEST_STRING_LENGTH]); -char* SHA384_Data(const u_int8_t*, size_t, char[SHA384_DIGEST_STRING_LENGTH]); - -void SHA512_Init(SHA512_CTX*); -void SHA512_Update(SHA512_CTX*, const u_int8_t*, size_t); -void SHA512_Final(u_int8_t[SHA512_DIGEST_LENGTH], SHA512_CTX*); -char* SHA512_End(SHA512_CTX*, char[SHA512_DIGEST_STRING_LENGTH]); -char* SHA512_Data(const u_int8_t*, size_t, char[SHA512_DIGEST_STRING_LENGTH]); - -#endif /* SHA2_USE_INTTYPES_H */ - -#else /* NOPROTO */ - -void SHA256_Init(); -void SHA256_Update(); -void SHA256_Final(); -char* SHA256_End(); -char* SHA256_Data(); - -void SHA384_Init(); -void SHA384_Update(); -void SHA384_Final(); -char* SHA384_End(); -char* SHA384_Data(); - -void SHA512_Init(); -void SHA512_Update(); -void SHA512_Final(); -char* SHA512_End(); -char* SHA512_Data(); - -#endif /* NOPROTO */ - -#endif /* __SHA2_H__ */ - diff --git a/apt-pkg/contrib/string_view.h b/apt-pkg/contrib/string_view.h index f4f0c645f..05aad3327 100644 --- a/apt-pkg/contrib/string_view.h +++ b/apt-pkg/contrib/string_view.h @@ -123,7 +123,10 @@ static inline int StringViewCompareFast(StringView a, StringView b) { return memcmp(a.data(), b.data(), a.size()); } - +static constexpr inline APT::StringView operator""_sv(const char *data, size_t size) +{ + return APT::StringView(data, size); +} } inline bool operator ==(const char *other, APT::StringView that); diff --git a/apt-pkg/contrib/strutl.h b/apt-pkg/contrib/strutl.h index 738480402..56487b60f 100644 --- a/apt-pkg/contrib/strutl.h +++ b/apt-pkg/contrib/strutl.h @@ -83,7 +83,6 @@ std::string TimeRFC1123(time_t Date, bool const NumericTimezone); * parsing is successful, undefined otherwise. * @return \b true if parsing was successful, otherwise \b false. */ -bool RFC1123StrToTime(const char* const str,time_t &time) APT_MUSTCHECK APT_PKG_590("Replaced by std::string variant"); bool RFC1123StrToTime(const std::string &str,time_t &time) APT_MUSTCHECK; bool FTPMDTMStrToTime(const char* const str,time_t &time) APT_MUSTCHECK; std::string LookupTag(const std::string &Message,const char *Tag,const char *Default = 0); diff --git a/apt-pkg/deb/debindexfile.cc b/apt-pkg/deb/debindexfile.cc index 279f35a38..e4ceebff2 100644 --- a/apt-pkg/deb/debindexfile.cc +++ b/apt-pkg/deb/debindexfile.cc @@ -23,6 +23,7 @@ #include <apt-pkg/pkgcache.h> #include <apt-pkg/pkgrecords.h> #include <apt-pkg/srcrecords.h> +#include <apt-pkg/strutl.h> #include <iostream> #include <memory> diff --git a/apt-pkg/deb/deblistparser.cc b/apt-pkg/deb/deblistparser.cc index 75fc2d242..eaa9dfda9 100644 --- a/apt-pkg/deb/deblistparser.cc +++ b/apt-pkg/deb/deblistparser.cc @@ -14,11 +14,10 @@ #include <apt-pkg/aptconfiguration.h> #include <apt-pkg/cachefilter.h> #include <apt-pkg/configuration.h> -#include <apt-pkg/crc-16.h> #include <apt-pkg/deblistparser.h> #include <apt-pkg/error.h> +#include <apt-pkg/hashes.h> #include <apt-pkg/macros.h> -#include <apt-pkg/md5.h> #include <apt-pkg/pkgcache.h> #include <apt-pkg/strutl.h> #include <apt-pkg/tagfile-keys.h> @@ -166,8 +165,12 @@ bool debListParser::NewVersion(pkgCache::VerIterator &Ver) } // Parse the source package name pkgCache::GrpIterator G = Ver.ParentPkg().Group(); + + // Setup the defaults Ver->SourcePkgName = G->Name; Ver->SourceVerStr = Ver->VerStr; + + // Parse the name and version str if (Section.Find(pkgTagSection::Key::Source,Start,Stop) == true) { const char * const Space = static_cast<const char *>(memchr(Start, ' ', Stop - Start)); @@ -194,30 +197,19 @@ bool debListParser::NewVersion(pkgCache::VerIterator &Ver) } APT::StringView const pkgname(Start, Stop - Start); + // Oh, our group is the wrong one for the source package. Make a new one. if (pkgname != G.Name()) { - for (pkgCache::PkgIterator P = G.PackageList(); P.end() == false; P = G.NextPkg(P)) - { - for (V = P.VersionList(); V.end() == false; ++V) - { - if (pkgname == V.SourcePkgName()) - { - Ver->SourcePkgName = V->SourcePkgName; - break; - } - } - if (V.end() == false) - break; - } - if (V.end() == true) - { - map_stringitem_t const idx = StoreString(pkgCacheGenerator::PKGNAME, pkgname); - G = Ver.ParentPkg().Group(); - Ver->SourcePkgName = idx; - } + if (not NewGroup(G, pkgname)) + return false; } } + // Link into by source package group. + Ver->SourcePkgName = G->Name; + Ver->NextInSource = G->VersionsInSource; + G->VersionsInSource = Ver.Index(); + Ver->MultiArch = ParseMultiArch(true); // Archive Size Ver->Size = Section.FindULL(pkgTagSection::Key::Size); @@ -295,10 +287,10 @@ APT::StringView debListParser::Description_md5() if (desc == "\n") return StringView(); - MD5Summation md5; + Hashes md5(Hashes::MD5SUM); md5.Add(desc.data(), desc.size()); md5.Add("\n"); - MD5Buffer = md5.Result(); + MD5Buffer = md5.GetHashString(Hashes::MD5SUM).HashValue(); return StringView(MD5Buffer); } else if (likely(value.size() == 32)) @@ -346,7 +338,7 @@ bool debListParser::UsePackage(pkgCache::PkgIterator &Pkg, // ListParser::VersionHash - Compute a unique hash for this version /*{{{*/ // --------------------------------------------------------------------- /* */ -unsigned short debListParser::VersionHash() +uint32_t debListParser::VersionHash() { static constexpr pkgTagSection::Key Sections[] ={ pkgTagSection::Key::Installed_Size, @@ -357,7 +349,7 @@ unsigned short debListParser::VersionHash() pkgTagSection::Key::Conflicts, pkgTagSection::Key::Breaks, pkgTagSection::Key::Replaces}; - unsigned long Result = INIT_FCS; + unsigned long Result = 5381; for (auto I : Sections) { const char *Start; @@ -378,7 +370,7 @@ unsigned short debListParser::VersionHash() } if (isspace_ascii(*Start) != 0 || *Start == '=') continue; - Result = AddCRC16Byte(Result, tolower_ascii_unsafe(*Start)); + Result = 33 * Result + tolower_ascii_unsafe(*Start); } @@ -998,7 +990,7 @@ unsigned char debListParser::GetPrio(string Str) return Out; } /*}}}*/ -bool debListParser::SameVersion(unsigned short const Hash, /*{{{*/ +bool debListParser::SameVersion(uint32_t Hash, /*{{{*/ pkgCache::VerIterator const &Ver) { if (pkgCacheListParser::SameVersion(Hash, Ver) == false) diff --git a/apt-pkg/deb/deblistparser.h b/apt-pkg/deb/deblistparser.h index c041585e6..eefce2a6a 100644 --- a/apt-pkg/deb/deblistparser.h +++ b/apt-pkg/deb/deblistparser.h @@ -11,7 +11,6 @@ #define PKGLIB_DEBLISTPARSER_H #include <apt-pkg/macros.h> -#include <apt-pkg/md5.h> #include <apt-pkg/pkgcache.h> #include <apt-pkg/pkgcachegen.h> #include <apt-pkg/tagfile.h> @@ -65,8 +64,8 @@ class APT_HIDDEN debListParser : public pkgCacheListParser virtual bool NewVersion(pkgCache::VerIterator &Ver) APT_OVERRIDE; virtual std::vector<std::string> AvailableDescriptionLanguages() APT_OVERRIDE; virtual APT::StringView Description_md5() APT_OVERRIDE; - virtual unsigned short VersionHash() APT_OVERRIDE; - virtual bool SameVersion(unsigned short const Hash, pkgCache::VerIterator const &Ver) APT_OVERRIDE; + virtual uint32_t VersionHash() APT_OVERRIDE; + virtual bool SameVersion(uint32_t Hash, pkgCache::VerIterator const &Ver) APT_OVERRIDE; virtual bool UsePackage(pkgCache::PkgIterator &Pkg, pkgCache::VerIterator &Ver) APT_OVERRIDE; virtual map_filesize_t Offset() APT_OVERRIDE {return iOffset;}; diff --git a/apt-pkg/deb/debmetaindex.cc b/apt-pkg/deb/debmetaindex.cc index a88b19807..2c0ab1d0d 100644 --- a/apt-pkg/deb/debmetaindex.cc +++ b/apt-pkg/deb/debmetaindex.cc @@ -915,7 +915,6 @@ bool debReleaseIndex::Merge(pkgCacheGenerator &Gen,OpProgress * /*Prog*/) const/ #undef APT_INRELEASE Section.FindFlag("NotAutomatic", File->Flags, pkgCache::Flag::NotAutomatic); Section.FindFlag("ButAutomaticUpgrades", File->Flags, pkgCache::Flag::ButAutomaticUpgrades); - Section.FindFlag("Packages-Require-Authorization", File->Flags, pkgCache::Flag::PackagesRequireAuthorization); return true; } diff --git a/apt-pkg/edsp/edsplistparser.cc b/apt-pkg/edsp/edsplistparser.cc index 31bded9ca..45abdbc61 100644 --- a/apt-pkg/edsp/edsplistparser.cc +++ b/apt-pkg/edsp/edsplistparser.cc @@ -15,10 +15,10 @@ #include <apt-pkg/deblistparser.h> #include <apt-pkg/edsplistparser.h> #include <apt-pkg/fileutl.h> -#include <apt-pkg/md5.h> #include <apt-pkg/pkgcache.h> #include <apt-pkg/pkgsystem.h> #include <apt-pkg/string_view.h> +#include <apt-pkg/strutl.h> #include <apt-pkg/tagfile.h> #include <array> @@ -59,7 +59,7 @@ APT::StringView edspLikeListParser::Description_md5() } /*}}}*/ // ListParser::VersionHash - Compute a unique hash for this version /*{{{*/ -unsigned short edspLikeListParser::VersionHash() +uint32_t edspLikeListParser::VersionHash() { if (Section.Exists("APT-Hash") == true) return Section.FindI("APT-Hash"); diff --git a/apt-pkg/edsp/edsplistparser.h b/apt-pkg/edsp/edsplistparser.h index 6087e77e6..41bfd1f79 100644 --- a/apt-pkg/edsp/edsplistparser.h +++ b/apt-pkg/edsp/edsplistparser.h @@ -13,7 +13,6 @@ #include <apt-pkg/deblistparser.h> #include <apt-pkg/fileutl.h> -#include <apt-pkg/md5.h> #include <apt-pkg/pkgcache.h> #include <string> @@ -28,7 +27,7 @@ class APT_HIDDEN edspLikeListParser : public debListParser virtual bool NewVersion(pkgCache::VerIterator &Ver) APT_OVERRIDE; virtual std::vector<std::string> AvailableDescriptionLanguages() APT_OVERRIDE; virtual APT::StringView Description_md5() APT_OVERRIDE; - virtual unsigned short VersionHash() APT_OVERRIDE; + virtual uint32_t VersionHash() APT_OVERRIDE; explicit edspLikeListParser(FileFd *File); virtual ~edspLikeListParser(); diff --git a/apt-pkg/pkgcache.cc b/apt-pkg/pkgcache.cc index f8ab423ae..59f4256ea 100644 --- a/apt-pkg/pkgcache.cc +++ b/apt-pkg/pkgcache.cc @@ -275,6 +275,10 @@ uint32_t pkgCache::CacheHash() header.CacheFileSize = 0; adler = hash32(adler, + reinterpret_cast<const unsigned char *>(PACKAGE_VERSION), + APT_ARRAY_SIZE(PACKAGE_VERSION)); + + adler = hash32(adler, reinterpret_cast<const unsigned char *>(&header), sizeof(header)); diff --git a/apt-pkg/pkgcache.h b/apt-pkg/pkgcache.h index 3f77d5eae..84fc56db8 100644 --- a/apt-pkg/pkgcache.h +++ b/apt-pkg/pkgcache.h @@ -177,11 +177,9 @@ class pkgCache /*{{{*/ LocalSource=(1<<1), /*!< local sources can't and will not be verified by hashes */ NoPackages=(1<<2), /*!< the file includes no package records itself, but additions like Translations */ }; - enum ReleaseFileFlags - { - NotAutomatic = (1 << 0), /*!< archive has a default pin of 1 */ - ButAutomaticUpgrades = (1 << 1), /*!< (together with the previous) archive has a default pin of 100 */ - PackagesRequireAuthorization = (1 << 2), /*!< (together with the previous) archive has a default pin of 100 */ + enum ReleaseFileFlags { + NotAutomatic=(1<<0), /*!< archive has a default pin of 1 */ + ButAutomaticUpgrades=(1<<1), /*!< (together with the previous) archive has a default pin of 100 */ }; enum ProvidesFlags { MultiArchImplicit=pkgCache::Dep::MultiArchImplicit, /*!< generated internally, not spelled out in the index */ @@ -383,7 +381,11 @@ struct pkgCache::Header On or more packages with the same name form a group, so we have a simple way to access a package built for different architectures Group exists in a singly linked list of group records starting at - the hash index of the name in the pkgCache::Header::GrpHashTable */ + the hash index of the name in the pkgCache::Header::GrpHashTable + + They also act as a representation of source packages, allowing you to + iterate over all binaries produced by a source package. + */ struct pkgCache::Group { /** \brief Name of the group */ @@ -394,11 +396,15 @@ struct pkgCache::Group map_pointer_t FirstPackage; // Package /** \brief Link to the last package which belongs to the group */ map_pointer_t LastPackage; // Package + /** \brief Link to the next Group */ map_pointer_t Next; // Group /** \brief unique sequel ID */ map_id_t ID; + /** \brief List of binary produces by source package with this name. */ + map_pointer_t VersionsInSource; // Version + }; /*}}}*/ // Package structure /*{{{*/ @@ -637,11 +643,13 @@ struct pkgCache::Version No two packages in existence should have the same VerStr and Hash with different contents. */ - unsigned short Hash; + uint32_t Hash; /** \brief unique sequel ID */ map_id_t ID; /** \brief parsed priority value */ map_number_t Priority; + /** \brief next version in the source package (might be different binary) */ + map_pointer_t NextInSource; // Version }; /*}}}*/ // Description structure /*{{{*/ diff --git a/apt-pkg/pkgcachegen.cc b/apt-pkg/pkgcachegen.cc index 030f4df0a..5a7272e84 100644 --- a/apt-pkg/pkgcachegen.cc +++ b/apt-pkg/pkgcachegen.cc @@ -17,7 +17,6 @@ #include <apt-pkg/hashsum_template.h> #include <apt-pkg/indexfile.h> #include <apt-pkg/macros.h> -#include <apt-pkg/md5.h> #include <apt-pkg/metaindex.h> #include <apt-pkg/mmap.h> #include <apt-pkg/pkgcache.h> @@ -377,7 +376,7 @@ bool pkgCacheGenerator::MergeListVersion(ListParser &List, pkgCache::PkgIterator map_pointer_t *LastVer = &Pkg->VersionList; void const * oldMap = Map.Data(); - unsigned short const Hash = List.VersionHash(); + auto Hash = List.VersionHash(); if (Ver.end() == false) { /* We know the list is sorted so we use that fact in the search. @@ -558,10 +557,11 @@ bool pkgCacheGenerator::NewGroup(pkgCache::GrpIterator &Grp, StringView Name) if (unlikely(Group == 0)) return false; - Grp = pkgCache::GrpIterator(Cache, Cache.GrpP + Group); - map_stringitem_t const idxName = StoreString(PKGNAME, Name); + map_stringitem_t const idxName = WriteStringInMap(Name); if (unlikely(idxName == 0)) return false; + + Grp = pkgCache::GrpIterator(Cache, Cache.GrpP + Group); Grp->Name = idxName; // Insert it into the hash table @@ -849,7 +849,7 @@ bool pkgCacheGenerator::NewFileVer(pkgCache::VerIterator &Ver, map_pointer_t pkgCacheGenerator::NewVersion(pkgCache::VerIterator &Ver, APT::StringView const &VerStr, map_pointer_t const ParentPkg, - unsigned short const Hash, + uint32_t Hash, map_pointer_t const Next) { // Get a structure @@ -1204,7 +1204,7 @@ bool pkgCacheListParser::NewProvidesAllArch(pkgCache::VerIterator &Ver, StringVi Dynamic<StringView> DynPackage(Package); Dynamic<StringView> DynVersion(Version); - if (Grp.end() == true) + if (Grp.end() == true || Grp->FirstPackage == 0) return NewProvides(Ver, Package, Cache.NativeArch(), Version, Flags); else { @@ -1234,7 +1234,7 @@ bool pkgCacheListParser::NewProvidesAllArch(pkgCache::VerIterator &Ver, StringVi return true; } /*}}}*/ -bool pkgCacheListParser::SameVersion(unsigned short const Hash, /*{{{*/ +bool pkgCacheListParser::SameVersion(uint32_t Hash, /*{{{*/ pkgCache::VerIterator const &Ver) { return Hash == Ver->Hash; @@ -1336,7 +1336,6 @@ map_stringitem_t pkgCacheGenerator::StoreString(enum StringType const type, cons auto strings = &strMixed; switch(type) { case MIXED: strings = &strMixed; break; - case PKGNAME: strings = &strPkgNames; break; case VERSIONNUMBER: strings = &strVersions; break; case SECTION: strings = &strSections; break; default: _error->Fatal("Unknown enum type used for string storage of '%.*s'", Size, S); return 0; diff --git a/apt-pkg/pkgcachegen.h b/apt-pkg/pkgcachegen.h index 1f639c526..70192c28e 100644 --- a/apt-pkg/pkgcachegen.h +++ b/apt-pkg/pkgcachegen.h @@ -19,7 +19,6 @@ #define PKGLIB_PKGCACHEGEN_H #include <apt-pkg/macros.h> -#include <apt-pkg/md5.h> #include <apt-pkg/mmap.h> #include <apt-pkg/pkgcache.h> @@ -70,7 +69,6 @@ class APT_HIDDEN pkgCacheGenerator /*{{{*/ }; std::unordered_set<string_pointer, hash> strMixed; - std::unordered_set<string_pointer, hash> strPkgNames; std::unordered_set<string_pointer, hash> strVersions; std::unordered_set<string_pointer, hash> strSections; #endif @@ -111,7 +109,7 @@ class APT_HIDDEN pkgCacheGenerator /*{{{*/ bool NewGroup(pkgCache::GrpIterator &Grp, APT::StringView Name); bool NewPackage(pkgCache::PkgIterator &Pkg, APT::StringView Name, APT::StringView Arch); map_pointer_t NewVersion(pkgCache::VerIterator &Ver, APT::StringView const &VerStr, - map_pointer_t const ParentPkg, unsigned short const Hash, + map_pointer_t const ParentPkg, uint32_t Hash, map_pointer_t const Next); map_pointer_t NewDescription(pkgCache::DescIterator &Desc,const std::string &Lang, APT::StringView md5sum,map_stringitem_t const idxmd5str); bool NewFileVer(pkgCache::VerIterator &Ver,ListParser &List); @@ -124,7 +122,7 @@ class APT_HIDDEN pkgCacheGenerator /*{{{*/ public: - enum StringType { MIXED, PKGNAME, VERSIONNUMBER, SECTION }; + enum StringType { MIXED, VERSIONNUMBER, SECTION }; map_stringitem_t StoreString(StringType const type, const char * S, unsigned int const Size); inline map_stringitem_t StoreString(enum StringType const type, APT::StringView S) {return StoreString(type, S.data(),S.length());}; @@ -179,7 +177,7 @@ class APT_HIDDEN pkgCacheListParser void * const d; protected: - + inline bool NewGroup(pkgCache::GrpIterator &Grp, APT::StringView Name) { return Owner->NewGroup(Grp, Name); } inline map_stringitem_t StoreString(pkgCacheGenerator::StringType const type, const char *S,unsigned int Size) {return Owner->StoreString(type, S, Size);}; inline map_stringitem_t StoreString(pkgCacheGenerator::StringType const type, APT::StringView S) {return Owner->StoreString(type, S);}; inline map_stringitem_t WriteString(APT::StringView S) {return Owner->WriteStringInMap(S.data(), S.size());}; @@ -203,13 +201,13 @@ class APT_HIDDEN pkgCacheListParser virtual bool NewVersion(pkgCache::VerIterator &Ver) = 0; virtual std::vector<std::string> AvailableDescriptionLanguages() = 0; virtual APT::StringView Description_md5() = 0; - virtual unsigned short VersionHash() = 0; + virtual uint32_t VersionHash() = 0; /** compare currently parsed version with given version * * \param Hash of the currently parsed version * \param Ver to compare with */ - virtual bool SameVersion(unsigned short const Hash, pkgCache::VerIterator const &Ver); + virtual bool SameVersion(uint32_t Hash, pkgCache::VerIterator const &Ver); virtual bool UsePackage(pkgCache::PkgIterator &Pkg, pkgCache::VerIterator &Ver) = 0; virtual map_filesize_t Offset() = 0; diff --git a/apt-pkg/policy.cc b/apt-pkg/policy.cc index b9bdfd20f..034fce79c 100644 --- a/apt-pkg/policy.cc +++ b/apt-pkg/policy.cc @@ -18,7 +18,6 @@ #include <apt-pkg/configuration.h> #include <apt-pkg/error.h> #include <apt-pkg/fileutl.h> -#include <apt-pkg/netrc.h> #include <apt-pkg/pkgcache.h> #include <apt-pkg/policy.h> #include <apt-pkg/strutl.h> @@ -85,7 +84,6 @@ pkgPolicy::pkgPolicy(pkgCache *Owner) : VerPins(nullptr), /* */ bool pkgPolicy::InitDefaults() { - std::vector<std::unique_ptr<FileFd>> authconfs; // Initialize the priorities based on the status of the package file for (pkgCache::PkgFileIterator I = Cache->FileBegin(); I != Cache->FileEnd(); ++I) { @@ -96,8 +94,6 @@ bool pkgPolicy::InitDefaults() PFPriority[I->ID] = 100; else if (I.Flagged(pkgCache::Flag::NotAutomatic)) PFPriority[I->ID] = 1; - if (I.Flagged(pkgCache::Flag::PackagesRequireAuthorization) && !IsAuthorized(I, authconfs)) - PFPriority[I->ID] = NEVER_PIN; } // Apply the defaults.. @@ -175,6 +171,11 @@ void pkgPolicy::CreatePin(pkgVersionMatch::MatchType Type,string Name, return; } + bool IsSourcePin = APT::String::Startswith(Name, "src:"); + if (IsSourcePin) { + Name = Name.substr(sizeof("src:") - 1); + } + size_t found = Name.rfind(':'); string Arch; if (found != string::npos) { @@ -190,10 +191,11 @@ void pkgPolicy::CreatePin(pkgVersionMatch::MatchType Type,string Name, for (pkgCache::GrpIterator G = Cache->GrpBegin(); G.end() != true; ++G) if (Name != G.Name() && match.ExpressionMatches(Name, G.Name())) { + auto NameToPinFor = IsSourcePin ? string("src:").append(G.Name()) : string(G.Name()); if (Arch.empty() == false) - CreatePin(Type, string(G.Name()).append(":").append(Arch), Data, Priority); + CreatePin(Type, NameToPinFor.append(":").append(Arch), Data, Priority); else - CreatePin(Type, G.Name(), Data, Priority); + CreatePin(Type, NameToPinFor, Data, Priority); } return; } @@ -209,20 +211,19 @@ void pkgPolicy::CreatePin(pkgVersionMatch::MatchType Type,string Name, else MatchingArch = Arch; APT::CacheFilter::PackageArchitectureMatchesSpecification pams(MatchingArch); - for (pkgCache::PkgIterator Pkg = Grp.PackageList(); Pkg.end() != true; Pkg = Grp.NextPkg(Pkg)) - { - if (pams(Pkg.Arch()) == false) - continue; - - PkgPin P(Pkg.FullName()); - P.Type = Type; - P.Priority = Priority; - P.Data = Data; - // Find matching version(s) and copy the pin into it - pkgVersionMatch Match(P.Data,P.Type); - for (pkgCache::VerIterator Ver = Pkg.VersionList(); Ver.end() != true; ++Ver) + if (IsSourcePin) { + for (pkgCache::VerIterator Ver = Grp.VersionsInSource(); not Ver.end(); Ver = Ver.NextInSource()) { + if (pams(Ver.ParentPkg().Arch()) == false) + continue; + + PkgPin P(Ver.ParentPkg().FullName()); + P.Type = Type; + P.Priority = Priority; + P.Data = Data; + // Find matching version(s) and copy the pin into it + pkgVersionMatch Match(P.Data,P.Type); if (Match.VersionMatches(Ver)) { Pin *VP = VerPins + Ver->ID; if (VP->Type == pkgVersionMatch::None) { @@ -231,6 +232,30 @@ void pkgPolicy::CreatePin(pkgVersionMatch::MatchType Type,string Name, } } } + } else { + for (pkgCache::PkgIterator Pkg = Grp.PackageList(); Pkg.end() != true; Pkg = Grp.NextPkg(Pkg)) + { + if (pams(Pkg.Arch()) == false) + continue; + + PkgPin P(Pkg.FullName()); + P.Type = Type; + P.Priority = Priority; + P.Data = Data; + + // Find matching version(s) and copy the pin into it + pkgVersionMatch Match(P.Data,P.Type); + for (pkgCache::VerIterator Ver = Pkg.VersionList(); Ver.end() != true; ++Ver) + { + if (Match.VersionMatches(Ver)) { + Pin *VP = VerPins + Ver->ID; + if (VP->Type == pkgVersionMatch::None) { + *VP = P; + matched = true; + } + } + } + } } } @@ -285,6 +310,21 @@ APT_PURE signed short pkgPolicy::GetPriority(pkgCache::PkgFileIterator const &Fi return PFPriority[File->ID]; } /*}}}*/ +// SetPriority - Directly set priority /*{{{*/ +// --------------------------------------------------------------------- +void pkgPolicy::SetPriority(pkgCache::VerIterator const &Ver, signed short Priority) +{ + Pin pin; + pin.Data = "pkgPolicy::SetPriority"; + pin.Priority = Priority; + VerPins[Ver->ID] = pin; +} +void pkgPolicy::SetPriority(pkgCache::PkgFileIterator const &File, signed short Priority) +{ + PFPriority[File->ID] = Priority; +} + + /*}}}*/ // ReadPinDir - Load the pin files from this dir into a Policy /*{{{*/ // --------------------------------------------------------------------- /* This will load each pin file in the given dir into a Policy. If the diff --git a/apt-pkg/policy.h b/apt-pkg/policy.h index 277aff3dd..2fd2f8197 100644 --- a/apt-pkg/policy.h +++ b/apt-pkg/policy.h @@ -76,6 +76,8 @@ class pkgPolicy : public pkgDepCache::Policy virtual signed short GetPriority(pkgCache::VerIterator const &Ver, bool ConsiderFiles = true) APT_OVERRIDE; virtual signed short GetPriority(pkgCache::PkgFileIterator const &File) APT_OVERRIDE; + void SetPriority(pkgCache::VerIterator const &Ver, signed short Priority); + void SetPriority(pkgCache::PkgFileIterator const &File, signed short Priority); bool InitDefaults(); explicit pkgPolicy(pkgCache *Owner); diff --git a/apt-pkg/srcrecords.cc b/apt-pkg/srcrecords.cc index a830a28f0..03bda75e9 100644 --- a/apt-pkg/srcrecords.cc +++ b/apt-pkg/srcrecords.cc @@ -52,7 +52,7 @@ pkgSrcRecords::pkgSrcRecords(pkgSourceList &List) : d(NULL), Files(0) // Doesn't work without any source index files if (Files.empty() == true) { - _error->Error(_("You must put some 'source' URIs" + _error->Error(_("You must put some 'deb-src' URIs" " in your sources.list")); return; } diff --git a/apt-private/private-cmndline.cc b/apt-private/private-cmndline.cc index a78cbaf1a..c5edae5d0 100644 --- a/apt-private/private-cmndline.cc +++ b/apt-private/private-cmndline.cc @@ -474,6 +474,7 @@ static void BinarySpecificConfiguration(char const * const Binary) /*{{{*/ _config->CndSet("Binary::apt::DPkg::Progress-Fancy", true); _config->CndSet("Binary::apt::APT::Keep-Downloaded-Packages", false); _config->CndSet("Binary::apt::APT::Get::Update::InteractiveReleaseInfoChanges", true); + _config->CndSet("Binary::apt::APT::Cmd::Pattern-Only", true); } _config->Set("Binary", binary); diff --git a/apt-private/private-list.cc b/apt-private/private-list.cc index 6071129a7..f5c31bbcd 100644 --- a/apt-private/private-list.cc +++ b/apt-private/private-list.cc @@ -48,8 +48,8 @@ class PackageNameMatcher : public Matcher { std::string pattern = patterns[i]; APT::CacheFilter::Matcher *cachefilter = NULL; - if (pattern.size() > 0 && pattern[0] == '?') - cachefilter = APT::CacheFilter::ParsePattern(pattern, &cacheFile).release(); + if (pattern.size() > 0 && (pattern[0] == '?' || pattern[0] == '~')) + cachefilter = APT::CacheFilter::ParsePattern(pattern, &cacheFile).release(); else if(_config->FindB("APT::Cmd::Use-Regexp", false) == true) cachefilter = new APT::CacheFilter::PackageNameMatchesRegEx(pattern); else diff --git a/apt-private/private-show.cc b/apt-private/private-show.cc index 9ebbe6ac0..103fa57e4 100644 --- a/apt-private/private-show.cc +++ b/apt-private/private-show.cc @@ -8,6 +8,7 @@ #include <apt-pkg/depcache.h> #include <apt-pkg/error.h> #include <apt-pkg/fileutl.h> +#include <apt-pkg/hashes.h> #include <apt-pkg/indexfile.h> #include <apt-pkg/macros.h> #include <apt-pkg/pkgcache.h> @@ -415,9 +416,9 @@ bool ShowPackage(CommandLine &CmdL) /*{{{*/ static std::string Sha1FromString(std::string const &input) /*{{{*/ { // XXX: move to hashes.h: HashString::FromString() ? - SHA1Summation sha1; + Hashes sha1(Hashes::SHA1SUM); sha1.Add(input.c_str(), input.length()); - return sha1.Result().Value(); + return sha1.GetHashString(Hashes::SHA1SUM).HashValue(); } /*}}}*/ bool ShowSrcPackage(CommandLine &CmdL) /*{{{*/ diff --git a/apt-private/private-update.cc b/apt-private/private-update.cc index 59d1d6d3f..248f1f36e 100644 --- a/apt-private/private-update.cc +++ b/apt-private/private-update.cc @@ -10,6 +10,7 @@ #include <apt-pkg/fileutl.h> #include <apt-pkg/metaindex.h> #include <apt-pkg/sourcelist.h> +#include <apt-pkg/strutl.h> #include <apt-pkg/update.h> #include <apt-private/acqprogress.h> diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index 5d81c08a4..efb5cfd73 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -42,7 +42,6 @@ #include <apt-pkg/indexfile.h> #include <apt-pkg/init.h> #include <apt-pkg/macros.h> -#include <apt-pkg/md5.h> #include <apt-pkg/metaindex.h> #include <apt-pkg/pkgcache.h> #include <apt-pkg/pkgrecords.h> diff --git a/debian/NEWS b/debian/NEWS index 46c1fcb16..35b562dda 100644 --- a/debian/NEWS +++ b/debian/NEWS @@ -1,3 +1,16 @@ +apt (1.9.6) experimental; urgency=medium + + apt(8) no longer treats package names passed as regular expressions or fnmatch + expressions, requiring the use of patterns (apt-patterns(5)) to perform complex + searches. For ease of use, regular expressions starting with ^ or ending with + $ continue to work. + + This fixes the problem where e.g. g++ could mean either "the package g++" + or, if there is no g++ package, "all packages containing g". This change + will propagate to apt-* after the release of Debian bullseye. + + -- Julian Andres Klode <jak@debian.org> Wed, 15 Jan 2020 21:45:18 +0100 + apt (1.9.5) unstable; urgency=medium Credentials in apt_auth.conf(5) now only apply to https and tor+https diff --git a/debian/apt.conf.autoremove b/debian/apt.conf.autoremove index f9d9e85d4..478c571e0 100644 --- a/debian/apt.conf.autoremove +++ b/debian/apt.conf.autoremove @@ -10,31 +10,13 @@ APT VersionedKernelPackages { - # linux kernels - "linux-image"; - "linux-headers"; - "linux-image-extra"; - "linux-modules"; - "linux-modules-extra"; - "linux-signed-image"; - "linux-image-unsigned"; - # kfreebsd kernels - "kfreebsd-image"; - "kfreebsd-headers"; - # hurd kernels - "gnumach-image"; + # kernels + "linux-.*"; + "kfreebsd-.*"; + "gnumach-.*"; # (out-of-tree) modules ".*-modules"; ".*-kernel"; - "linux-backports-modules-.*"; - "linux-modules-.*"; - # tools - "linux-tools"; - "linux-cloud-tools"; - # build info - "linux-buildinfo"; - # source code - "linux-source"; }; Never-MarkAuto-Sections diff --git a/debian/changelog b/debian/changelog index a180c0009..4664128e6 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,86 @@ +apt (1.9.10) experimental; urgency=medium + + [ David Kalnischkies ] + * Fix remaining usec vs sec time-delta calculation typos. + Thanks to Trent W. Buck for initial patch (Closes: #950776) + + [ Julian Andres Klode ] + * seccomp: Allow time64 variants (>402,<415) of allowed syscalls + (Closes: #951012) + * debian/control: Bump libseccomp-dev Build-Depends to >= 2.4.2 + * seccomp: Allow recvmmsg_time64() and futex_time64() + * policy: Add SetPriority() methods + * Revert "Add a Packages-Require-Authorization Release file field" + + [ Michael Vogt ] + * doc: remove "WIP" from apt.8.xml + + -- Julian Andres Klode <jak@debian.org> Tue, 18 Feb 2020 12:32:42 +0100 + +apt (1.9.9) experimental; urgency=medium + + * Widen regular expressions for versioned kernel packages (LP: #1607845) + * Implement short patterns (patterns starting with ~) + + -- Julian Andres Klode <jak@debian.org> Tue, 04 Feb 2020 17:42:21 +0100 + +apt (1.9.8) experimental; urgency=medium + + * pkgcache.cc: Mix PACKAGE_VERSION into the cache hash + * mmap: Do not look for empty pool unless we need to + * apt-verbatim.ent: Update ubuntu-codename from disco to focal + * NewGroup: Create GrpIterator after allocation (fix segfault) + + -- Julian Andres Klode <jak@debian.org> Mon, 27 Jan 2020 13:25:52 +0100 + +apt (1.9.7) experimental; urgency=medium + + * Trim trailing whitespace (thanks lintian-brush) + * NewProvidesAllArch: Check if group is empty before using it. + This caused automake-1.16 to not be provided by automake anymore, + because apt wanted to add provides to packages in an empty automake-1.16 + group. LP: #1859952 + * Fix debian-rules-uses-deprecated-systemd-override. + We accidentally managed to restart apt-daily{,-upgrade}.service + again because our dh_systemd_start override was being ignored + since we switched to debhelper 12. Override dh_installsystemd + instead. + + -- Julian Andres Klode <jak@debian.org> Thu, 16 Jan 2020 12:13:50 +0100 + +apt (1.9.6) experimental; urgency=medium + + [ Julian Andres Klode ] + * gitlab-ci: Do not do coverage + * gitlab-ci: Use ccache + * satisfy: Fix segmentation fault when called with empty argument + * Add support for GTest 1.9, do not fail silently if its missing + * gtests: Fix netrc parser test regression from https-only changes + * Macro cleanup: + - Avoid #define _error, use anonymous C++ struct instead (Closes: #948338) + - Rename _count() macro to APT_ARRAY_SIZE() + - Remove various unused macros like MAX/MIN/ABS/APT_CONST + - Only define likely/unlikely if APT_COMPILING_APT set + * Performance: Avoid extra out-of-cache hash table deduplication for + package names, this saved about 10-16% on gencaches in memory + * acquire: Move queue startup after calling log's Start(), fixes abort() + calls in python-apt + * hashes: Use Libgcrypt for hashing purposes + - Raise buffer size for Hashes::AddFD() from 4 KiB to 64 KiB + - Convert users of {MD5,SHA1,SHA256,SHA512}Summation to use Hashes + - Deprecate the Summation classes and mark them for removal + - Remove includes of (md5|sha1|sha2).h headers + * netrc: Add warning when ignoring entries for unencrypted protocols + * apt(8): Disable regular expressions and fnmatch + + [ David Kalnischkies ] + * Drop g++ build-dependency to help crossbuilding (Closes: #948201) + + [ Denis Mosolov ] + * Fix typo in README.md + + -- Julian Andres Klode <jak@debian.org> Wed, 15 Jan 2020 23:06:49 +0100 + apt (1.9.5) experimental; urgency=medium [ Julian Andres Klode ] @@ -2684,7 +2767,7 @@ apt (1.1~exp4) experimental; urgency=medium - add new -o Debug::Acquire::Transaction=1 debug option * feature/expected-size: Do not download more data in the mehotds than expected if we know - the size. For the InRelease/Release/Release.gpg add new + the size. For the InRelease/Release/Release.gpg add new Acquire::MaxReleaseFileSize that defaults to 10Mb for now * Verify the hashes of the downloaded compressed files early * Only load unauthenticated data into our parsers when the user @@ -2760,7 +2843,7 @@ apt (1.1~exp3) experimental; urgency=medium * Make /var/lib/apt/lists and /var/cache/apt/archives owned by the new _apt user * Drop Privileges in the following acquire methods: - copy, http, https, ftp, gpgv, gzip/bzip2/lzma/xz + copy, http, https, ftp, gpgv, gzip/bzip2/lzma/xz * DropPrivs: Improvements based on feedback from error@debian.org [ Julian Andres Klode ] @@ -3037,7 +3120,7 @@ apt (1.0.9.2) unstable; urgency=medium * generalize Acquire::GzipIndex to support all compressions that apt supports * Fix regression for cdrom: sources from latest security update - * Ensure that iTFRewritePackageOrder is "MD5sum" to match + * Ensure that iTFRewritePackageOrder is "MD5sum" to match apt-ftparchive * debian/rules: add hardening=+all. Thanks to Simon Ruderich, Markus Waldeck @@ -3106,16 +3189,16 @@ apt (1.0.8) unstable; urgency=medium * Add testcase for apt list --all-versions * * apt-pkg/deb/dpkgpm.cc: - update string matching for dpkg I/O errors. (LP: #1363257) - - properly parse the dpkg status line so that package name - is properly set and an apport report is created. Thanks + - properly parse the dpkg status line so that package name + is properly set and an apport report is created. Thanks to Anders Kaseorg for the patch (LP: #1353171) * Use heap to allocate PatternMatch to avoid potential stack overflow (Closes: 759612) * Run autopkgtest tests with "env -i" to avoid pollution from the host env (Closes: #759655) - * test/integration/test-ubuntu-bug-346386-apt-get-update-paywall: + * test/integration/test-ubuntu-bug-346386-apt-get-update-paywall: - use downloadfile() to fix test failure - * Fix incorrect upgradable listing in "apt list" + * Fix incorrect upgradable listing in "apt list" (thanks to Michael Musenbrock) (Closes: #753297) * apt-pkg/cachefile.cc: - ensure we have a Policy in CacheFile.BuildDepCache() @@ -3123,7 +3206,7 @@ apt (1.0.8) unstable; urgency=medium - Improve Debug::Acquire::http debug output [ Dimitri John Ledkov ] - * apt-ftparchive: make Packages & Sources generation optional, + * apt-ftparchive: make Packages & Sources generation optional, during Generate call [ David Kalnischkies ] @@ -3254,7 +3337,7 @@ apt (1.0.4) unstable; urgency=low * Fix various errors found by clang scan-build * Show unauthenticated warning for source packages as well (Closes: #749795) * Add compat mode for old (32bit FileSize) CacheDB (LP: #1274466) - * cmdline/apt-helper.cc: use less generic description/short-description + * cmdline/apt-helper.cc: use less generic description/short-description in apt-helper download * add pkgSrcRecords::Step() to step through all the pkgSrcRecords (thanks to Helmut Grohne) @@ -3320,7 +3403,7 @@ apt (1.0.2) unstable; urgency=medium * fix apt list output for pkgs in dpkg ^rc state * Notice the user about "apt list -a" when only a single hit if found * fix test-failure in adt - * apt-private/acqprogress.cc: fix output when ctrl-c is hit during + * apt-private/acqprogress.cc: fix output when ctrl-c is hit during apt update (LP: #1310548, closes: #744297) * Fix option name DPkg::Progress-Fancy in apt.8 manpage (LP: #1310506) @@ -3371,7 +3454,7 @@ apt (1.0) unstable; urgency=low The "Happy birthday and 10000b years in the making" release [ Julian Andres Klode ] - * apt-inst: Do not try to create a substring of an empty string in + * apt-inst: Do not try to create a substring of an empty string in error reporting (LP: #1288718) [ Beatrice Torracca ] @@ -3404,7 +3487,7 @@ apt (1.0) unstable; urgency=low * refresh po/pot and unfuzzy apt-extracttemplate manpage change * remove no longer needed apt.7 page * install "apt" binary by default - * add sun-java{5,6}-jdk to breaks/replaces as they provided a + * add sun-java{5,6}-jdk to breaks/replaces as they provided a "apt" binary as well [ Trần Ngọc Quân ] @@ -3426,7 +3509,7 @@ apt (0.9.16.1) unstable; urgency=medium apt (0.9.16) unstable; urgency=medium [ Michael Vogt ] - * add hashsum support in apt-helper download-file and + * add hashsum support in apt-helper download-file and add more tests [ Trần Ngọc Quân ] @@ -3478,7 +3561,7 @@ apt (0.9.15.4) unstable; urgency=low * remove auto-generated apt-key and sources.list on clean (closes: 739749) * add testcase for Bug#718329 * various fixes for ADT failures - + [ Jon Severinsson ] * add apt-vendor information for tanglu @@ -3495,9 +3578,9 @@ apt (0.9.15.3) unstable; urgency=medium [ Michael Vogt ] * disable https->http redirects in libcurl, thanks to Julien Cristau - * ADT: use "Restrictions: allow-stderr and avoid apt-stderr.log in + * ADT: use "Restrictions: allow-stderr and avoid apt-stderr.log in debian/tests/run-tests - * test/integration/test-bug-723705-tagfile-truncates-fields: + * test/integration/test-bug-723705-tagfile-truncates-fields: - fix autopkgtest failure * add missing canNotFindFnmatch/showFnmatchSelection (for the next ABI break) @@ -3607,7 +3690,7 @@ apt (0.9.14.3~exp3) experimental; urgency=low * add "apt upgrade --dist" * add "apt purge" * flock() the file edited in "apt edit-sources" - * apt-private/private-show.cc: + * apt-private/private-show.cc: - do not show Description-lang: header * reword apt !isatty() warning * add missing integration test for "apt list" and fix bugs @@ -3634,7 +3717,7 @@ apt (0.9.14.3~exp2) experimental; urgency=medium * rename URL to Uri in deb822-sources * support multiple "Suite:" entries in deb822 style sources.list: "Suite: stable testing unstable" - + -- Michael Vogt <mvo@debian.org> Thu, 16 Jan 2014 21:43:22 +0100 apt (0.9.14.3~exp1) experimental; urgency=low @@ -3655,14 +3738,14 @@ apt (0.9.14.2) unstable; urgency=low [ Joe Hansen ] * Danish translation update. Closes: #732166 - + [ Peter Green ] * add apt-vendor for raspbian. Closes: #732749 [ Thomas Bechtold ] * apt-pkg/contrib/gpgv.cc: use /tmp as fallback dir if the directory from $TMPDIR is not available (closes: #728500) - + [ Michael Vogt ] * vendor/getinfo: - fix ubuntu-codename @@ -3722,9 +3805,9 @@ apt (0.9.13.1) unstable; urgency=low [ Colin Watson ] * fix "apt-get --purge build-dep" (closes: #720597) * fix regression that APT::Keep-Fds is not honored (closes: #730490) - + [ Michael Vogt ] - * add "-f" option to "build-dep" as sbuild is using it to fix + * add "-f" option to "build-dep" as sbuild is using it to fix regression with cross-building (LP: #1255806) * add autopkgtest support for the integration testsuite * merge mvo/feature/short-list @@ -3738,7 +3821,7 @@ apt (0.9.13.1) unstable; urgency=low apt (0.9.13) unstable; urgency=low [ TJ Guthrie ] - * Changed MinAgeSec to MinAge in /etc/cron.daily/apt:200,204 + * Changed MinAgeSec to MinAge in /etc/cron.daily/apt:200,204 LP: #1206047 -- Michael Vogt <mvo@debian.org> Sun, 24 Nov 2013 10:56:22 +0100 @@ -3787,7 +3870,7 @@ apt (0.9.12) unstable; urgency=low [ Christian Perrier ] * Fix typo in apt-private/private-show.cc. Thanks to Benjamin Keresa. Closes: #724073 - + [ Mark Hymers ] * fix libapt-inst for >2G debs (closes: #725483) @@ -3811,16 +3894,16 @@ apt (0.9.12) unstable; urgency=low * Add new "apt-get upgrade --with-new-pkgs" option (and add man-page for it). So "apt-get upgrade --with-new-pkgs" will pull in new dependencies but never remove packages - * Rename "--dpkg-progress" to "--show-progress" and document it in + * Rename "--dpkg-progress" to "--show-progress" and document it in apt-get.8. This will show global install progress information in the terminal. * Fix status-fd progress calculation for certain multi-arch install/upgrade situations - * add new -o DpkgPM::Progress-Fancy for nicer dpkg progress output + * add new -o DpkgPM::Progress-Fancy for nicer dpkg progress output on vt100+ terminals - * fix libapt-inst for >2G debs (closes: #725483), thanks to Mark Hymers - * debian/apt.postinst: use --compare-versions lt instead of lt-nl, - to ensure the apt-auto-removal file is correctly create, + * fix libapt-inst for >2G debs (closes: #725483), thanks to Mark Hymers + * debian/apt.postinst: use --compare-versions lt instead of lt-nl, + to ensure the apt-auto-removal file is correctly create, thanks to Ben Hutchings * update Uploaders to match recent uploaders better * Set the default "Acquire::PDiffs::FileLimit" to 20. If the amount @@ -3845,7 +3928,7 @@ apt (0.9.11.4) unstable; urgency=low apt (0.9.11.3) unstable; urgency=low [ Michael Vogt ] - * Add DPkgPM::Progress option to enable terminal install + * Add DPkgPM::Progress option to enable terminal install progress * fix typo (mkostemp->mkstemp) * Remove invalid "-f" option for apt-get check, thanks to @@ -3863,10 +3946,10 @@ apt (0.9.11.2) unstable; urgency=low [ Milo Casagrande ] * Update Italian translation. Closes: #721030 - + [ Trần Ngọc Quân ] * Update Vietnamese translation. Closes: #720752 - + [ Michael Vogt ] * dselect/install: - remove "-f" option for apt-get clean/auto-clean (closes: #720532) @@ -3886,11 +3969,11 @@ apt (0.9.11.1) unstable; urgency=low [ Michael Vogt ] * more coverity fixes: - - explicit init + - explicit init - always chdir("/") after chroot() - - ftparchive/override.cc: fix "skip empty lines" code, the pointer + - ftparchive/override.cc: fix "skip empty lines" code, the pointer needs to get de-referenced first - * dselect/update: + * dselect/update: - remove "-f" option for apt-get update to fix breakage (closes: 720532) [ Christopher Baines ] @@ -3914,7 +3997,7 @@ apt (0.9.11) unstable; urgency=low [ Michael Vogt ] * lp:~mvo/apt/config-clear: - - support Configuration.Clear() for a clear of the entire + - support Configuration.Clear() for a clear of the entire configuration * lp:~mvo/apt/add-glob-function: - add Glob() to fileutl.{cc,h} @@ -3922,7 +4005,7 @@ apt (0.9.11) unstable; urgency=low - refactor large chunks of cmdline/*.cc into a new libapt-private library that is shared between the internal apt cmdline tools - install libapt-private* into the apt binary - - add PACKAGE_MATCHER_ABI_COMPAT define so that this branch can be + - add PACKAGE_MATCHER_ABI_COMPAT define so that this branch can be merged without breaking ABI - add lintian override for no-shlibs-control-file so that the internal libapt-private.so.0.0.0 can be shipped @@ -3941,7 +4024,7 @@ apt (0.9.11) unstable; urgency=low apt (0.9.10) unstable; urgency=low The "Hello to Debconf" upload - + [ Christian Perrier ] * Vietnamese translation update. Closes: #718615 * Japanese translation update. Closes: #719279 @@ -3956,7 +4039,7 @@ apt (0.9.10) unstable; urgency=low * make the code -Wall clean again * remove duplicated #include<list> * add .travis.yml - * use the 'abi-complicance-checker' package and remove the buildin + * use the 'abi-complicance-checker' package and remove the buildin copy for the abi checks [ David Kalnischkies ] @@ -3979,7 +4062,7 @@ apt (0.9.10) unstable; urgency=low * make the keyring locations in apt-key configurable * let apt-key del work better with softlink and single key keyrings * do not call 'apt-key update' in apt.postinst - + [ Colin Watson ] * prefer native arch over higher priority for providers (Closes: #718482) @@ -3991,7 +4074,7 @@ apt (0.9.9.4) unstable; urgency=low * pick up Translation-* even if only compressed available (Closes: 717665) * request absolute URIs from proxies again (0.9.9.3 regression) (Closes: 717891) - + [ Michael vogt ] * fix missing changelog entry for 0.9.9.3 (git-dch issue) @@ -4001,9 +4084,9 @@ apt (0.9.9.3) unstable; urgency=low [ Ben Hutchings ] * debian/apt.auto-removal.sh: - - do not include debug symbol packages for the kernel in the + - do not include debug symbol packages for the kernel in the blacklist (closes: #717616) - + [ Michael Vogt ] * debian/apt.postinst: - run /etc/kernel/postinst.d/apt-auto-removal once on upgrade @@ -4016,7 +4099,7 @@ apt (0.9.9.3) unstable; urgency=low [ Raphael Geissert ] * Do not send a connection: keep-alive, at all - + -- Michael Vogt <mvo@debian.org> Thu, 25 Jul 2013 17:14:58 +0200 apt (0.9.9.2) unstable; urgency=low @@ -4101,14 +4184,14 @@ apt (0.9.8.2) unstable; urgency=low [ Guillem Jover ] * Update Vcs fields (Closes: #708562) - + [ Michael Vogt ] * buildlib/apti18n.h.in: - fix build failure when building without NLS (closes: #671587) - + [ Gregoire Menuel ] * Fix double free (closes: #711045) - + [ Raphael Geissert ] * Fix crash when the "mirror" method does not find any entry (closes: #699303) @@ -4126,7 +4209,7 @@ apt (0.9.8.1) unstable; urgency=low * apt-pkg/indexcopy.cc: - non-inline RunGPGV methods to restore ABI compatibility with previous versions to fix partial upgrades (Closes: #707771) - + [ Michael Vogt ] * moved source to http://git.debian.org/apt/apt.git * updated gbp.conf to match what bzr-buildpackage is doing @@ -4137,18 +4220,18 @@ apt (0.9.8.1) unstable; urgency=low apt (0.9.8) unstable; urgency=low [ Ludovico Cavedon ] - * properly handle if-modfied-since with libcurl/https + * properly handle if-modfied-since with libcurl/https (closes: #705648) - + [ Andreas Beckman ] * apt-pkg/algorithms.cc: - Do not propagate negative scores from rdepends. Propagating the absolute value of a negative score may boost obsolete packages and keep them installed instead of installing their successors. (Closes: #699759) - + [ Michael Vogt ] * apt-pkg/sourcelist.cc: - - fix segfault when a hostname contains a [, thanks to + - fix segfault when a hostname contains a [, thanks to Tzafrir Cohen (closes: #704653) * debian/control: - replace manpages-it (closes: #704723) @@ -4175,14 +4258,14 @@ apt (0.9.8) unstable; urgency=low [ Marc Deslauriers ] * make apt-ftparchive generate missing deb-src hashes (LP: #1078697) - + [ Yaroslav Halchenko ] * Fix English spelling error in a message ('A error'). Unfuzzy translations. Closes: #705087 [ Programs translations ] * French translation completed (Christian Perrier) - + [ Manpages translations ] * French translation completed (Christian Perrier) @@ -4202,7 +4285,7 @@ apt (0.9.8) unstable; urgency=low - environment variables do not override an explicit no proxy directive ("DIRECT") in apt.conf - disregard all_proxy environment variable, like other methods - + -- Michael Vogt <mvo@debian.org> Wed, 08 May 2013 18:43:28 +0200 apt (0.9.7.9~exp2) experimental; urgency=low @@ -4210,7 +4293,7 @@ apt (0.9.7.9~exp2) experimental; urgency=low [ Programs translations ] * Update all PO files and apt-all.pot * French translation completed (Christian Perrier) - + [ Daniel Hartwig ] * cmdline/apt-get.cc: - do not have space between "-a" and option when cross building @@ -4257,7 +4340,7 @@ apt (0.9.7.9~exp1) experimental; urgency=low [ Niels Thykier ] * test/libapt/assert.h, test/libapt/run-tests: - exit with status 1 on test failure - + [ Daniel Hartwig ] * test/integration/framework: - continue after test failure but preserve exit status @@ -4269,9 +4352,9 @@ apt (0.9.7.9~exp1) experimental; urgency=low * methods/connect.cc: - provide useful error message in case of EAI_SYSTEM (closes: #703603) - + [ Michael Vogt ] - * add new config options "Acquire::ForceIPv4" and + * add new config options "Acquire::ForceIPv4" and "Acquire::ForceIPv6" to allow focing one or the other (closes: #611891) * lp:~mvo/apt/fix-tagfile-hash: @@ -4286,7 +4369,7 @@ apt (0.9.7.8) unstable; urgency=critical * SECURITY UPDATE: InRelease verification bypass - CVE-2013-1051 - + [ David Kalnischk ] * apt-pkg/deb/debmetaindex.cc, test/integration/test-bug-595691-empty-and-broken-archive-files, @@ -4299,7 +4382,7 @@ apt (0.9.7.8) unstable; urgency=critical apt (0.9.7.8~exp2) experimental; urgency=low * include two missing patches to really fix bug #696225, thanks to - Guillem Jover + Guillem Jover * ensure sha512 is really used when available, thanks to Tyler Hicks (LP: #1098752) @@ -4309,12 +4392,12 @@ apt (0.9.7.8~exp1) experimental; urgency=low [ Manpages translation updates ] * Italian (Beatrice Torracca). Closes: #696601 - + [ Programs translation updates ] * Japanese (Kenshi Muto). Closes: #699783 - + [ Michael Vogt ] - * fix pkgProblemResolver::Scores, thanks to Paul Wise. + * fix pkgProblemResolver::Scores, thanks to Paul Wise. Closes: #697577 * fix missing translated apt.8 manpages, thanks to Helge Kreutzmann for the report. Closes: #696923 @@ -4334,7 +4417,7 @@ apt (0.9.7.8~exp1) experimental; urgency=low * methods/http.cc: - quote spaces in filenames to ensure as the http method is also (potentially) used for non deb,dsc content that may contain - spaces, thanks to Daniel Hartwig and Thomas Bushnell + spaces, thanks to Daniel Hartwig and Thomas Bushnell (LP: #1086997) - quote plus in filenames to work around a bug in the S3 server (LP: #1003633) @@ -4373,7 +4456,7 @@ apt (0.9.7.7) unstable; urgency=low * apt-pkg/algorithms.cc: - ensure pkgProblemResolver calls MarkDelete without FromUser set so that it can't overrule holds and the protection flag - + [ Michael Vogt ] * change permissions of /var/log/apt/term.log to 0640 (LP: #975199) @@ -4413,7 +4496,7 @@ apt (0.9.7.6) unstable; urgency=low * apt-pkg/contrib/netrc.cc: - remove the 64 char limit for login/password in internal usage - remove 256 char line limit by using getline() (POSIX.1-2008) - + [ Colin Watson ] * apt-pkg/pkgcachegen.cc: - Fix crash if the cache is remapped while writing a Provides version @@ -4800,7 +4883,7 @@ apt (0.9.4) unstable; urgency=low [ Michael Vogt ] * merged updated de.po, thanks to Holger Wansing (closes: #672466) - + [ Raphael Geissert ] * apt-pkg/acquire*.cc: - handle redirections in the worker with the right method instead of @@ -4929,7 +5012,7 @@ apt (0.9.1) unstable; urgency=low Merci, les Titeps! * Drop hardcoded "en.html" suffix in apt-secure manpage. Thanks to David Prevot. - + -- Michael Vogt <mvo@debian.org> Tue, 17 Apr 2012 09:49:31 +0200 apt (0.9.0) unstable; urgency=low @@ -4946,10 +5029,10 @@ apt (0.9.0~exp1) experimental; urgency=low - add APT::pkgPackageManager::MaxLoopCount to ensure that the ordering code does not get into a endless loop when it flip-flops between two states - * update libapt-inst1.4 to libapt-inst1.5 because of the cleanup + * update libapt-inst1.4 to libapt-inst1.5 because of the cleanup performed * prepare debian/unstable upload, if there are no issues with this - upload it will directly go into unstable as 0.9.0 + upload it will directly go into unstable as 0.9.0 [ David Kalnischkies ] * do not update po and pot files in the process of the build as this @@ -5318,7 +5401,7 @@ apt (0.8.16~exp6) experimental; urgency=low size are pretty unlikely for now, but we need it for deb packages which could become bigger than 4GB now (LP: #815895) * merged the debian-sid branch - + [ Michael Vogt ] * bump ABI version @@ -5330,7 +5413,7 @@ apt (0.8.16~exp5) experimental; urgency=low * apt-pkg/makefile: - install sha256.h compat header * apt-pkg/pkgcachegen.{cc,h}: - - use ref-to-ptr semantic in NewDepends() to ensure that the + - use ref-to-ptr semantic in NewDepends() to ensure that the libapt does not segfault if the cache is remapped in between (LP: #812862) - fix crash when P.Arch() was used but the cache got remapped @@ -5340,7 +5423,7 @@ apt (0.8.16~exp5) experimental; urgency=low * apt-pkg/acquire.cc: - fix potential divide-by-zero * methods/mirror.cc: - - include the architecture(s) in the query string as well so + - include the architecture(s) in the query string as well so that the server can make better decisions -- Michael Vogt <mvo@debian.org> Mon, 15 Aug 2011 14:52:54 +0200 @@ -5354,7 +5437,7 @@ apt (0.8.16~exp4) experimental; urgency=low - Write the file size to the cache * apt-pkg/pkgcache.cc: - Check that cache is at least CacheFileSize bytes large (LP: #16467) - + [ Michael Vogt ] * merged latest fixes from debian-sid * apt-pkg/cdrom.{cc,h}: @@ -5396,7 +5479,7 @@ apt (0.8.16~exp3) experimental; urgency=low [ Michael Vogt ] * merge fixes from the debian/unstable upload - * merge lp:~mvo/apt/sha512-template to get fixes for the + * merge lp:~mvo/apt/sha512-template to get fixes for the sha1/md5 verifiation (closes: #632520) -- Michael Vogt <mvo@debian.org> Fri, 15 Jul 2011 09:56:17 +0200 @@ -5426,7 +5509,7 @@ apt (0.8.16~exp2) experimental; urgency=low [ Stefano Zacchiroli ] * doc/external-dependency-solver-protocol.txt: - describe EDSP and the configuration interface around it - + [ Michael Vogt ] * [ABI-Break] merge lp:~mvo/apt/sha512-template to add support for sha512 * [ABI-Break] merge lp:~mvo/apt/dpointer to support easier extending @@ -5595,7 +5678,7 @@ apt (0.8.15.6) unstable; urgency=low * apt-pkg/sourcelist.{cc,h}: - add pkgSourceList::GetLastModifiedTime() helper * apt-pkg/pkgcachegen.{cc,h}: - - use ref-to-ptr semantic in NewDepends() to ensure that the + - use ref-to-ptr semantic in NewDepends() to ensure that the libapt does not segfault if the cache is remapped in between (LP: #812862) - fix crash when P.Arch() was used but the cache got remapped @@ -5604,7 +5687,7 @@ apt (0.8.15.6) unstable; urgency=low * apt-pkg/acquire-item.cc: - if no Release.gpg file is found, still load the hashes for verification (closes: #636314) and add test - + [ David Kalnischkies ] * lots of cppcheck fixes @@ -5633,7 +5716,7 @@ apt (0.8.15.4) unstable; urgency=low unescape character escapes like \0XX and \xXX (plus added test) * refresh po/* - + -- Michael Vogt <mvo@debian.org> Tue, 26 Jul 2011 12:12:27 +0200 apt (0.8.15.3) unstable; urgency=low @@ -5684,7 +5767,7 @@ apt (0.8.15.3) unstable; urgency=low apt (0.8.15.2) unstable; urgency=high - * fix from David Kalnischkies for the InRelease gpg verification + * fix from David Kalnischkies for the InRelease gpg verification code (LP: #784473) -- Michael Vogt <mvo@debian.org> Tue, 12 Jul 2011 11:54:47 +0200 @@ -5805,7 +5888,7 @@ apt (0.8.15) unstable; urgency=low - ignore lines starting with "#" in the mirror file - ignore non http urls in the mirrors - append the dist (e.g. sid, wheezy) as a query string when - asking for a suitable mirror + asking for a suitable mirror * apt-pkg/deb/deblistparser.cc: - include all known languages when building the apt cache (LP: #794907) @@ -5815,7 +5898,7 @@ apt (0.8.15) unstable; urgency=low [ Kenneth Solbø Andersen ] * apt-pkg/deb/dpkgpm.cc: - set permissions of term.log to root.adm and 644 (LP: #404724) - + [ Chris Leick ] * various typo and syntax corrections in doc/*.xml @@ -5824,7 +5907,7 @@ apt (0.8.15) unstable; urgency=low apt (0.8.15~exp3) experimental; urgency=low * debian/control: - - add Breaks: 0.8.15~exp3) for libapt-pkg4.10 and + - add Breaks: 0.8.15~exp3) for libapt-pkg4.10 and libapt-inst1.2 (thanks to Jonathan Nieder, closes: #630214) - use depends for the ${shlibs:Depends} to make the breaks work @@ -5919,7 +6002,7 @@ apt (0.8.15~exp1) experimental; urgency=low - ignore lines starting with "#" in the mirror file - ignore non http urls in the mirrors - append the dist (e.g. sid, wheezy) as a query string when - asking for a suitable mirror + asking for a suitable mirror * debian/control: - add libapt-pkg4.10 and libapt-inst1.2 library packages @@ -6025,7 +6108,7 @@ apt (0.8.14) unstable; urgency=low (Closes: #121132) * debian/control: - Set Standards-Version to 3.9.2 - + [ Michael Vogt ] * mirror method: - do not crash if the mirror file fails to download @@ -6090,8 +6173,8 @@ apt (0.8.13) unstable; urgency=low [ Thorsten Spindler ] * methods/rsh.cc - fix rsh/ssh option parsing (LP: #678080), thanks to - Ville Mattila - + Ville Mattila + [ Michael Vogt ] * apt-pkg/acquire-item.cc: - mark pkgAcqIndexTrans as Index-File to avoid asking the @@ -6185,7 +6268,7 @@ apt (0.8.11.4) unstable; urgency=low - ensure that va_list is not invalid in second try * cmdline/apt-get.cc: - don't remove new dependencies of garbage packages (Closes: #613420) - + [ Michael Vogt ] * test/integration/* - fix dashish in the integration tests @@ -6207,11 +6290,11 @@ apt (0.8.11.2) unstable; urgency=low [ Michael Vogt ] * merged lp:~evfool/apt/fix641673: - - String-fix in the source and the translations for the grammatical + - String-fix in the source and the translations for the grammatical mistake reported in bug LP: #641673, thanks to Robert Roth * merged lp:~evfool/apt/fix418552: - Grammar fix for bug LP: #418552, thanks to Robert Roth - + [ David Kalnischkies ] * cmdline/apt-get.cc: - add --install-suggests option (Closes: #473089) @@ -6382,7 +6465,7 @@ apt (0.8.10.1) unstable; urgency=low if packages could not found (LP: #647045) [ Programs translations ] - * Spanish update by Javier Fernández-Sanguino Peña. Closes: #607145 + * Spanish update by Javier Fernández-Sanguino Peña. Closes: #607145 [ Manpages translations ] * Correct a typo and an error in French manpages translation. @@ -6561,9 +6644,9 @@ apt (0.8.4) unstable; urgency=low available LP: #633967. Thanks to Colin Watson * apt-pkg/contrib/cdromutl.cc: - if apt-cdrom is used on writable media (like usb-sticks), do - not use the root directory to identify the medium (as all - changes there change the ident id). Use the .disk directory - instead + not use the root directory to identify the medium (as all + changes there change the ident id). Use the .disk directory + instead [ David Kalnischkies ] * ftparchive/writer.cc: @@ -6806,7 +6889,7 @@ apt (0.7.26~exp11) experimental; urgency=low - try to install another or-group member in DepRemove before breaking the or group (Closes: #590438) - configure also the replacement before remove by adding Immediate flag - + [ Michael Vogt ] * apt-pkg/contrib/error.{cc,h} - docstring cleanup @@ -6956,7 +7039,7 @@ apt (0.7.26~exp6) experimental; urgency=low - enable cdrom autodetection via libudev by default - show message about Vcs in use when apt-get source is run for packages maintained in a Vcs - - better support transitional packages with mark auto-installed. + - better support transitional packages with mark auto-installed. when the transitional package is in "oldlibs" the new package is not marked auto installed (same is true for section metapackages) @@ -6966,7 +7049,7 @@ apt (0.7.26~exp6) experimental; urgency=low - write apport crash file on package failure (disabled by default on debian until apport is available) - support mirror failure reporting (disabled by default on debian) - + [ David Kalnischkies ] * apt-pkg/deb/dpkgpm.cc: - write Disappeared also to the history.log @@ -7082,7 +7165,7 @@ apt (0.7.26~exp5) experimental; urgency=low [ Michael Vogt ] * methods/http.{cc,h}: - code cleanup, use enums instead of magic ints - + [ Jari Aalto ] * debian/rules: - spell out some less known options to reduce manpage consultation-rate @@ -7092,7 +7175,7 @@ apt (0.7.26~exp5) experimental; urgency=low [ Julian Andres Klode ] * apt-pkg/acquire-item.cc: - Fix pkgAcqFile::Custom600Headers() to always return something. - + [ Christian Perrier ] * Slovak translation update. Closes: #581159 @@ -7172,7 +7255,7 @@ apt (0.7.26~exp4) experimental; urgency=low * apt-pkg/deb/debrecords.cc: - fix max tag buffer size (LP: #545336, closes: #578959) * debian/rules: - - install html doxygen in libapt-pkg-doc + - install html doxygen in libapt-pkg-doc * debian/control: - build-depend on doxygen @@ -7291,7 +7374,7 @@ apt (0.7.26~exp3) experimental; urgency=low - if apt-get source foo=version or foo/distro can not be found, error out (LP: #502641) * apt-pkg/packagemanager.cc: - - better debug output + - better debug output * doc/examples/configure-index: - add missing Debug::pkgPackageManager option @@ -7344,7 +7427,7 @@ apt (0.7.26~exp1) experimental; urgency=low [ Ivan Masár ] * Slovak translation update. Closes: #568294 - + [ Michael Vogt ] * [BREAK] merged lp:~mvo/apt/history - this writes a /var/log/apt/history tagfile that contains details @@ -7352,8 +7435,8 @@ apt (0.7.26~exp1) experimental; urgency=low * methods/http.cc: - add cache-control headers even if no cache is given to allow adding options for intercepting proxies - - add Acquire::http::ProxyAutoDetect configuration that - can be used to call a external helper to figure out the + - add Acquire::http::ProxyAutoDetect configuration that + can be used to call a external helper to figure out the proxy configuration and return it to apt via stdout (this is a step towards WPAD and zeroconf/avahi support) * abicheck/ @@ -7504,11 +7587,11 @@ apt (0.7.25) unstable; urgency=low Closes: #551534 * Italian translation update by Milo Casagrande Closes: #555797 - * Simplified Chinese translation update by Aron Xu + * Simplified Chinese translation update by Aron Xu Closes: #558737 * Slovak translation update by Ivan Masár Closes: #559277 - + [ Michael Vogt ] * apt-pkg/packagemanager.cc: - add output about pre-depends configuring when debug::pkgPackageManager @@ -7531,7 +7614,7 @@ apt (0.7.25) unstable; urgency=low [ Brian Murray ] * apt-pkg/depcache.cc, apt-pkg/indexcopy.cc: - typo fix (LP: #462328) - + [ Loïc Minier ] * cmdline/apt-key: - Emit a warning if removed keys keyring is missing and skip associated @@ -7646,7 +7729,7 @@ apt (0.7.24) unstable; urgency=low [ Michael Vogt ] * apt-pkg/deb/dpkgpm.cc: - - when tcgetattr() returns non-zero skip all pty magic + - when tcgetattr() returns non-zero skip all pty magic (thanks to Simon Richter, closes: #509866) * apt-inst/contrib/arfile.cc: - show proper error message for Invalid archive members @@ -7703,7 +7786,7 @@ apt (0.7.23.1) unstable; urgency=low [ Michael Vogt ] * apt-pkg/pkgcache.cc: - - do not set internal "needs-configure" state for packages in + - do not set internal "needs-configure" state for packages in triggers-pending state. dpkg will deal with the trigger and it if does it before we trigger it, dpkg will error out (LP: #414631) @@ -7721,7 +7804,7 @@ apt (0.7.23) unstable; urgency=low and '{http,ftp}_proxy' environment variables are used only if options mentioned above are not specified. (Closes: #445985, #157759, #320184, #365880, #479617) - + [ David Kalnischkies ] * cmdline/apt-get.cc: - add APT::Get::HideAutoRemove=small to display only a short line @@ -7806,7 +7889,7 @@ apt (0.7.22) unstable; urgency=low Thanks to Aurélien Couderc. * Translations: - fr.po - - sk.po. Closes: #525857 + - sk.po. Closes: #525857 - ru.po. Closes: #526816 - eu.po. Closes: #528985 - zh_CN.po. Closes: #531390 @@ -7817,7 +7900,7 @@ apt (0.7.22) unstable; urgency=low * Added translations - ast.po (Asturian by Marcos Alvareez Costales). Closes: #529007, #529730, #535328 - + [ David Kalnischkies ] * [ABI break] support '#' in apt.conf and /etc/apt/preferences (closes: #189866) @@ -7825,7 +7908,7 @@ apt (0.7.22) unstable; urgency=low * support running "--simulate" as user * add depth information to the debug output and show what depends type triggers a autoinst (closes: #458389) - * add Debug::pkgDepCache::Marker with more detailed debug output + * add Debug::pkgDepCache::Marker with more detailed debug output (closes: #87520) * add Debug::pkgProblemResolver::ShowScores and make the scores adjustable @@ -7855,14 +7938,14 @@ apt (0.7.22) unstable; urgency=low - provide DPkg::Chroot-Directory config option (useful for testing) - fix potential hang when in a background process group * apt-pkg/algorithms.cc: - - consider recommends when making the scores for the problem + - consider recommends when making the scores for the problem resolver * apt-pkg/acquire-worker.cc: - show error details of failed methods * apt-pkg/contrib/fileutl.cc: - if a process aborts with signal, show signal number * methods/http.cc: - - ignore SIGPIPE, we deal with EPIPE from write in + - ignore SIGPIPE, we deal with EPIPE from write in HttpMethod::ServerDie() (LP: #385144) * Only run Download-Upgradable and Unattended-Upgrades if the initial update was successful Closes: #341970 @@ -7870,7 +7953,7 @@ apt (0.7.22) unstable; urgency=low - support having CDs with no Packages file (just a Packages.gz) by not forcing a verification on non-existing files (LP: #255545) - - remove the gettext from a string that consists entirely + - remove the gettext from a string that consists entirely of variables (LP: #56792) * apt-pkg/cacheiterators.h: - add missing checks for Owner == 0 in end() @@ -7880,9 +7963,9 @@ apt (0.7.22) unstable; urgency=low - add new strprintf() function to make i18n strings easier - fix compiler warning * apt-pkg/deb/debsystem.cc: - - make strings i18n able - * fix problematic use of tolower() when calculating the version - hash by using locale independent tolower_ascii() function. + - make strings i18n able + * fix problematic use of tolower() when calculating the version + hash by using locale independent tolower_ascii() function. Thanks to M. Vefa Bicakci (LP: #80248) * build fixes for g++-4.4 * cmdline/apt-mark: @@ -7893,13 +7976,13 @@ apt (0.7.22) unstable; urgency=low - merged patch from Aurélien Couderc to improve the text (thanks!) * [ABI] merged the libudev-dlopen branch, this allows one to pass - "apt-udev-auto" to Acquire::Cdrom::mount and the cdrom method will + "apt-udev-auto" to Acquire::Cdrom::mount and the cdrom method will dynamically find/mount the cdrom device (if libhal is available) [ Julian Andres Klode ] * apt-pkg/contrib/configuration.cc: Fix a small memory leak in ReadConfigFile. - * Introduce support for the Enhances field. (Closes: #137583) + * Introduce support for the Enhances field. (Closes: #137583) * Support /etc/apt/preferences.d, by adding ReadPinDir() (Closes: #535512) * configure-index: document Dir::Etc::SourceParts and some other options (Closes: #459605) @@ -7909,15 +7992,15 @@ apt (0.7.22) unstable; urgency=low SHA1Summation and SHA256Summation [ Osamu Aoki ] - * Updated cron script to support backups by hardlinks and - verbose levels. All features turned off by default. + * Updated cron script to support backups by hardlinks and + verbose levels. All features turned off by default. * Added more error handlings. Closes: #438803, #462734, #454989 - * Documented all cron script related configuration items in + * Documented all cron script related configuration items in configure-index. [ Dereck Wonnacott ] * apt-ftparchive might write corrupt Release files (LP: #46439) - * Apply --important option to apt-cache depends (LP: #16947) + * Apply --important option to apt-cache depends (LP: #16947) [ Otavio Salvador ] * Apply patch from Sami Liedes <sliedes@cc.hut.fi> to reduce the @@ -7940,7 +8023,7 @@ apt (0.7.21) unstable; urgency=low - sk.po. Closes: #520403 - it.po. Closes: #522222 - sk.po. Closes: #520403 - + [ Jamie Strandboge ] * apt.cron.daily: catch invalid dates due to DST time changes in the stamp files @@ -7961,7 +8044,7 @@ apt (0.7.21) unstable; urgency=low * Clarify the --help for 'purge' (LP: #243948) * cmdline/apt-get.cc - fix "apt-get source pkg" if there is a binary package and - a source package of the same name but from different + a source package of the same name but from different packages (LP: #330103) [ Colin Watson ] @@ -7984,9 +8067,9 @@ apt (0.7.20.1) unstable; urgency=low [ Michael Vogt ] * apt-pkg/pkgcachegen.cc: - - fix apt-cache search for localized description + - fix apt-cache search for localized description (closes: #512110) - + [ Christian Perrier ] * Translations: - fr.po: fix spelling error to "défectueux". Thanks to Thomas Péteul. @@ -8019,10 +8102,10 @@ apt (0.7.20) unstable; urgency=low (Closes: #440049, #509337) [ Michael Vogt ] - * add option to "apt-get build-dep" to mark the needed - build-dep packages as automatic installed. + * add option to "apt-get build-dep" to mark the needed + build-dep packages as automatic installed. This is controlled via the value of - APT::Get::Build-Dep-Automatic and is set "false" by default. + APT::Get::Build-Dep-Automatic and is set "false" by default. Thanks to Aaron Haviland, closes: #448743 * apt-inst/contrib/arfile.cc: - support members ending with '/' as well (thanks to Michal Cihr, @@ -8030,12 +8113,12 @@ apt (0.7.20) unstable; urgency=low [ Christian Perrier ] * Translations: - - Finnish updated. Closes: #508449 + - Finnish updated. Closes: #508449 - Galician updated. Closes: #509151 - Catalan updated. Closes: #509375 - Vietnamese updated. Closes: #509422 - Traditional Chinese added. Closes: #510664 - - French corrected (remove awful use of first person) + - French corrected (remove awful use of first person) -- Michael Vogt <mvo@debian.org> Mon, 05 Jan 2009 08:59:20 +0100 @@ -8079,9 +8162,9 @@ apt (0.7.19) unstable; urgency=low - Norwegian Bokmål updated. Closes: #505934 - Brazilian Portuguese updated. Closes: #505949 - Basque updated. Closes: #506085 - - Russian updated. Closes: #506452 - - Marathi updated. - - Ukrainian updated. Closes: #506545 + - Russian updated. Closes: #506452 + - Marathi updated. + - Ukrainian updated. Closes: #506545 -- Michael Vogt <mvo@debian.org> Mon, 24 Nov 2008 10:33:54 +0100 @@ -8181,7 +8264,7 @@ apt (0.7.17~exp4) experimental; urgency=low apt (0.7.17~exp3) experimental; urgency=low * apt-pkg/acquire-item.cc: - - fix a merge mistake that prevents the fallback to the + - fix a merge mistake that prevents the fallback to the uncompressed 'Packages' to work correctly (closes: #409284) -- Michael Vogt <mvo@debian.org> Wed, 29 Oct 2008 09:36:24 +0100 @@ -8195,7 +8278,7 @@ apt (0.7.17~exp2) experimental; urgency=low * apt-pkg/algorithm.cc: - Strip username and password from source URL in error message. (Closes: #425150) - + [ Michael Vogt ] * fix various -Wall warnings @@ -8242,7 +8325,7 @@ apt (0.7.16) unstable; urgency=low * Retitle the apt-mark.8 manpage (thanks to Justin Pryzby, closes: #471276) * Better documentation on using both APT::Default-Release and /etc/apt/preferences (thanks to Ingo Saitz, closes: #145575) - + [ Michael Vogt ] * doc/apt-cache.8.xml: - add missing citerefentry @@ -8279,7 +8362,7 @@ apt (0.7.15~exp2) experimental; urgency=low [ Michael Vogt ] * apt-pkg/pkgcachegen.cc: - - do not add multiple identical descriptions for the same + - do not add multiple identical descriptions for the same language (closes: #400768) [ Program translations ] @@ -8334,7 +8417,7 @@ apt (0.7.15~exp1) experimental; urgency=low (thanks to Joey Hess) * doc/makefile: - add examples/apt-https-method-example.conf - + -- Michael Vogt <mvo@debian.org> Tue, 16 Sep 2008 21:27:03 +0200 apt (0.7.14) unstable; urgency=low @@ -8370,10 +8453,10 @@ apt (0.7.14) unstable; urgency=low * Apply patch to avoid truncating of arbitrary files. Thanks to Bryan Donlan <bdonlan@fushizen.net> for the patch. Closes: #482476 * Avoid using dbus if dbus-daemon isn't running. Closes: #438803 - + [ Michael Vogt ] * debian/apt.cron.daily: - - apply patch based on the ideas of Francesco Poli for better + - apply patch based on the ideas of Francesco Poli for better behavior when the cache can not be locked (closes: #459344) -- Michael Vogt <mvo@debian.org> Wed, 28 May 2008 15:19:12 +0200 @@ -8390,10 +8473,10 @@ apt (0.7.13) unstable; urgency=low [ Goswin von Brederlow ] * Add support for --no-download on apt-get update. Closes: #478517 - + [ Program translations ] - Vietnamese updated. Closes: #479008 - + -- Otavio Salvador <otavio@debian.org> Fri, 02 May 2008 14:46:00 -0300 apt (0.7.12) unstable; urgency=low @@ -8406,7 +8489,7 @@ apt (0.7.12) unstable; urgency=low * apt-pkg/deb/dpkgpm.cc: - merged patch from Kees Cook to fix annoying upper-case display on amd64 in sbuild - * apt-pkg/algorithms.cc: + * apt-pkg/algorithms.cc: - add APT::Update::Post-Invoke-Success script slot - Make the breaks handling use the kill list. This means, that a Breaks: Pkg (<< version) may put Pkg onto the remove list. @@ -8445,7 +8528,7 @@ apt (0.7.12) unstable; urgency=low - French updated. - Bulgarian updated. Closes: #448492 - Galician updated. Closes: #476839 - + [ Daniel Burrows ] * apt-pkg/depcache.cc: - Patch MarkInstall to follow currently satisfied Recommends even @@ -8465,7 +8548,7 @@ apt (0.7.12) unstable; urgency=low -- Daniel Burrows <dburrows@debian.org> Sat, 26 Apr 2008 12:24:35 -0700 apt (0.7.11) unstable; urgency=critical - + [ Raise urgency to critical since it fixes a critical but for Debian Installer Lenny Beta1 release ] @@ -8537,7 +8620,7 @@ apt (0.7.10) unstable; urgency=low - make the authentication download code more robust against servers/proxies with broken If-Range implementations * apt-pkg/packagemanager.{cc,h}: - - propergate the Immediate flag to make hitting the + - propergate the Immediate flag to make hitting the "E: Internal Error, Could not perform immediate configuration (2)" harder * debian/control: @@ -8551,7 +8634,7 @@ apt (0.7.10) unstable; urgency=low - support lzma data members * ftparchive/multicompress.cc: - support lzma output - + [ Daniel Burrows ] * apt-pkg/contrib/configuration.cc: - if RootDir is set, then FindFile and FindDir will return paths @@ -8607,11 +8690,11 @@ apt (0.7.7) unstable; urgency=low - remove zero size files on I-M-S hit * methods/https.cc: - only send LastModified if we actually have a file - - send range request with if-range + - send range request with if-range - delete failed downloads - delete zero size I-M-S hits * apt-pkg/deb/dpkgpm.{cc,h}: - - merged dpkg-log branch, this lets you specify a + - merged dpkg-log branch, this lets you specify a Dir::Log::Terminal file to log dpkg output to (ABI break) - fix parse error when dpkg sends unexpected data @@ -8643,7 +8726,7 @@ apt (0.7.7) unstable; urgency=low - set "APT::Install-Recommends" to true by default (OMG!) * debian/apt.cron.daily: - only run the cron job if apt-get check succeeds (LP: #131719) - + [ Program translations ] - French updated - Basque updated. Closes: #436425 @@ -8685,7 +8768,7 @@ apt (0.7.7) unstable; urgency=low [ Colin Watson ] * apt-pkg/contrib/mmap.cc: - don't fail if msync() returns > 0 - + -- Michael Vogt <mvo@debian.org> Tue, 23 Oct 2007 14:58:03 +0200 apt (0.7.6) unstable; urgency=low @@ -8754,14 +8837,14 @@ apt (0.7.4) unstable; urgency=low apt (0.7.3) unstable; urgency=low - * fixed compile errors with g++ 4.3 (thanks to + * fixed compile errors with g++ 4.3 (thanks to Daniel Burrows, closes: #429378) * fixes in the auto-mark code (thanks to Daniel Burrows) * fix FTBFS by changing build-depends to libcurl4-gnutls-dev (closes: #428363) * cmdline/apt-get.cc: - - fix InstallTask code when a pkgRecord ends + - fix InstallTask code when a pkgRecord ends with a single '\n' (thanks to Soren Hansen for reporting) * merged from Christian Perrier: * vi.po: completed to 532t, again. Closes: #429899 @@ -8784,7 +8867,7 @@ apt (0.7.2-0.1) unstable; urgency=low -- Steve Langasek <vorlon@debian.org> Thu, 28 Jun 2007 18:46:53 -0700 apt (0.7.2) unstable; urgency=low - + * merged the debian/experimental changes back into the debian/sid branch * merged from Christian Perrier: @@ -8817,20 +8900,20 @@ apt (0.7.2) unstable; urgency=low * add --dsc-only option, thanks to K. Richard Pixley * Removed the more leftover #pragma interface/implementation closes: #306937 (thanks to Andreas Henriksson for the patch) - + -- Michael Vogt <mvo@debian.org> Wed, 06 Jun 2007 23:19:50 +0200 apt (0.7.1) experimental; urgency=low * ABI library name change because it's built against new glibc - * implement SourceVer() in pkgRecords + * implement SourceVer() in pkgRecords (thanks to Daniel Burrows for the patch!) * apt-pkg/algorithm.cc: - use clog for all debugging - - only increase the score of installed applications if they - are not obsolete - - fix resolver bug on removal triggered by weak-dependencies + - only increase the score of installed applications if they + are not obsolete + - fix resolver bug on removal triggered by weak-dependencies with or-groups * methods/http.cc: - send apt version in User-Agent @@ -8838,12 +8921,12 @@ apt (0.7.1) experimental; urgency=low - fix SHA1Hash() return value * apt-pkg/cdrom.cc: - only unmount if APT::CDROM::NoMount is false - * methods/cdrom.cc: + * methods/cdrom.cc: - only umount if it was mounted by the method before * po/gl.po: - fix error translation that causes trouble to lsb_release * apt-pkg/acquire-item.cc: - - if decompression of a index fails, delete the index + - if decompression of a index fails, delete the index * apt-pkg/acquire.{cc,h}: - deal better with duplicated sources.list entries (avoid double queuing of URLs) - this fixes hangs in bzip/gzip @@ -8878,15 +8961,15 @@ apt (0.7.0) experimental; urgency=low * translated package descriptions * task install support * automatic dependency removal (thanks to Daniel Burrows) - * merged support for the new dpkg "Breaks" field + * merged support for the new dpkg "Breaks" field (thanks to Ian Jackson) * handle network failures more gracefully on "update" * support for unattended-upgrades (via unattended-upgrades package) * added apt-transport-https method - * merged "install-recommends" branch (ABI break): + * merged "install-recommends" branch (ABI break): - new "--install-recommends" - - install new recommends on "upgrade" if --install-recommends is + - install new recommends on "upgrade" if --install-recommends is given - new "--fix-policy" option to install all packages with unmet important dependencies (useful with --install-recommends to @@ -8898,7 +8981,7 @@ apt (0.7.0) experimental; urgency=low -- Michael Vogt <mvo@debian.org> Fri, 12 Jan 2007 20:48:07 +0100 apt (0.6.46.4-0.1) unstable; urgency=emergency - + * NMU * Fix broken use of awk in apt-key that caused removal of the wrong keys from the keyring. Closes: #412572 @@ -8931,8 +9014,8 @@ apt (0.6.46.3-0.2) unstable; urgency=high * Non-maintainer upload with permission of Michael Vogt. * Fix FTBFS on most arches (regression from the fix of #400874) - -- Andreas Barth <aba@not.so.argh.org> Tue, 5 Dec 2006 15:51:22 +0000 - + -- Andreas Barth <aba@not.so.argh.org> Tue, 5 Dec 2006 15:51:22 +0000 + apt (0.6.46.3-0.1) unstable; urgency=high * Non-maintainer upload with permission of Michael Vogt. @@ -8940,14 +9023,14 @@ apt (0.6.46.3-0.1) unstable; urgency=high * Add apt-key update in postinst, so that debian-archive-keyring doesn't need to depend on apt >= 0.6. Closes: #401114 * Don't double-queue pdiff files. Closes: #401017 - + -- Andreas Barth <aba@not.so.argh.org> Tue, 5 Dec 2006 10:34:56 +0000 apt (0.6.46.3) unstable; urgency=low * apt-pkg/deb/dpkgpm.cc: - make progress reporting robust against multiline error - messages + messages * Merged from Christian Perrier bzr branch: - ca.po: Updated to 514t @@ -8971,7 +9054,7 @@ apt (0.6.46.3) unstable; urgency=low apt (0.6.46.2) unstable; urgency=low * debian/control: - - depend on debian-archive-keyring to offer clean upgrade path + - depend on debian-archive-keyring to offer clean upgrade path (closes: #386800) * Merged from Christian Perrier bzr branch: - es.po: Updated to 514t. Closes: #391661 @@ -8985,13 +9068,13 @@ apt (0.6.46.2) unstable; urgency=low apt (0.6.46.1) unstable; urgency=low * methods/gzip.cc: - - deal with empty files + - deal with empty files * Applied patch from Daniel Schepler to make apt bin-NMU able. (closes: bug#359634) * rebuild against current g++ because of: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29289 (closes: #390189) - * fix broken i18n in the dpkg progress reporting, thanks to + * fix broken i18n in the dpkg progress reporting, thanks to Frans Pop and Steinar Gunderson. (closes: #389261) * Merged from Christian Perrier bzr branch: * fi.po: Updated to 514t. Closes: #390149 @@ -8999,7 +9082,7 @@ apt (0.6.46.1) unstable; urgency=low * vi.po: Updated to 514t. Closes: #388555 * make the internal buffer in pkgTagFile grow dynamically (closes: #388708) - + -- Michael Vogt <mvo@debian.org> Mon, 2 Oct 2006 20:42:20 +0200 apt (0.6.46) unstable; urgency=low @@ -9033,9 +9116,9 @@ apt (0.6.46) unstable; urgency=low * apt-pkg/tagfile.cc: - applied patch from Jeroen van Wolffelaar to make the tags caseinsensitive (closes: #384182) - - reverted MMap use in the tagfile because it does not work - across pipes (closes: #383487) - + - reverted MMap use in the tagfile because it does not work + across pipes (closes: #383487) + -- Michael Vogt <mvo@debian.org> Thu, 21 Sep 2006 10:25:03 +0200 apt (0.6.45) unstable; urgency=low @@ -9053,16 +9136,16 @@ apt (0.6.45) unstable; urgency=low - make progress reporting more robust against multiline error messages (first half of a fix for #374195) * doc/examples/configure-index: - - document Debug::pkgAcquire::Auth + - document Debug::pkgAcquire::Auth * methods/gpgv.cc: - - deal with gpg error "NODATA". Closes: #296103, Thanks to + - deal with gpg error "NODATA". Closes: #296103, Thanks to Luis Rodrigo Gallardo Cruz for the patch * apt-inst/contrib/extracttar.cc: - fix for string mangling, closes: #373864 * apt-pkg/acquire-item.cc: - check for bzip2 in /bin (closes: #377391) * apt-pkg/tagfile.cc: - - make it work on non-mapable files again, thanks + - make it work on non-mapable files again, thanks to James Troup for confirming the fix (closes: #376777) * Merged from Christian Perrier bzr branch: * ko.po: Updated to 512t. Closes: #378901 @@ -9087,7 +9170,7 @@ apt (0.6.44.2exp1) experimental; urgency=low * added support for i18n of the package descriptions * added support for aptitude like auto-install tracking (a HUGE - HUGE thanks to Daniel Burrows who made this possible) + HUGE thanks to Daniel Burrows who made this possible) * synced with the http://people.debian.org/~mvo/bzr/apt/debian-sid branch * build from http://people.debian.org/~mvo/bzr/apt/debian-experimental @@ -9100,7 +9183,7 @@ apt (0.6.44.2) unstable; urgency=low * apt-pkg/acquire-item.cc: - fix missing chmod() in the new acquire code (thanks to Bastian Blank, Closes: #367425) - * merged from + * merged from http://www.perrier.eu.org/debian/packages/d-i/level4/apt-main: * sk.po: Completed to 512t * eu.po: Completed to 512t @@ -9123,7 +9206,7 @@ apt (0.6.44.1) unstable; urgency=low * apt-pkg/acquire-item.cc: - fix reversed logic of the "Acquire::PDiffs" option - * merged from + * merged from http://www.perrier.eu.org/debian/packages/d-i/level4/apt-main: - po/LINGUAS: added "bg" Closes: #360262 - po/gl.po: Galician translation update. Closes: #366849 @@ -9138,13 +9221,13 @@ apt (0.6.44.1) unstable; urgency=low apt (0.6.44) unstable; urgency=low * apt-pkg/acquire.cc: don't show ETA if it is 0 or absurdely large - * apt-pkg/contrib/sha256.{cc,h},hashes.{cc,h}: support for sha256 + * apt-pkg/contrib/sha256.{cc,h},hashes.{cc,h}: support for sha256 (thanks to Anthony Towns) - * ftparchive/cachedb.{cc,h},writer.{cc,h}: optimizations + * ftparchive/cachedb.{cc,h},writer.{cc,h}: optimizations (thanks to Anthony Towns) * apt pdiff support from experimental merged * apt-pkg/deb/dpkgpm.cc: wording fixes (thanks to Matt Zimmerman) - * apt-pkg/deb/dpkgpm.cc: + * apt-pkg/deb/dpkgpm.cc: - wording fixes (thanks to Matt Zimmerman) - fix error in dpkg interaction (closes: #364513, thanks to Martin Dickopp) * apt-pkg/tagfile.{cc,h}: @@ -9219,7 +9302,7 @@ apt (0.6.43.2) unstable; urgency=low - gl.po: Completed to 511 strings Closes: #347729 - it.po: Yet another update Closes: #347435 * added debian-archive-keyring to the Recommends (closes: #347970) - * fixed message in apt-key to install debian-archive-keyring + * fixed message in apt-key to install debian-archive-keyring * typos fixed in apt-cache.8 (closes: #348348, #347349) * add patch to fix http download corruption problem (thanks to Petr Vandrovec, closes: #280844, #290694) @@ -9251,10 +9334,10 @@ apt (0.6.43.1) unstable; urgency=low apt (0.6.43) unstable; urgency=medium - * Merge bubulle@debian.org--2005/apt--main--0 up to patch-132: + * Merge bubulle@debian.org--2005/apt--main--0 up to patch-132: * zh_CN.po: Completed to 510 strings(Closes: #338267) * gl.po: Completed to 510 strings (Closes: #338356) - * added support for "/etc/apt/sources.list.d" directory + * added support for "/etc/apt/sources.list.d" directory (closes: #66325) * make pkgDirStream (a bit) more complete * fix bug in pkgCache::VerIterator::end() (thanks to Daniel Burrows) @@ -9266,7 +9349,7 @@ apt (0.6.43) unstable; urgency=medium * ABI change, library name changed (closes: #339147) * Fix GNU/kFreeBSD crash on non-existing server file (closes: #317718) * switch to libdb4.3 in build-depends - + -- Michael Vogt <mvo@debian.org> Tue, 29 Nov 2005 00:17:07 +0100 apt (0.6.42.3) unstable; urgency=low @@ -9275,7 +9358,7 @@ apt (0.6.42.3) unstable; urgency=low - patch-118: Russian translation update by Yuri Kozlov (closes: #335164) - patch-119: add update-po as a pre-req for binary (closes: #329910) - patch-121: Complete French translation - - patch-125: Fixed localization of y/n questions in German translation + - patch-125: Fixed localization of y/n questions in German translation (closes: #337078) - patch-126: Swedish translation update (closes: #337163) - patch-127: Complete Tagalog translation (closes: #337306) @@ -9286,7 +9369,7 @@ apt (0.6.42.3) unstable; urgency=low * added armeb to archtable (closes: #333599) * with --allow-unauthenticated use the old fallback behaviour for sources (closes: #335112) - + -- Michael Vogt <mvo@debian.org> Wed, 9 Nov 2005 07:22:31 +0100 apt (0.6.42.2) unstable; urgency=high @@ -9297,13 +9380,13 @@ apt (0.6.42.2) unstable; urgency=high * Priority high to get the AMD key into testing ASAP. -- Frans Pop <fjp@debian.org> Sun, 30 Oct 2005 21:29:11 +0100 - + apt (0.6.42.1) unstable; urgency=low * fix a incorrect example in the apt_preferences man page (thanks to Filipus Klutiero, closes: #282918) * apt-pkg/pkgrecords.cc: - - revert patch from last version, it causes trouble on alpha + - revert patch from last version, it causes trouble on alpha and ia64 (closes: #335102, #335103) * cmdline/apt-get.cc: - be extra careful in FindSrc (closes: #335213) @@ -9316,13 +9399,13 @@ apt (0.6.42) unstable; urgency=low - unmount the cdrom when apt failed to locate any package files * allow cdrom failures and fallback to other sources in that case (closes: #44135) - * better error text when dpkg-source fails + * better error text when dpkg-source fails * Merge bubulle@debian.org--2005/apt--main--0 up to patch-115: - patch-99: Added Galician translation - patch-100: Completed Danish translation (Closes: #325686) - patch-104: French translation completed - patch-109: Italian translation completed - - patch-112: Swedish translation update + - patch-112: Swedish translation update - patch-115: Basque translation completed (Closes: #333299) * applied french man-page update (thanks to Philippe Batailler) (closes: #316638, #327456) @@ -9336,9 +9419,9 @@ apt (0.6.42) unstable; urgency=low * apt-pkg/contrib/md5.cc: - fix a alignment problem on sparc64 that gives random bus errors (thanks to Fabbione for providing a test-case) - * init the default ScreenWidth to 79 columns by default + * init the default ScreenWidth to 79 columns by default (Closes: #324921) - * cmdline/apt-cdrom.cc: + * cmdline/apt-cdrom.cc: - fix some missing gettext() calls (closes: #334539) * doc/apt-cache.8.xml: fix typo (closes: #334714) @@ -9349,8 +9432,8 @@ apt (0.6.41) unstable; urgency=low * improved the support for "error" and "conffile" reporting from dpkg, added the format to README.progress-reporting * added README.progress-reporting to the apt-doc package - * improved the network timeout handling, if a index file from a - sources.list times out or EAI_AGAIN is returned from getaddrinfo, + * improved the network timeout handling, if a index file from a + sources.list times out or EAI_AGAIN is returned from getaddrinfo, don't try to get the other files from that entry * Support architecture-specific extra overrides (closes: #225947). Thanks to Anthony Towns for idea and @@ -9358,10 +9441,10 @@ apt (0.6.41) unstable; urgency=low * Javier Fernandez-Sanguino Pen~a: - Added a first version of an apt-secure.8 manpage, and modified apt-key and apt.end accordingly. Also added the 'update' - argument to apt-key which was previously not documented + argument to apt-key which was previously not documented (Closes: #322120) * Andreas Pakulat: - - added example apt-ftparchive.conf file to doc/examples + - added example apt-ftparchive.conf file to doc/examples (closes: #322483) * Fix a incorrect example in the man-page (closes: #282918) * Fix a bug for very long lines in the apt-cdrom code (closes: #280356) @@ -9370,14 +9453,14 @@ apt (0.6.41) unstable; urgency=low * Change pkgPolicy::Pin from private to protected to let subclasses access it too (closes: #321799) * add default constructor for PrvIterator (closes: #322267) - * Reread status configuration on debSystem::Initialize() + * Reread status configuration on debSystem::Initialize() (needed for apt-proxy, thanks to Otavio for this patch) - + -- Michael Vogt <mvo@debian.org> Mon, 5 Sep 2005 22:59:03 +0200 apt (0.6.40.1) unstable; urgency=low - * bugfix in the parsing code for the apt<->dpkg communication. apt + * bugfix in the parsing code for the apt<->dpkg communication. apt crashed when dpkg sends the same state more than once under certain conditions * 0.6.40 breaks the ABI but I accidentally didn't change the soname :/ @@ -9420,10 +9503,10 @@ apt (0.6.38) unstable; urgency=low - debian/rules: install all keyrings * Add the current Debian archive signing key (4F368D5D) to debian-archive.gpg - * make pinning on the "component" work again (using the section of the + * make pinning on the "component" work again (using the section of the archive, we don't use per-section Release files anymore with apt-0.6) (closes ubuntu #9935) - + -- Matt Zimmerman <mdz@debian.org> Sat, 25 Jun 2005 09:51:00 -0700 apt (0.6.37) breezy; urgency=low @@ -9456,7 +9539,7 @@ apt (0.6.36ubuntu1) breezy; urgency=low warning; - Lock database at start of DoInstall routine to avoid concurrent runs of install/remove and update commands (Closes: #194467) - - Fix warnings while compiling with GCC 4.0 compiler + - Fix warnings while compiling with GCC 4.0 compiler -- Michael Vogt <michael.vogt@ubuntu.com> Mon, 23 May 2005 11:57:53 +0200 @@ -9464,13 +9547,13 @@ apt (0.6.36) experimental; urgency=low * Merge apt--mvo--0: - apt-pkg/acquire-item.cc: - added "Acquire::BrokenProxy" that will force apt to always + added "Acquire::BrokenProxy" that will force apt to always re-get the Release.gpg file (for broken proxies) - debian/apt.cron.daily: MinAge is defaulting to 2 days now to prevent over-aggressive removal - apt-pkg/cdrom.cc: honor "Acquire::gpgv::Options" when verifying the signature (Ubuntu #8496) - + -- Michael Vogt <mvo@debian.org> Thu, 31 Mar 2005 20:37:11 +0200 apt (0.6.35) hoary; urgency=low @@ -9539,13 +9622,13 @@ apt (0.6.30) unstable; urgency=low * Merge michael.vogt@canonical.com--2004/apt--status-fd--0 - Support preserving dpkg status file descriptor, to support better integration with synaptic - + -- Matt Zimmerman <mdz@ubuntu.com> Wed, 19 Jan 2005 00:26:01 -0800 apt (0.6.29) hoary; urgency=low * Merge apt--mvo--0 (0.6.27ubuntu4) - + -- Matt Zimmerman <mdz@canonical.com> Tue, 28 Dec 2004 17:18:02 -0800 @@ -9584,7 +9667,7 @@ apt (0.6.27ubuntu2) hoary; urgency=low apt (0.6.27ubuntu1) hoary; urgency=low * chmod 755 /usr/bin/apt-key - * don't display a error when a apt-get update don't find a + * don't display a error when a apt-get update don't find a Packages.bz2/Sources.bz2 file -- Michael Vogt <mvo@debian.org> Mon, 13 Dec 2004 18:40:21 +0100 @@ -9859,7 +9942,7 @@ apt (0.5.31) unstable; urgency=low apt (0.5.30ubuntu2) hoary; urgency=low - * bzip2 is now "Suggested" and it will detect if bzip2 is installed + * bzip2 is now "Suggested" and it will detect if bzip2 is installed and only then trying to get Packages.bz2 -- Michael Vogt <mvo@debian.org> Fri, 19 Nov 2004 12:00:39 +0100 diff --git a/debian/control b/debian/control index d12f93e1b..0a8594f86 100644 --- a/debian/control +++ b/debian/control @@ -17,9 +17,10 @@ Build-Depends: cmake (>= 3.4), libbz2-dev, libdb-dev, libgnutls28-dev (>= 3.4.6), + libgcrypt20-dev, liblz4-dev (>= 0.0~r126), liblzma-dev, - libseccomp-dev [amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el s390x hppa powerpc powerpcspe ppc64 x32], + libseccomp-dev (>= 2.4.2) [amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el s390x hppa powerpc powerpcspe ppc64 x32], libsystemd-dev [linux-any], libudev-dev [linux-any], libzstd-dev (>= 1.0), @@ -37,7 +38,7 @@ Package: apt Architecture: any Depends: adduser, gpgv | gpgv2 | gpgv1, - libapt-pkg5.90 (>= ${binary:Version}), + libapt-pkg6.0 (>= ${binary:Version}), ${apt:keyring}, ${misc:Depends}, ${shlibs:Depends} @@ -67,7 +68,7 @@ Description: commandline package manager * apt-config as an interface to the configuration settings * apt-key as an interface to manage authentication keys -Package: libapt-pkg5.90 +Package: libapt-pkg6.0 Architecture: any Multi-Arch: same Priority: optional diff --git a/debian/libapt-pkg5.90.install b/debian/libapt-pkg6.0.install index 9ac53bc82..9ac53bc82 100644 --- a/debian/libapt-pkg5.90.install +++ b/debian/libapt-pkg6.0.install diff --git a/debian/libapt-pkg5.90.symbols b/debian/libapt-pkg6.0.symbols index 44f4df7de..af66bf981 100644 --- a/debian/libapt-pkg5.90.symbols +++ b/debian/libapt-pkg6.0.symbols @@ -1,1510 +1,1508 @@ -libapt-pkg.so.5.90 libapt-pkg5.90 #MINVER# +libapt-pkg.so.6.0 libapt-pkg6.0 #MINVER# * Build-Depends-Package: libapt-pkg-dev - TFRewritePackageOrder@APTPKG_5.90 0.8.0 - TFRewriteSourceOrder@APTPKG_5.90 0.8.0 - (c++)"FileExists(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"IdentCdrom(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int)@APTPKG_5.90" 0.8.0 - (c++)"ListUpdate(pkgAcquireStatus&, pkgSourceList&, int)@APTPKG_5.90" 0.8.0 - (c++)"MountCdrom(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"ParseCWord(char const*&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_5.90" 0.8.0 - (c++)"ReadPinDir(pkgPolicy&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"RunScripts(char const*)@APTPKG_5.90" 0.8.0 - (c++)"SafeGetCWD[abi:cxx11]()@APTPKG_5.90" 0.8.0 - (c++)"QuoteString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)@APTPKG_5.90" 0.8.0 - (c++)"ReadPinFile(pkgPolicy&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"RegexChoice(RxChoiceList*, char const**, char const**)@APTPKG_5.90" 0.8.0 - (c++)"SetNonBlock(int, bool)@APTPKG_5.90" 0.8.0 - (c++)"flExtension(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"Base64Encode(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"ReadMessages(int, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@APTPKG_5.90" 0.8.0 - (c++)"SetCloseExec(int, bool)@APTPKG_5.90" 0.8.0 - (c++)"StringToBool(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)@APTPKG_5.90" 0.8.0 - (c++)"UnmountCdrom(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"_GetErrorObj()@APTPKG_5.90" 0.8.0 - (c++)"Base256ToNum(char const*, unsigned long long&, unsigned int)@APTPKG_5.90" 1.0.5 - (c++)"pkgFixBroken(pkgDepCache&)@APTPKG_5.90" 0.8.0 - (c++)"DeQuoteString(__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&)@APTPKG_5.90" 0.8.0 - (c++)"DeQuoteString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"OutputInDepth[abi:cxx11](unsigned long, char const*)@APTPKG_5.90" 0.8.0 - (c++)"ReadConfigDir(Configuration&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, unsigned int const&)@APTPKG_5.90" 0.8.0 - (c++)"URItoFileName(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"UTF8ToCodeset(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)@APTPKG_5.90" 0.8.0 - (c++)"pkgInitConfig(Configuration&)@APTPKG_5.90" 0.8.0 - (c++)"pkgInitSystem(Configuration&, pkgSystem*&)@APTPKG_5.90" 0.8.0 - (c++)"safe_snprintf(char*, char*, char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"stringcasecmp(__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, char const*, char const*)@APTPKG_5.90" 0.8.0 - (c++)"stringcasecmp(__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >)@APTPKG_5.90" 0.8.0 - (c++)"stringcasecmp(char const*, char const*, char const*, char const*)@APTPKG_5.90" 0.8.0 - (c++)"tolower_ascii(int)@APTPKG_5.90" 0.8.0 - (c++)"ParseQuoteWord(char const*&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_5.90" 0.8.0 - (c++)"ReadConfigFile(Configuration&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, unsigned int const&)@APTPKG_5.90" 0.8.0 - (c++)"TokSplitString(char, char*, char**, unsigned long)@APTPKG_5.90" 0.8.0 - (c++)"pkgApplyStatus(pkgDepCache&)@APTPKG_5.90" 0.8.0 - (c++)"CheckDomainList(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"CreateDirectory(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"DirectoryExists(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"VectorizeString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgPrioSortList(pkgCache&, pkgCache::Version**)@APTPKG_5.90" 0.8.0 - (c++)"pkgMinimizeUpgrade(pkgDepCache&)@APTPKG_5.90" 0.8.0 - (c++)"GetListOfFilesInDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool const&)@APTPKG_5.90" 0.8.0 - (c++)"GetListOfFilesInDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, bool const&)@APTPKG_5.90" 0.8.0 - (c++)"WaitFd(int, bool, unsigned long)@APTPKG_5.90" 0.8.0 - (c++)"GetLock(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@APTPKG_5.90" 0.8.0 - (c++)"Hex2Num(APT::StringView, unsigned char*, unsigned int)@APTPKG_5.90" 1.9~ - (c++)"CopyFile(FileFd&, FileFd&)@APTPKG_5.90" 0.8.0 - (c++)"ExecFork()@APTPKG_5.90" 0.8.0 - (c++)"ExecWait(int, char const*, bool)@APTPKG_5.90" 0.8.0 - (c++)"StrToNum(char const*, unsigned long&, unsigned int, unsigned int)@APTPKG_5.90" 0.8.0 - (c++)"SubstVar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"SubstVar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, SubstVar const*)@APTPKG_5.90" 0.8.0 - (c++)"flNoLink(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"flNotDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"ioprintf(std::basic_ostream<char, std::char_traits<char> >&, char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"IsMounted(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_5.90" 0.8.0 - (c++)"LookupTag(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, char const*)@APTPKG_5.90" 0.8.0 - (c++)"SizeToStr[abi:cxx11](double)@APTPKG_5.90" 0.8.0 - (c++)"TimeToStr[abi:cxx11](unsigned long)@APTPKG_5.90" 0.8.0 - (c++)"_strstrip(char*)@APTPKG_5.90" 0.8.0 - (c++)"flCombine(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"flNotFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"stringcmp(__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, char const*, char const*)@APTPKG_5.90" 0.8.0 - (c++)"stringcmp(__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >)@APTPKG_5.90" 0.8.0 - (c++)"stringcmp(char const*, char const*, char const*, char const*)@APTPKG_5.90" 0.8.0 - (c++)"strprintf(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"HashString::SupportedHashes()@APTPKG_5.90" 0.8.0 - (c++)"HashString::_SupportedHashes@APTPKG_5.90" 0.8.0 - (c++)"HashString::HashString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"HashString::HashString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"HashString::HashString()@APTPKG_5.90" 0.8.0 - (c++)"OpProgress::CheckChange(float)@APTPKG_5.90" 0.8.0 - (c++)"OpProgress::OpProgress()@APTPKG_5.90" 0.8.0 - (c++)"SourceCopy::~SourceCopy()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqFile::~pkgAcqFile()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::WorkerStep(pkgAcquire::Worker*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::FetchNeeded()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::TotalNeeded()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::MethodConfig::MethodConfig()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::PartialPresent()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Add(pkgAcquire::Item*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Add(pkgAcquire::Worker*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Run(int)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Bump()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Item::Finished()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Item::~Item()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Clean(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Queue::Bump()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Queue::Cycle()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Queue::Dequeue(pkgAcquire::Item*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Queue::Enqueue(pkgAcquire::ItemDesc&)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Queue::Startup()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Queue::FindItem(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::Worker*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Queue::ItemDone(pkgAcquire::Queue::QItem*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Queue::Shutdown(bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Queue::~Queue()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Remove(pkgAcquire::Item*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Remove(pkgAcquire::Worker*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::RunFds(fd_set*, fd_set*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::RunFdsSane(fd_set*, fd_set*)@APTPKG_5.90" 1.1.1 - (c++)"pkgAcquire::SetFds(int&, fd_set*, fd_set*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::UriEnd()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::OutFdReady()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::MediaChange(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::RunMessages()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::Capabilities(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::ReadMessages()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::MethodFailure()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::SendConfiguration()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::Pulse()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::Start()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::ItemDone()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::Construct()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::InFdReady()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::QueueItem(pkgAcquire::Queue::QItem*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::Worker(pkgAcquire::MethodConfig*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::Worker(pkgAcquire::Queue*, pkgAcquire::MethodConfig*, pkgAcquireStatus*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Worker::~Worker()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Dequeue(pkgAcquire::Item*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Enqueue(pkgAcquire::ItemDesc&)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::Shutdown()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::UriBegin()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::GetConfig(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::QueueName(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig const*&)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::pkgAcquire(pkgAcquireStatus*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::pkgAcquire()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquire::~pkgAcquire()@APTPKG_5.90" 0.8.0 - (c++)"pkgRecords::Lookup(pkgCache::VerFileIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgRecords::Lookup(pkgCache::DescFileIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgRecords::pkgRecords(pkgCache&)@APTPKG_5.90" 0.8.0 - (c++)"pkgRecords::~pkgRecords()@APTPKG_5.90" 0.8.0 - (c++)"pkgTagFile::Step(pkgTagSection&)@APTPKG_5.90" 0.8.0 - (c++)"pkgTagFile::~pkgTagFile()@APTPKG_5.90" 0.8.0 - (c++)"CommandLine::DispatchArg(CommandLine::Dispatch*, bool)@APTPKG_5.90" 0.8.0 - (c++)"CommandLine::SaveInConfig(unsigned int const&, char const* const*)@APTPKG_5.90" 0.8.0 - (c++)"CommandLine::Parse(int, char const**)@APTPKG_5.90" 0.8.0 - (c++)"CommandLine::HandleOpt(int&, int, char const**, char const*&, CommandLine::Args*, bool)@APTPKG_5.90" 0.8.0 - (c++)"CommandLine::CommandLine(CommandLine::Args*, Configuration*)@APTPKG_5.90" 0.8.0 - (c++)"CommandLine::~CommandLine()@APTPKG_5.90" 0.8.0 - (c++)"DynamicMMap::WriteString(char const*, unsigned long)@APTPKG_5.90" 0.8.0 - (c++)"DynamicMMap::Grow()@APTPKG_5.90" 0.8.0 - (c++)"DynamicMMap::Allocate(unsigned long)@APTPKG_5.90" 0.8.0 - (c++)"DynamicMMap::DynamicMMap(FileFd&, unsigned long, unsigned long const&, unsigned long const&, unsigned long const&)@APTPKG_5.90" 0.8.0 - (c++)"DynamicMMap::DynamicMMap(unsigned long, unsigned long const&, unsigned long const&, unsigned long const&)@APTPKG_5.90" 0.8.0 - (c++)"DynamicMMap::~DynamicMMap()@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::DumpErrors(std::basic_ostream<char, std::char_traits<char> >&, GlobalError::MsgType const&, bool const&)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::PopMessage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::InsertErrno(GlobalError::MsgType const&, char const*, char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::PushToStack()@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::RevertToStack()@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::MergeWithStack()@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::Debug(char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::Errno(char const*, char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::Error(char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::Fatal(char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::DebugE(char const*, char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::FatalE(char const*, char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::Insert(GlobalError::MsgType const&, char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::Notice(char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::Discard()@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::NoticeE(char const*, char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::Warning(char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::WarningE(char const*, char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::GlobalError()@APTPKG_5.90" 0.8.0 - (c++)"PackageCopy::~PackageCopy()@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::IsDeleteOk(pkgCache::PkgIterator const&, bool, unsigned long, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::MarkDelete(pkgCache::PkgIterator const&, bool, unsigned long, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::StateCache::Update(pkgCache::PkgIterator, pkgCache&)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::ActionGroup::release()@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::ActionGroup::ActionGroup(pkgDepCache&)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::ActionGroup::~ActionGroup()@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::IsInstallOk(pkgCache::PkgIterator const&, bool, unsigned long, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::MarkInstall(pkgCache::PkgIterator const&, bool, unsigned long, bool, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::SetReInstall(pkgCache::PkgIterator const&, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::BuildGroupOrs(pkgCache::VerIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::readStateFile(OpProgress*)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::GetRootSetFunc()@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::writeStateFile(OpProgress*, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::MarkFollowsSuggests()@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::MarkFollowsRecommends()@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::Init(OpProgress*)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::Policy::GetCandidateVer(pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::Update(pkgCache::DepIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::Update(OpProgress*)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::Update(pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::MarkAuto(pkgCache::PkgIterator const&, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::MarkKeep(pkgCache::PkgIterator const&, bool, bool, unsigned long)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::MarkRequired(pkgDepCache::InRootSetFunc&)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::Sweep()@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::pkgDepCache(pkgCache*, pkgDepCache::Policy*)@APTPKG_5.90" 0.8.0 - (c++)"pkgDepCache::~pkgDepCache()@APTPKG_5.90" 0.8.0 - (c++)"pkgSimulate::Remove(pkgCache::PkgIterator, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgSimulate::Install(pkgCache::PkgIterator, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"pkgSimulate::Configure(pkgCache::PkgIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgSimulate::pkgSimulate(pkgDepCache*)@APTPKG_5.90" 0.8.0 - (c++)"pkgSimulate::~pkgSimulate()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::FetchResult::TakeHashes(Hashes&)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::FetchResult::FetchResult()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::Configuration(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::Log(char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::Run(bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::Fail(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::Fail(bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::Status(char const*, ...)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::URIDone(pkgAcqMethod::FetchResult&, pkgAcqMethod::FetchResult*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::Redirect(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::URIStart(pkgAcqMethod::FetchResult&)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::MediaFail(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::pkgAcqMethod(char const*, unsigned long)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqMethod::~pkgAcqMethod()@APTPKG_5.90" 0.8.0 - (c++)"pkgCacheFile::BuildCaches(OpProgress*, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgCacheFile::BuildPolicy(OpProgress*)@APTPKG_5.90" 0.8.0 - (c++)"pkgCacheFile::BuildDepCache(OpProgress*)@APTPKG_5.90" 0.8.0 - (c++)"pkgCacheFile::BuildSourceList(OpProgress*)@APTPKG_5.90" 0.8.0 - (c++)"pkgCacheFile::Open(OpProgress*, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgCacheFile::Close()@APTPKG_5.90" 0.8.0 - (c++)"pkgCacheFile::pkgCacheFile()@APTPKG_5.90" 0.8.0 - (c++)"pkgCacheFile::~pkgCacheFile()@APTPKG_5.90" 0.8.0 - (c++)"pkgIndexFile::Type::GlobalList@APTPKG_5.90" 0.8.0 - (c++)"pkgIndexFile::Type::GlobalListLen@APTPKG_5.90" 0.8.0 - (c++)"pkgIndexFile::Type::GetType(char const*)@APTPKG_5.90" 0.8.0 - (c++)"pkgIndexFile::Type::Type()@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::VisitRDeps(bool (pkgOrderList::*)(pkgCache::DepIterator), pkgCache::PkgIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::OrderUnpack(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::DepConfigure(pkgCache::DepIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::DepUnPackDep(pkgCache::DepIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::DepUnPackPre(pkgCache::DepIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::DepUnPackCrit(pkgCache::DepIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::DepUnPackPreD(pkgCache::DepIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::OrderCritical()@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::VisitProvides(pkgCache::DepIterator, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::OrderConfigure()@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::VisitRProvides(bool (pkgOrderList::*)(pkgCache::DepIterator), pkgCache::VerIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::DoRun()@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::Score(pkgCache::PkgIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::AddLoop(pkgCache::DepIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::FileCmp(pkgCache::PkgIterator, pkgCache::PkgIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::CheckDep(pkgCache::DepIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::DepRemove(pkgCache::DepIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::IsMissing(pkgCache::PkgIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::VisitDeps(bool (pkgOrderList::*)(pkgCache::DepIterator), pkgCache::PkgIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::WipeFlags(unsigned long)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::pkgOrderList(pkgDepCache*)@APTPKG_5.90" 0.8.0 - (c++)"pkgOrderList::~pkgOrderList()@APTPKG_5.90" 0.8.0 - (c++)"Configuration::MatchAgainstConfig::MatchAgainstConfig(char const*)@APTPKG_5.90" 0.8.0 - (c++)"Configuration::MatchAgainstConfig::~MatchAgainstConfig()@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Set(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Set(char const*, int const&)@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Dump(std::basic_ostream<char, std::char_traits<char> >&)@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Clear(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Clear(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int const&)@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Clear(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"Configuration::CndSet(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Lookup(char const*, bool const&)@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Lookup(Configuration::Item*, char const*, unsigned long const&, bool const&)@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Configuration(Configuration::Item const*)@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Configuration()@APTPKG_5.90" 0.8.0 - (c++)"Configuration::~Configuration()@APTPKG_5.90" 0.8.0 - (c++)"debListParser::ConvertRelation(char const*, unsigned int&)@APTPKG_5.90" 0.8.0 - (c++)"debListParser::GetPrio(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqArchive::Finished()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqArchive::QueueNext()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqArchive::pkgAcqArchive(pkgAcquire*, pkgSourceList*, pkgRecords*, pkgCache::VerIterator const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcqArchive::~pkgAcqArchive()@APTPKG_5.90" 0.8.0 - (c++)"pkgSourceList::Type::GlobalList@APTPKG_5.90" 0.8.0 - (c++)"pkgSourceList::Type::GlobalListLen@APTPKG_5.90" 0.8.0 - (c++)"pkgSourceList::Type::GetType(char const*)@APTPKG_5.90" 0.8.0 - (c++)"pkgSourceList::ReadMainList()@APTPKG_5.90" 0.8.0 - (c++)"pkgSourceList::Reset()@APTPKG_5.90" 0.8.0 - (c++)"pkgSourceList::pkgSourceList()@APTPKG_5.90" 0.8.0 - (c++)"pkgSourceList::~pkgSourceList()@APTPKG_5.90" 0.8.0 - (c++)"pkgSrcRecords::Find(char const*, bool const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgSrcRecords::Parser::BuildDepType(unsigned char const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgSrcRecords::Restart()@APTPKG_5.90" 0.8.0 - (c++)"pkgSrcRecords::pkgSrcRecords(pkgSourceList&)@APTPKG_5.90" 0.8.0 - (c++)"pkgSrcRecords::~pkgSrcRecords()@APTPKG_5.90" 0.8.0 - (c++)"pkgTagSection::TrimRecord(bool, char const*&)@APTPKG_5.90" 0.8.0 - (c++)"pkgTagSection::Trim()@APTPKG_5.90" 0.8.0 - (c++)"OpTextProgress::Done()@APTPKG_5.90" 0.8.0 - (c++)"OpTextProgress::Write(char const*)@APTPKG_5.90" 0.8.0 - (c++)"OpTextProgress::Update()@APTPKG_5.90" 0.8.0 - (c++)"OpTextProgress::OpTextProgress(Configuration&)@APTPKG_5.90" 0.8.0 - (c++)"pkgVersionMatch::ExpressionMatches(char const*, char const*)@APTPKG_5.90" 0.8.0 - (c++)"pkgVersionMatch::ExpressionMatches(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)@APTPKG_5.90" 0.8.0 - (c++)"pkgVersionMatch::Find(pkgCache::PkgIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgVersionMatch::MatchVer(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgVersionMatch::FileMatch(pkgCache::PkgFileIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgVersionMatch::pkgVersionMatch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgVersionMatch::MatchType)@APTPKG_5.90" 0.8.0 - (c++)"TranslationsCopy::CopyTranslations(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, pkgCdromStatus*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquireStatus::Stop()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquireStatus::Pulse(pkgAcquire*)@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquireStatus::Start()@APTPKG_5.90" 0.8.0 - (c++)"pkgAcquireStatus::pkgAcquireStatus()@APTPKG_5.90" 0.8.0 - (c++)"pkgArchiveCleaner::Go(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgCache&)@APTPKG_5.90" 0.8.0 - (c++)"pkgCacheGenerator::MakeStatusCache(pkgSourceList&, OpProgress*, MMap**, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgCacheGenerator::MakeOnlyStatusCache(OpProgress*, DynamicMMap**)@APTPKG_5.90" 0.8.0 - (c++)"pkgPackageManager::FixMissing()@APTPKG_5.90" 0.8.0 - (c++)"pkgPackageManager::GetArchives(pkgAcquire*, pkgSourceList*, pkgRecords*)@APTPKG_5.90" 0.8.0 - (c++)"pkgPackageManager::SmartRemove(pkgCache::PkgIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgPackageManager::SmartUnPack(pkgCache::PkgIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgPackageManager::ConfigureAll()@APTPKG_5.90" 0.8.0 - (c++)"pkgPackageManager::ImmediateAdd(pkgCache::PkgIterator, bool, unsigned int const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgPackageManager::OrderInstall()@APTPKG_5.90" 0.8.0 - (c++)"pkgPackageManager::DepAlwaysTrue(pkgCache::DepIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgPackageManager::CheckRConflicts(pkgCache::PkgIterator, pkgCache::DepIterator, char const*)@APTPKG_5.90" 0.8.0 - (c++)"pkgPackageManager::CreateOrderList()@APTPKG_5.90" 0.8.0 - (c++)"pkgPackageManager::pkgPackageManager(pkgDepCache*)@APTPKG_5.90" 0.8.0 - (c++)"pkgPackageManager::~pkgPackageManager()@APTPKG_5.90" 0.8.0 - (c++)"pkgProblemResolver::pkgProblemResolver(pkgDepCache*)@APTPKG_5.90" 0.8.0 - (c++)"pkgProblemResolver::~pkgProblemResolver()@APTPKG_5.90" 0.8.0 - (c++)"debVersioningSystem::CmpFragment(char const*, char const*, char const*, char const*)@APTPKG_5.90" 0.8.0 - (c++)"debVersioningSystem::DoCmpVersion(char const*, char const*, char const*, char const*)@APTPKG_5.90" 0.8.0 - (c++)"debVersioningSystem::UpstreamVersion[abi:cxx11](char const*)@APTPKG_5.90" 0.8.0 - (c++)"debVersioningSystem::CheckDep(char const*, int, char const*)@APTPKG_5.90" 0.8.0 - (c++)"debVersioningSystem::debVersioningSystem()@APTPKG_5.90" 0.8.0 - (c++)"pkgUdevCdromDevices::Scan()@APTPKG_5.90" 0.8.0 - (c++)"pkgUdevCdromDevices::Dlopen()@APTPKG_5.90" 0.8.0 - (c++)"pkgUdevCdromDevices::pkgUdevCdromDevices()@APTPKG_5.90" 0.8.0 - (c++)"pkgUdevCdromDevices::~pkgUdevCdromDevices()@APTPKG_5.90" 0.8.0 - (c++)"pkgVersioningSystem::GlobalList@APTPKG_5.90" 0.8.0 - (c++)"pkgVersioningSystem::GlobalListLen@APTPKG_5.90" 0.8.0 - (c++)"pkgVersioningSystem::GetVS(char const*)@APTPKG_5.90" 0.8.0 - (c++)"pkgVersioningSystem::pkgVersioningSystem()@APTPKG_5.90" 0.8.0 - (c++)"APT::CacheFilter::PackageNameMatchesRegEx::PackageNameMatchesRegEx(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"APT::CacheFilter::PackageNameMatchesRegEx::~PackageNameMatchesRegEx()@APTPKG_5.90" 0.8.0 - (c++)"APT::CacheFilter::PackageNameMatchesRegEx::operator()(pkgCache::GrpIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"APT::CacheFilter::PackageNameMatchesRegEx::operator()(pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"APT::Configuration::checkArchitecture(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"APT::CacheSetHelper::canNotFindPkgName(pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"APT::CacheSetHelper::canNotFindNewestVer(pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"APT::CacheSetHelper::canNotFindCandidateVer(pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"APT::CacheSetHelper::canNotFindInstalledVer(pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"APT::CacheSetHelper::~CacheSetHelper()@APTPKG_5.90" 0.8.0 - (c++)"URI::NoUserPassword(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"URI::CopyFrom(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"URI::SiteOnly(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.0 - (c++)"URI::operator std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >()@APTPKG_5.90" 0.8.0 - (c++)"MMap::Map(FileFd&)@APTPKG_5.90" 0.8.0 - (c++)"MMap::Sync(unsigned long, unsigned long)@APTPKG_5.90" 0.8.0 - (c++)"MMap::Sync()@APTPKG_5.90" 0.8.0 - (c++)"MMap::Close(bool)@APTPKG_5.90" 0.8.0 - (c++)"MMap::MMap(FileFd&, unsigned long)@APTPKG_5.90" 0.8.0 - (c++)"MMap::MMap(unsigned long)@APTPKG_5.90" 0.8.0 - (c++)"MMap::~MMap()@APTPKG_5.90" 0.8.0 - (c++)"FileFd::Size()@APTPKG_5.90" 0.8.0 - (c++)"FileFd::Sync()@APTPKG_5.90" 0.8.0 - (c++)"FileFd::Tell()@APTPKG_5.90" 0.8.0 - (c++)"FileFd::Close()@APTPKG_5.90" 0.8.0 - (c++)"FileFd::~FileFd()@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::CompTypeDeb(unsigned char)@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::DepIterator::GlobOr(pkgCache::DepIterator&, pkgCache::DepIterator&)@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::DepIterator::operator++()@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::GrpIterator::operator++()@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::PkgIterator::operator++()@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::PkgFileIterator::RelStr[abi:cxx11]()@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::ReMap(bool const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::Header::Header()@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::DepType(unsigned char)@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::FindGrp(APT::StringView)@APTPKG_5.90" 1.9~ - (c++)"pkgCache::FindPkg(APT::StringView)@APTPKG_5.90" 1.9~ - (c++)"pkgCache::FindPkg(APT::StringView, APT::StringView)@APTPKG_5.90" 1.9~ - (c++)"pkgCache::CompType(unsigned char)@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::Priority(unsigned char)@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::pkgCache(MMap*, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::~pkgCache()@APTPKG_5.90" 0.8.0 - (c++)"pkgCdrom::DropRepeats(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, char const*)@APTPKG_5.90" 0.8.0 - (c++)"pkgCdrom::FindPackages(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, pkgCdromStatus*, unsigned int)@APTPKG_5.90" 0.8.0 - (c++)"pkgCdrom::WriteDatabase(Configuration&)@APTPKG_5.90" 0.8.0 - (c++)"pkgCdrom::DropBinaryArch(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@APTPKG_5.90" 0.8.0 - (c++)"pkgCdrom::WriteSourceList(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgCdrom::ReduceSourcelist(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@APTPKG_5.90" 0.8.0 - (c++)"pkgCdrom::Add(pkgCdromStatus*)@APTPKG_5.90" 0.8.0 - (c++)"pkgCdrom::Ident(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, pkgCdromStatus*)@APTPKG_5.90" 0.8.0 - (c++)"pkgCdrom::Score(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"IndexCopy::CopyPackages(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, pkgCdromStatus*)@APTPKG_5.90" 0.8.0 - (c++)"IndexCopy::ReconstructChop(unsigned long&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"IndexCopy::ReconstructPrefix(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"IndexCopy::ConvertToSourceList(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_5.90" 0.8.0 - (c++)"IndexCopy::ChopDirs(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int)@APTPKG_5.90" 0.8.0 - (c++)"IndexCopy::GrabFirst(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int)@APTPKG_5.90" 0.8.0 - (c++)"SigVerify::CopyAndVerify(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >)@APTPKG_5.90" 0.8.0 - (c++)"debSystem::Initialize(Configuration&)@APTPKG_5.90" 0.8.0 - (c++)"debSystem::AddStatusFiles(std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> >&)@APTPKG_5.90" 0.8.0 - (c++)"debSystem::ArchiveSupported(char const*)@APTPKG_5.90" 0.8.0 - (c++)"debSystem::Lock()@APTPKG_5.90" 0.8.0 - (c++)"debSystem::Score(Configuration const&)@APTPKG_5.90" 0.8.0 - (c++)"debSystem::UnLock(bool)@APTPKG_5.90" 0.8.0 - (c++)"debSystem::debSystem()@APTPKG_5.90" 0.8.0 - (c++)"debSystem::~debSystem()@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::DoTerminalPty(int)@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::WriteHistoryTag(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::WriteApportReport(char const*, char const*)@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::RunScriptsWithPkgs(char const*)@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::Reset()@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::Remove(pkgCache::PkgIterator, bool)@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::DoStdin(int)@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::Install(pkgCache::PkgIterator, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::OpenLog()@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::CloseLog()@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::Configure(pkgCache::PkgIterator)@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::pkgDPkgPM(pkgDepCache*)@APTPKG_5.90" 0.8.0 - (c++)"pkgDPkgPM::~pkgDPkgPM()@APTPKG_5.90" 0.8.0 - (c++)"pkgPolicy::GetPriority(pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgPolicy::InitDefaults()@APTPKG_5.90" 0.8.0 - (c++)"pkgPolicy::GetCandidateVer(pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgPolicy::GetMatch(pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.0 - (c++)"pkgPolicy::CreatePin(pkgVersionMatch::MatchType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, short)@APTPKG_5.90" 0.8.0 - (c++)"pkgPolicy::pkgPolicy(pkgCache*)@APTPKG_5.90" 0.8.0 - (c++)"pkgPolicy::~pkgPolicy()@APTPKG_5.90" 0.8.0 - (c++)"pkgSystem::GlobalList@APTPKG_5.90" 0.8.0 - (c++)"pkgSystem::GlobalListLen@APTPKG_5.90" 0.8.0 - (c++)"pkgSystem::GetSystem(char const*)@APTPKG_5.90" 0.8.0 - (c++)"HashString::VerifyFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@APTPKG_5.90" 0.8.0 - (c++)"HashString::empty() const@APTPKG_5.90" 0.8.0 - (c++)"HashString::toStr[abi:cxx11]() const@APTPKG_5.90" 0.8.0 - (c++)"CommandLine::FileSize() const@APTPKG_5.90" 0.8.0 - (c++)"GlobalError::empty(GlobalError::MsgType const&) const@APTPKG_5.90" 0.8.0 - (c++)"pkgIndexFile::FindInCache(pkgCache&) const@APTPKG_5.90" 0.8.0 - (c++)"Configuration::MatchAgainstConfig::Match(char const*) const@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Find[abi:cxx11](char const*, char const*) const@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Item::FullTag[abi:cxx11](Configuration::Item const*) const@APTPKG_5.90" 0.8.0 - (c++)"Configuration::FindB(char const*, bool const&) const@APTPKG_5.90" 0.8.0 - (c++)"Configuration::FindI(char const*, int const&) const@APTPKG_5.90" 0.8.0 - (c++)"Configuration::Exists(char const*) const@APTPKG_5.90" 0.8.0 - (c++)"Configuration::FindAny[abi:cxx11](char const*, char const*) const@APTPKG_5.90" 0.8.0 - (c++)"Configuration::FindDir[abi:cxx11](char const*, char const*) const@APTPKG_5.90" 0.8.0 - (c++)"Configuration::FindFile[abi:cxx11](char const*, char const*) const@APTPKG_5.90" 0.8.0 - (c++)"Configuration::ExistsAny(char const*) const@APTPKG_5.90" 0.8.0 - (c++)"pkgSourceList::GetIndexes(pkgAcquire*, bool) const@APTPKG_5.90" 0.8.0 - (c++)"pkgSourceList::Type::FixupURI(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) const@APTPKG_5.90" 0.8.0 - (c++)"pkgSourceList::FindIndex(pkgCache::PkgFileIterator, pkgIndexFile*&) const@APTPKG_5.90" 0.8.0 - (c++)"pkgTagSection::Find(APT::StringView, char const*&, char const*&) const@APTPKG_5.90" 1.9~ - (c++)"pkgTagSection::Find(APT::StringView, unsigned int&) const@APTPKG_5.90" 1.9~ - (c++)"pkgTagSection::FindI(APT::StringView, long) const@APTPKG_5.90" 1.9~ - (c++)"pkgTagSection::Find(APT::StringView) const@APTPKG_5.90" 1.9~ - (c++)"pkgTagSection::FindULL(APT::StringView, unsigned long long const&) const@APTPKG_5.90" 1.9~ - (c++)"pkgTagSection::FindFlag(APT::StringView, unsigned long&, unsigned long) const@APTPKG_5.90" 1.9~ - (c++)"pkgCache::DepIterator::AllTargets() const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::DepIterator::IsCritical() const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::DepIterator::SmartTargetPkg(pkgCache::PkgIterator&) const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::GrpIterator::FindPreferredPkg(bool const&) const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::GrpIterator::FindPkg(APT::StringView) const@APTPKG_5.90" 1.9~ - (c++)"pkgCache::GrpIterator::NextPkg(pkgCache::PkgIterator const&) const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::PkgIterator::CurVersion() const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::PkgIterator::State() const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::VerIterator::CompareVer(pkgCache::VerIterator const&) const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::VerIterator::NewestFile() const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::VerIterator::Downloadable() const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::VerIterator::TranslatedDescription() const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::VerIterator::RelStr[abi:cxx11]() const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::VerIterator::Automatic() const@APTPKG_5.90" 0.8.0 - (c++)"pkgCache::sHash(APT::StringView) const@APTPKG_5.90" 1.9~ - (c++)"pkgCache::Header::CheckSizes(pkgCache::Header&) const@APTPKG_5.90" 0.8.0 - (c++)"debSystem::CreatePM(pkgDepCache*) const@APTPKG_5.90" 0.8.0 - (c++)"debSystem::FindIndex(pkgCache::PkgFileIterator, pkgIndexFile*&) const@APTPKG_5.90" 0.8.0 - (c++)"metaIndex::GetURI[abi:cxx11]() const@APTPKG_5.90" 0.8.0 - (c++)"metaIndex::GetDist[abi:cxx11]() const@APTPKG_5.90" 0.8.0 - (c++)"metaIndex::GetType() const@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for OpProgress@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for SourceCopy@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgAcqFile@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgAcquire@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for DynamicMMap@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for PackageCopy@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgDepCache@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgSimulate@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgAcqMethod@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgCacheFile@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgIndexFile@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for WeakPointable@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgAcqArchive@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgTagSection@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for OpTextProgress@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgAcquireStatus@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgPackageManager@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for debVersioningSystem@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgUdevCdromDevices@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgVersioningSystem@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for MMap@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for FileFd@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgCache@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for IndexCopy@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for debSystem@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for metaIndex@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgDPkgPM@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgPolicy@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgSystem@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgAcquire::Item@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgRecords::Parser@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgDepCache::InRootSetFunc@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgDepCache::DefaultRootSetFunc@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgDepCache::Policy@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgSimulate::Policy@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgIndexFile::Type@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for Configuration::MatchAgainstConfig@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgSourceList::Type@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgSrcRecords::Parser@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for APT::CacheSetHelper@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgCache::Namespace@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for OpProgress@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for SourceCopy@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgAcqFile@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgAcquire@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for DynamicMMap@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for PackageCopy@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgDepCache@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgSimulate@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgAcqMethod@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgCacheFile@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgIndexFile@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for WeakPointable@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgAcqArchive@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgTagSection@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for OpTextProgress@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgAcquireStatus@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgPackageManager@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for debVersioningSystem@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgUdevCdromDevices@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgVersioningSystem@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for MMap@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for FileFd@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgCache@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for IndexCopy@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for debSystem@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for metaIndex@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgDPkgPM@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgPolicy@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgSystem@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgAcquire::Item@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgRecords::Parser@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgDepCache::InRootSetFunc@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgDepCache::DefaultRootSetFunc@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgDepCache::Policy@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgSimulate::Policy@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgIndexFile::Type@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for Configuration::MatchAgainstConfig@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgSourceList::Type@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgSrcRecords::Parser@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for APT::CacheSetHelper@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgCache::Namespace@APTPKG_5.90" 0.8.0 - (c++)"vtable for OpProgress@APTPKG_5.90" 0.8.0 - (c++)"vtable for SourceCopy@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgAcqFile@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgAcquire@APTPKG_5.90" 0.8.0 - (c++)"vtable for DynamicMMap@APTPKG_5.90" 0.8.0 - (c++)"vtable for PackageCopy@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgDepCache@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgSimulate@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgAcqMethod@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgCacheFile@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgIndexFile@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgAcqArchive@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgTagSection@APTPKG_5.90" 0.8.0 - (c++)"vtable for OpTextProgress@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgAcquireStatus@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgPackageManager@APTPKG_5.90" 0.8.0 - (c++)"vtable for debVersioningSystem@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgUdevCdromDevices@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgVersioningSystem@APTPKG_5.90" 0.8.0 - (c++)"vtable for MMap@APTPKG_5.90" 0.8.0 - (c++)"vtable for FileFd@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgCache@APTPKG_5.90" 0.8.0 - (c++)"vtable for IndexCopy@APTPKG_5.90" 0.8.0 - (c++)"vtable for debSystem@APTPKG_5.90" 0.8.0 - (c++)"vtable for metaIndex@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgDPkgPM@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgPolicy@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgSystem@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgAcquire::Item@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgRecords::Parser@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgDepCache::InRootSetFunc@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgDepCache::DefaultRootSetFunc@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgDepCache::Policy@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgSimulate::Policy@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgIndexFile::Type@APTPKG_5.90" 0.8.0 - (c++)"vtable for Configuration::MatchAgainstConfig@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgSourceList::Type@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgSrcRecords::Parser@APTPKG_5.90" 0.8.0 - (c++)"vtable for APT::CacheSetHelper@APTPKG_5.90" 0.8.0 - (c++)"operator<<(std::basic_ostream<char, std::char_traits<char> >&, pkgCache::DepIterator)@APTPKG_5.90" 0.8.0 - (c++)"operator<<(std::basic_ostream<char, std::char_traits<char> >&, pkgCache::PkgIterator)@APTPKG_5.90" 0.8.0 - _config@APTPKG_5.90 0.8.0 - _system@APTPKG_5.90 0.8.0 - debSys@APTPKG_5.90 0.8.0 - debVS@APTPKG_5.90 0.8.0 - pkgLibVersion@APTPKG_5.90 0.8.0 - pkgVersion@APTPKG_5.90 0.8.0 - (c++)"pkgAcquireStatus::~pkgAcquireStatus()@APTPKG_5.90" 0.8.0 - (c++)"IndexCopy::~IndexCopy()@APTPKG_5.90" 0.8.0 - (c++)"pkgArchiveCleaner::~pkgArchiveCleaner()@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgArchiveCleaner@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgArchiveCleaner@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgArchiveCleaner@APTPKG_5.90" 0.8.0 + TFRewritePackageOrder@APTPKG_6.0 0.8.0 + TFRewriteSourceOrder@APTPKG_6.0 0.8.0 + (c++)"FileExists(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"IdentCdrom(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int)@APTPKG_6.0" 0.8.0 + (c++)"ListUpdate(pkgAcquireStatus&, pkgSourceList&, int)@APTPKG_6.0" 0.8.0 + (c++)"MountCdrom(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"ParseCWord(char const*&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_6.0" 0.8.0 + (c++)"ReadPinDir(pkgPolicy&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"RunScripts(char const*)@APTPKG_6.0" 0.8.0 + (c++)"SafeGetCWD[abi:cxx11]()@APTPKG_6.0" 0.8.0 + (c++)"QuoteString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)@APTPKG_6.0" 0.8.0 + (c++)"ReadPinFile(pkgPolicy&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"RegexChoice(RxChoiceList*, char const**, char const**)@APTPKG_6.0" 0.8.0 + (c++)"SetNonBlock(int, bool)@APTPKG_6.0" 0.8.0 + (c++)"flExtension(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"Base64Encode(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"ReadMessages(int, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@APTPKG_6.0" 0.8.0 + (c++)"SetCloseExec(int, bool)@APTPKG_6.0" 0.8.0 + (c++)"StringToBool(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)@APTPKG_6.0" 0.8.0 + (c++)"UnmountCdrom(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"_GetErrorObj()@APTPKG_6.0" 0.8.0 + (c++)"Base256ToNum(char const*, unsigned long long&, unsigned int)@APTPKG_6.0" 1.0.5 + (c++)"pkgFixBroken(pkgDepCache&)@APTPKG_6.0" 0.8.0 + (c++)"DeQuoteString(__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&)@APTPKG_6.0" 0.8.0 + (c++)"DeQuoteString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"OutputInDepth[abi:cxx11](unsigned long, char const*)@APTPKG_6.0" 0.8.0 + (c++)"ReadConfigDir(Configuration&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, unsigned int const&)@APTPKG_6.0" 0.8.0 + (c++)"URItoFileName(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"UTF8ToCodeset(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)@APTPKG_6.0" 0.8.0 + (c++)"pkgInitConfig(Configuration&)@APTPKG_6.0" 0.8.0 + (c++)"pkgInitSystem(Configuration&, pkgSystem*&)@APTPKG_6.0" 0.8.0 + (c++)"safe_snprintf(char*, char*, char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"stringcasecmp(__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, char const*, char const*)@APTPKG_6.0" 0.8.0 + (c++)"stringcasecmp(__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >)@APTPKG_6.0" 0.8.0 + (c++)"stringcasecmp(char const*, char const*, char const*, char const*)@APTPKG_6.0" 0.8.0 + (c++)"tolower_ascii(int)@APTPKG_6.0" 0.8.0 + (c++)"ParseQuoteWord(char const*&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_6.0" 0.8.0 + (c++)"ReadConfigFile(Configuration&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, unsigned int const&)@APTPKG_6.0" 0.8.0 + (c++)"TokSplitString(char, char*, char**, unsigned long)@APTPKG_6.0" 0.8.0 + (c++)"pkgApplyStatus(pkgDepCache&)@APTPKG_6.0" 0.8.0 + (c++)"CheckDomainList(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"CreateDirectory(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"DirectoryExists(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"VectorizeString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgPrioSortList(pkgCache&, pkgCache::Version**)@APTPKG_6.0" 0.8.0 + (c++)"pkgMinimizeUpgrade(pkgDepCache&)@APTPKG_6.0" 0.8.0 + (c++)"GetListOfFilesInDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool const&)@APTPKG_6.0" 0.8.0 + (c++)"GetListOfFilesInDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool const&, bool const&)@APTPKG_6.0" 0.8.0 + (c++)"WaitFd(int, bool, unsigned long)@APTPKG_6.0" 0.8.0 + (c++)"GetLock(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@APTPKG_6.0" 0.8.0 + (c++)"Hex2Num(APT::StringView, unsigned char*, unsigned int)@APTPKG_6.0" 1.9~ + (c++)"CopyFile(FileFd&, FileFd&)@APTPKG_6.0" 0.8.0 + (c++)"ExecFork()@APTPKG_6.0" 0.8.0 + (c++)"ExecWait(int, char const*, bool)@APTPKG_6.0" 0.8.0 + (c++)"StrToNum(char const*, unsigned long&, unsigned int, unsigned int)@APTPKG_6.0" 0.8.0 + (c++)"SubstVar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"SubstVar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, SubstVar const*)@APTPKG_6.0" 0.8.0 + (c++)"flNoLink(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"flNotDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"ioprintf(std::basic_ostream<char, std::char_traits<char> >&, char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"IsMounted(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_6.0" 0.8.0 + (c++)"LookupTag(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, char const*)@APTPKG_6.0" 0.8.0 + (c++)"SizeToStr[abi:cxx11](double)@APTPKG_6.0" 0.8.0 + (c++)"TimeToStr[abi:cxx11](unsigned long)@APTPKG_6.0" 0.8.0 + (c++)"_strstrip(char*)@APTPKG_6.0" 0.8.0 + (c++)"flCombine(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"flNotFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"stringcmp(__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, char const*, char const*)@APTPKG_6.0" 0.8.0 + (c++)"stringcmp(__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >)@APTPKG_6.0" 0.8.0 + (c++)"stringcmp(char const*, char const*, char const*, char const*)@APTPKG_6.0" 0.8.0 + (c++)"strprintf(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"HashString::SupportedHashes()@APTPKG_6.0" 0.8.0 + (c++)"HashString::_SupportedHashes@APTPKG_6.0" 0.8.0 + (c++)"HashString::HashString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"HashString::HashString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"HashString::HashString()@APTPKG_6.0" 0.8.0 + (c++)"OpProgress::CheckChange(float)@APTPKG_6.0" 0.8.0 + (c++)"OpProgress::OpProgress()@APTPKG_6.0" 0.8.0 + (c++)"SourceCopy::~SourceCopy()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqFile::~pkgAcqFile()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::WorkerStep(pkgAcquire::Worker*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::FetchNeeded()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::TotalNeeded()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::MethodConfig::MethodConfig()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::PartialPresent()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Add(pkgAcquire::Item*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Add(pkgAcquire::Worker*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Run(int)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Bump()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Item::Finished()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Item::~Item()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Clean(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Queue::Bump()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Queue::Cycle()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Queue::Dequeue(pkgAcquire::Item*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Queue::Enqueue(pkgAcquire::ItemDesc&)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Queue::Startup()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Queue::FindItem(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::Worker*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Queue::ItemDone(pkgAcquire::Queue::QItem*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Queue::Shutdown(bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Queue::~Queue()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Remove(pkgAcquire::Item*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Remove(pkgAcquire::Worker*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::RunFds(fd_set*, fd_set*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::RunFdsSane(fd_set*, fd_set*)@APTPKG_6.0" 1.1.1 + (c++)"pkgAcquire::SetFds(int&, fd_set*, fd_set*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::UriEnd()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::OutFdReady()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::MediaChange(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::RunMessages()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::Capabilities(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::ReadMessages()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::MethodFailure()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::SendConfiguration()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::Pulse()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::Start()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::ItemDone()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::Construct()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::InFdReady()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::QueueItem(pkgAcquire::Queue::QItem*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::Worker(pkgAcquire::MethodConfig*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::Worker(pkgAcquire::Queue*, pkgAcquire::MethodConfig*, pkgAcquireStatus*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Worker::~Worker()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Dequeue(pkgAcquire::Item*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Enqueue(pkgAcquire::ItemDesc&)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::Shutdown()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::UriBegin()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::GetConfig(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::QueueName(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgAcquire::MethodConfig const*&)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::pkgAcquire(pkgAcquireStatus*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::pkgAcquire()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquire::~pkgAcquire()@APTPKG_6.0" 0.8.0 + (c++)"pkgRecords::Lookup(pkgCache::VerFileIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgRecords::Lookup(pkgCache::DescFileIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgRecords::pkgRecords(pkgCache&)@APTPKG_6.0" 0.8.0 + (c++)"pkgRecords::~pkgRecords()@APTPKG_6.0" 0.8.0 + (c++)"pkgTagFile::Step(pkgTagSection&)@APTPKG_6.0" 0.8.0 + (c++)"pkgTagFile::~pkgTagFile()@APTPKG_6.0" 0.8.0 + (c++)"CommandLine::DispatchArg(CommandLine::Dispatch*, bool)@APTPKG_6.0" 0.8.0 + (c++)"CommandLine::SaveInConfig(unsigned int const&, char const* const*)@APTPKG_6.0" 0.8.0 + (c++)"CommandLine::Parse(int, char const**)@APTPKG_6.0" 0.8.0 + (c++)"CommandLine::HandleOpt(int&, int, char const**, char const*&, CommandLine::Args*, bool)@APTPKG_6.0" 0.8.0 + (c++)"CommandLine::CommandLine(CommandLine::Args*, Configuration*)@APTPKG_6.0" 0.8.0 + (c++)"CommandLine::~CommandLine()@APTPKG_6.0" 0.8.0 + (c++)"DynamicMMap::WriteString(char const*, unsigned long)@APTPKG_6.0" 0.8.0 + (c++)"DynamicMMap::Grow()@APTPKG_6.0" 0.8.0 + (c++)"DynamicMMap::Allocate(unsigned long)@APTPKG_6.0" 0.8.0 + (c++)"DynamicMMap::DynamicMMap(FileFd&, unsigned long, unsigned long const&, unsigned long const&, unsigned long const&)@APTPKG_6.0" 0.8.0 + (c++)"DynamicMMap::DynamicMMap(unsigned long, unsigned long const&, unsigned long const&, unsigned long const&)@APTPKG_6.0" 0.8.0 + (c++)"DynamicMMap::~DynamicMMap()@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::DumpErrors(std::basic_ostream<char, std::char_traits<char> >&, GlobalError::MsgType const&, bool const&)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::PopMessage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::InsertErrno(GlobalError::MsgType const&, char const*, char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::PushToStack()@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::RevertToStack()@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::MergeWithStack()@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::Debug(char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::Errno(char const*, char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::Error(char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::Fatal(char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::DebugE(char const*, char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::FatalE(char const*, char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::Insert(GlobalError::MsgType const&, char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::Notice(char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::Discard()@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::NoticeE(char const*, char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::Warning(char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::WarningE(char const*, char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::GlobalError()@APTPKG_6.0" 0.8.0 + (c++)"PackageCopy::~PackageCopy()@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::IsDeleteOk(pkgCache::PkgIterator const&, bool, unsigned long, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::MarkDelete(pkgCache::PkgIterator const&, bool, unsigned long, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::StateCache::Update(pkgCache::PkgIterator, pkgCache&)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::ActionGroup::release()@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::ActionGroup::ActionGroup(pkgDepCache&)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::ActionGroup::~ActionGroup()@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::IsInstallOk(pkgCache::PkgIterator const&, bool, unsigned long, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::MarkInstall(pkgCache::PkgIterator const&, bool, unsigned long, bool, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::SetReInstall(pkgCache::PkgIterator const&, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::BuildGroupOrs(pkgCache::VerIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::readStateFile(OpProgress*)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::GetRootSetFunc()@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::writeStateFile(OpProgress*, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::MarkFollowsSuggests()@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::MarkFollowsRecommends()@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::Init(OpProgress*)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::Policy::GetCandidateVer(pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::Update(pkgCache::DepIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::Update(OpProgress*)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::Update(pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::MarkAuto(pkgCache::PkgIterator const&, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::MarkKeep(pkgCache::PkgIterator const&, bool, bool, unsigned long)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::MarkRequired(pkgDepCache::InRootSetFunc&)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::Sweep()@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::pkgDepCache(pkgCache*, pkgDepCache::Policy*)@APTPKG_6.0" 0.8.0 + (c++)"pkgDepCache::~pkgDepCache()@APTPKG_6.0" 0.8.0 + (c++)"pkgSimulate::Remove(pkgCache::PkgIterator, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgSimulate::Install(pkgCache::PkgIterator, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"pkgSimulate::Configure(pkgCache::PkgIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgSimulate::pkgSimulate(pkgDepCache*)@APTPKG_6.0" 0.8.0 + (c++)"pkgSimulate::~pkgSimulate()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::FetchResult::TakeHashes(Hashes&)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::FetchResult::FetchResult()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::Configuration(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::Log(char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::Run(bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::Fail(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::Fail(bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::Status(char const*, ...)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::URIDone(pkgAcqMethod::FetchResult&, pkgAcqMethod::FetchResult*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::Redirect(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::URIStart(pkgAcqMethod::FetchResult&)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::MediaFail(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::pkgAcqMethod(char const*, unsigned long)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqMethod::~pkgAcqMethod()@APTPKG_6.0" 0.8.0 + (c++)"pkgCacheFile::BuildCaches(OpProgress*, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgCacheFile::BuildPolicy(OpProgress*)@APTPKG_6.0" 0.8.0 + (c++)"pkgCacheFile::BuildDepCache(OpProgress*)@APTPKG_6.0" 0.8.0 + (c++)"pkgCacheFile::BuildSourceList(OpProgress*)@APTPKG_6.0" 0.8.0 + (c++)"pkgCacheFile::Open(OpProgress*, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgCacheFile::Close()@APTPKG_6.0" 0.8.0 + (c++)"pkgCacheFile::pkgCacheFile()@APTPKG_6.0" 0.8.0 + (c++)"pkgCacheFile::~pkgCacheFile()@APTPKG_6.0" 0.8.0 + (c++)"pkgIndexFile::Type::GlobalList@APTPKG_6.0" 0.8.0 + (c++)"pkgIndexFile::Type::GlobalListLen@APTPKG_6.0" 0.8.0 + (c++)"pkgIndexFile::Type::GetType(char const*)@APTPKG_6.0" 0.8.0 + (c++)"pkgIndexFile::Type::Type()@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::VisitRDeps(bool (pkgOrderList::*)(pkgCache::DepIterator), pkgCache::PkgIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::OrderUnpack(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::DepConfigure(pkgCache::DepIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::DepUnPackDep(pkgCache::DepIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::DepUnPackPre(pkgCache::DepIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::DepUnPackCrit(pkgCache::DepIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::DepUnPackPreD(pkgCache::DepIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::OrderCritical()@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::VisitProvides(pkgCache::DepIterator, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::OrderConfigure()@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::VisitRProvides(bool (pkgOrderList::*)(pkgCache::DepIterator), pkgCache::VerIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::DoRun()@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::Score(pkgCache::PkgIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::AddLoop(pkgCache::DepIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::FileCmp(pkgCache::PkgIterator, pkgCache::PkgIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::CheckDep(pkgCache::DepIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::DepRemove(pkgCache::DepIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::IsMissing(pkgCache::PkgIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::VisitDeps(bool (pkgOrderList::*)(pkgCache::DepIterator), pkgCache::PkgIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::WipeFlags(unsigned long)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::pkgOrderList(pkgDepCache*)@APTPKG_6.0" 0.8.0 + (c++)"pkgOrderList::~pkgOrderList()@APTPKG_6.0" 0.8.0 + (c++)"Configuration::MatchAgainstConfig::MatchAgainstConfig(char const*)@APTPKG_6.0" 0.8.0 + (c++)"Configuration::MatchAgainstConfig::~MatchAgainstConfig()@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Set(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Set(char const*, int const&)@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Dump(std::basic_ostream<char, std::char_traits<char> >&)@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Clear(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Clear(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int const&)@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Clear(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"Configuration::CndSet(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Lookup(char const*, bool const&)@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Lookup(Configuration::Item*, char const*, unsigned long const&, bool const&)@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Configuration(Configuration::Item const*)@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Configuration()@APTPKG_6.0" 0.8.0 + (c++)"Configuration::~Configuration()@APTPKG_6.0" 0.8.0 + (c++)"debListParser::ConvertRelation(char const*, unsigned int&)@APTPKG_6.0" 0.8.0 + (c++)"debListParser::GetPrio(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqArchive::Finished()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqArchive::QueueNext()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqArchive::pkgAcqArchive(pkgAcquire*, pkgSourceList*, pkgRecords*, pkgCache::VerIterator const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcqArchive::~pkgAcqArchive()@APTPKG_6.0" 0.8.0 + (c++)"pkgSourceList::Type::GlobalList@APTPKG_6.0" 0.8.0 + (c++)"pkgSourceList::Type::GlobalListLen@APTPKG_6.0" 0.8.0 + (c++)"pkgSourceList::Type::GetType(char const*)@APTPKG_6.0" 0.8.0 + (c++)"pkgSourceList::ReadMainList()@APTPKG_6.0" 0.8.0 + (c++)"pkgSourceList::Reset()@APTPKG_6.0" 0.8.0 + (c++)"pkgSourceList::pkgSourceList()@APTPKG_6.0" 0.8.0 + (c++)"pkgSourceList::~pkgSourceList()@APTPKG_6.0" 0.8.0 + (c++)"pkgSrcRecords::Find(char const*, bool const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgSrcRecords::Parser::BuildDepType(unsigned char const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgSrcRecords::Restart()@APTPKG_6.0" 0.8.0 + (c++)"pkgSrcRecords::pkgSrcRecords(pkgSourceList&)@APTPKG_6.0" 0.8.0 + (c++)"pkgSrcRecords::~pkgSrcRecords()@APTPKG_6.0" 0.8.0 + (c++)"pkgTagSection::TrimRecord(bool, char const*&)@APTPKG_6.0" 0.8.0 + (c++)"pkgTagSection::Trim()@APTPKG_6.0" 0.8.0 + (c++)"OpTextProgress::Done()@APTPKG_6.0" 0.8.0 + (c++)"OpTextProgress::Write(char const*)@APTPKG_6.0" 0.8.0 + (c++)"OpTextProgress::Update()@APTPKG_6.0" 0.8.0 + (c++)"OpTextProgress::OpTextProgress(Configuration&)@APTPKG_6.0" 0.8.0 + (c++)"pkgVersionMatch::ExpressionMatches(char const*, char const*)@APTPKG_6.0" 0.8.0 + (c++)"pkgVersionMatch::ExpressionMatches(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)@APTPKG_6.0" 0.8.0 + (c++)"pkgVersionMatch::Find(pkgCache::PkgIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgVersionMatch::MatchVer(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgVersionMatch::FileMatch(pkgCache::PkgFileIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgVersionMatch::pkgVersionMatch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgVersionMatch::MatchType)@APTPKG_6.0" 0.8.0 + (c++)"TranslationsCopy::CopyTranslations(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, pkgCdromStatus*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquireStatus::Stop()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquireStatus::Pulse(pkgAcquire*)@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquireStatus::Start()@APTPKG_6.0" 0.8.0 + (c++)"pkgAcquireStatus::pkgAcquireStatus()@APTPKG_6.0" 0.8.0 + (c++)"pkgArchiveCleaner::Go(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, pkgCache&)@APTPKG_6.0" 0.8.0 + (c++)"pkgCacheGenerator::MakeStatusCache(pkgSourceList&, OpProgress*, MMap**, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgCacheGenerator::MakeOnlyStatusCache(OpProgress*, DynamicMMap**)@APTPKG_6.0" 0.8.0 + (c++)"pkgPackageManager::FixMissing()@APTPKG_6.0" 0.8.0 + (c++)"pkgPackageManager::GetArchives(pkgAcquire*, pkgSourceList*, pkgRecords*)@APTPKG_6.0" 0.8.0 + (c++)"pkgPackageManager::SmartRemove(pkgCache::PkgIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgPackageManager::SmartUnPack(pkgCache::PkgIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgPackageManager::ConfigureAll()@APTPKG_6.0" 0.8.0 + (c++)"pkgPackageManager::ImmediateAdd(pkgCache::PkgIterator, bool, unsigned int const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgPackageManager::OrderInstall()@APTPKG_6.0" 0.8.0 + (c++)"pkgPackageManager::DepAlwaysTrue(pkgCache::DepIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgPackageManager::CheckRConflicts(pkgCache::PkgIterator, pkgCache::DepIterator, char const*)@APTPKG_6.0" 0.8.0 + (c++)"pkgPackageManager::CreateOrderList()@APTPKG_6.0" 0.8.0 + (c++)"pkgPackageManager::pkgPackageManager(pkgDepCache*)@APTPKG_6.0" 0.8.0 + (c++)"pkgPackageManager::~pkgPackageManager()@APTPKG_6.0" 0.8.0 + (c++)"pkgProblemResolver::pkgProblemResolver(pkgDepCache*)@APTPKG_6.0" 0.8.0 + (c++)"pkgProblemResolver::~pkgProblemResolver()@APTPKG_6.0" 0.8.0 + (c++)"debVersioningSystem::CmpFragment(char const*, char const*, char const*, char const*)@APTPKG_6.0" 0.8.0 + (c++)"debVersioningSystem::DoCmpVersion(char const*, char const*, char const*, char const*)@APTPKG_6.0" 0.8.0 + (c++)"debVersioningSystem::UpstreamVersion[abi:cxx11](char const*)@APTPKG_6.0" 0.8.0 + (c++)"debVersioningSystem::CheckDep(char const*, int, char const*)@APTPKG_6.0" 0.8.0 + (c++)"debVersioningSystem::debVersioningSystem()@APTPKG_6.0" 0.8.0 + (c++)"pkgUdevCdromDevices::Scan()@APTPKG_6.0" 0.8.0 + (c++)"pkgUdevCdromDevices::Dlopen()@APTPKG_6.0" 0.8.0 + (c++)"pkgUdevCdromDevices::pkgUdevCdromDevices()@APTPKG_6.0" 0.8.0 + (c++)"pkgUdevCdromDevices::~pkgUdevCdromDevices()@APTPKG_6.0" 0.8.0 + (c++)"pkgVersioningSystem::GlobalList@APTPKG_6.0" 0.8.0 + (c++)"pkgVersioningSystem::GlobalListLen@APTPKG_6.0" 0.8.0 + (c++)"pkgVersioningSystem::GetVS(char const*)@APTPKG_6.0" 0.8.0 + (c++)"pkgVersioningSystem::pkgVersioningSystem()@APTPKG_6.0" 0.8.0 + (c++)"APT::CacheFilter::PackageNameMatchesRegEx::PackageNameMatchesRegEx(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"APT::CacheFilter::PackageNameMatchesRegEx::~PackageNameMatchesRegEx()@APTPKG_6.0" 0.8.0 + (c++)"APT::CacheFilter::PackageNameMatchesRegEx::operator()(pkgCache::GrpIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"APT::CacheFilter::PackageNameMatchesRegEx::operator()(pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"APT::Configuration::checkArchitecture(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"APT::CacheSetHelper::canNotFindPkgName(pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"APT::CacheSetHelper::canNotFindNewestVer(pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"APT::CacheSetHelper::canNotFindCandidateVer(pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"APT::CacheSetHelper::canNotFindInstalledVer(pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"APT::CacheSetHelper::~CacheSetHelper()@APTPKG_6.0" 0.8.0 + (c++)"URI::NoUserPassword(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"URI::CopyFrom(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"URI::SiteOnly(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.0 + (c++)"URI::operator std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >()@APTPKG_6.0" 0.8.0 + (c++)"MMap::Map(FileFd&)@APTPKG_6.0" 0.8.0 + (c++)"MMap::Sync(unsigned long, unsigned long)@APTPKG_6.0" 0.8.0 + (c++)"MMap::Sync()@APTPKG_6.0" 0.8.0 + (c++)"MMap::Close(bool)@APTPKG_6.0" 0.8.0 + (c++)"MMap::MMap(FileFd&, unsigned long)@APTPKG_6.0" 0.8.0 + (c++)"MMap::MMap(unsigned long)@APTPKG_6.0" 0.8.0 + (c++)"MMap::~MMap()@APTPKG_6.0" 0.8.0 + (c++)"FileFd::Size()@APTPKG_6.0" 0.8.0 + (c++)"FileFd::Sync()@APTPKG_6.0" 0.8.0 + (c++)"FileFd::Tell()@APTPKG_6.0" 0.8.0 + (c++)"FileFd::Close()@APTPKG_6.0" 0.8.0 + (c++)"FileFd::~FileFd()@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::CompTypeDeb(unsigned char)@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::DepIterator::GlobOr(pkgCache::DepIterator&, pkgCache::DepIterator&)@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::DepIterator::operator++()@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::GrpIterator::operator++()@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::PkgIterator::operator++()@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::PkgFileIterator::RelStr[abi:cxx11]()@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::ReMap(bool const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::Header::Header()@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::DepType(unsigned char)@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::FindGrp(APT::StringView)@APTPKG_6.0" 1.9~ + (c++)"pkgCache::FindPkg(APT::StringView)@APTPKG_6.0" 1.9~ + (c++)"pkgCache::FindPkg(APT::StringView, APT::StringView)@APTPKG_6.0" 1.9~ + (c++)"pkgCache::CompType(unsigned char)@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::Priority(unsigned char)@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::pkgCache(MMap*, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::~pkgCache()@APTPKG_6.0" 0.8.0 + (c++)"pkgCdrom::DropRepeats(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, char const*)@APTPKG_6.0" 0.8.0 + (c++)"pkgCdrom::FindPackages(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, pkgCdromStatus*, unsigned int)@APTPKG_6.0" 0.8.0 + (c++)"pkgCdrom::WriteDatabase(Configuration&)@APTPKG_6.0" 0.8.0 + (c++)"pkgCdrom::DropBinaryArch(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@APTPKG_6.0" 0.8.0 + (c++)"pkgCdrom::WriteSourceList(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgCdrom::ReduceSourcelist(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@APTPKG_6.0" 0.8.0 + (c++)"pkgCdrom::Add(pkgCdromStatus*)@APTPKG_6.0" 0.8.0 + (c++)"pkgCdrom::Ident(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, pkgCdromStatus*)@APTPKG_6.0" 0.8.0 + (c++)"pkgCdrom::Score(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"IndexCopy::CopyPackages(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, pkgCdromStatus*)@APTPKG_6.0" 0.8.0 + (c++)"IndexCopy::ReconstructChop(unsigned long&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"IndexCopy::ReconstructPrefix(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"IndexCopy::ConvertToSourceList(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_6.0" 0.8.0 + (c++)"IndexCopy::ChopDirs(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int)@APTPKG_6.0" 0.8.0 + (c++)"IndexCopy::GrabFirst(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int)@APTPKG_6.0" 0.8.0 + (c++)"SigVerify::CopyAndVerify(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >)@APTPKG_6.0" 0.8.0 + (c++)"debSystem::Initialize(Configuration&)@APTPKG_6.0" 0.8.0 + (c++)"debSystem::AddStatusFiles(std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> >&)@APTPKG_6.0" 0.8.0 + (c++)"debSystem::ArchiveSupported(char const*)@APTPKG_6.0" 0.8.0 + (c++)"debSystem::Lock()@APTPKG_6.0" 0.8.0 + (c++)"debSystem::Score(Configuration const&)@APTPKG_6.0" 0.8.0 + (c++)"debSystem::UnLock(bool)@APTPKG_6.0" 0.8.0 + (c++)"debSystem::debSystem()@APTPKG_6.0" 0.8.0 + (c++)"debSystem::~debSystem()@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::DoTerminalPty(int)@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::WriteHistoryTag(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::WriteApportReport(char const*, char const*)@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::RunScriptsWithPkgs(char const*)@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::Reset()@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::Remove(pkgCache::PkgIterator, bool)@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::DoStdin(int)@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::Install(pkgCache::PkgIterator, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::OpenLog()@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::CloseLog()@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::Configure(pkgCache::PkgIterator)@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::pkgDPkgPM(pkgDepCache*)@APTPKG_6.0" 0.8.0 + (c++)"pkgDPkgPM::~pkgDPkgPM()@APTPKG_6.0" 0.8.0 + (c++)"pkgPolicy::GetPriority(pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgPolicy::InitDefaults()@APTPKG_6.0" 0.8.0 + (c++)"pkgPolicy::GetCandidateVer(pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgPolicy::GetMatch(pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.0 + (c++)"pkgPolicy::CreatePin(pkgVersionMatch::MatchType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, short)@APTPKG_6.0" 0.8.0 + (c++)"pkgPolicy::pkgPolicy(pkgCache*)@APTPKG_6.0" 0.8.0 + (c++)"pkgPolicy::~pkgPolicy()@APTPKG_6.0" 0.8.0 + (c++)"pkgSystem::GlobalList@APTPKG_6.0" 0.8.0 + (c++)"pkgSystem::GlobalListLen@APTPKG_6.0" 0.8.0 + (c++)"pkgSystem::GetSystem(char const*)@APTPKG_6.0" 0.8.0 + (c++)"HashString::VerifyFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@APTPKG_6.0" 0.8.0 + (c++)"HashString::empty() const@APTPKG_6.0" 0.8.0 + (c++)"HashString::toStr[abi:cxx11]() const@APTPKG_6.0" 0.8.0 + (c++)"CommandLine::FileSize() const@APTPKG_6.0" 0.8.0 + (c++)"GlobalError::empty(GlobalError::MsgType const&) const@APTPKG_6.0" 0.8.0 + (c++)"pkgIndexFile::FindInCache(pkgCache&) const@APTPKG_6.0" 0.8.0 + (c++)"Configuration::MatchAgainstConfig::Match(char const*) const@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Find[abi:cxx11](char const*, char const*) const@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Item::FullTag[abi:cxx11](Configuration::Item const*) const@APTPKG_6.0" 0.8.0 + (c++)"Configuration::FindB(char const*, bool const&) const@APTPKG_6.0" 0.8.0 + (c++)"Configuration::FindI(char const*, int const&) const@APTPKG_6.0" 0.8.0 + (c++)"Configuration::Exists(char const*) const@APTPKG_6.0" 0.8.0 + (c++)"Configuration::FindAny[abi:cxx11](char const*, char const*) const@APTPKG_6.0" 0.8.0 + (c++)"Configuration::FindDir[abi:cxx11](char const*, char const*) const@APTPKG_6.0" 0.8.0 + (c++)"Configuration::FindFile[abi:cxx11](char const*, char const*) const@APTPKG_6.0" 0.8.0 + (c++)"Configuration::ExistsAny(char const*) const@APTPKG_6.0" 0.8.0 + (c++)"pkgSourceList::GetIndexes(pkgAcquire*, bool) const@APTPKG_6.0" 0.8.0 + (c++)"pkgSourceList::Type::FixupURI(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) const@APTPKG_6.0" 0.8.0 + (c++)"pkgSourceList::FindIndex(pkgCache::PkgFileIterator, pkgIndexFile*&) const@APTPKG_6.0" 0.8.0 + (c++)"pkgTagSection::Find(APT::StringView, char const*&, char const*&) const@APTPKG_6.0" 1.9~ + (c++)"pkgTagSection::Find(APT::StringView, unsigned int&) const@APTPKG_6.0" 1.9~ + (c++)"pkgTagSection::FindI(APT::StringView, long) const@APTPKG_6.0" 1.9~ + (c++)"pkgTagSection::Find(APT::StringView) const@APTPKG_6.0" 1.9~ + (c++)"pkgTagSection::FindULL(APT::StringView, unsigned long long const&) const@APTPKG_6.0" 1.9~ + (c++)"pkgTagSection::FindFlag(APT::StringView, unsigned long&, unsigned long) const@APTPKG_6.0" 1.9~ + (c++)"pkgCache::DepIterator::AllTargets() const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::DepIterator::IsCritical() const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::DepIterator::SmartTargetPkg(pkgCache::PkgIterator&) const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::GrpIterator::FindPreferredPkg(bool const&) const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::GrpIterator::FindPkg(APT::StringView) const@APTPKG_6.0" 1.9~ + (c++)"pkgCache::GrpIterator::NextPkg(pkgCache::PkgIterator const&) const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::PkgIterator::CurVersion() const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::PkgIterator::State() const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::VerIterator::CompareVer(pkgCache::VerIterator const&) const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::VerIterator::NewestFile() const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::VerIterator::Downloadable() const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::VerIterator::TranslatedDescription() const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::VerIterator::RelStr[abi:cxx11]() const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::VerIterator::Automatic() const@APTPKG_6.0" 0.8.0 + (c++)"pkgCache::sHash(APT::StringView) const@APTPKG_6.0" 1.9~ + (c++)"pkgCache::Header::CheckSizes(pkgCache::Header&) const@APTPKG_6.0" 0.8.0 + (c++)"debSystem::CreatePM(pkgDepCache*) const@APTPKG_6.0" 0.8.0 + (c++)"debSystem::FindIndex(pkgCache::PkgFileIterator, pkgIndexFile*&) const@APTPKG_6.0" 0.8.0 + (c++)"metaIndex::GetURI[abi:cxx11]() const@APTPKG_6.0" 0.8.0 + (c++)"metaIndex::GetDist[abi:cxx11]() const@APTPKG_6.0" 0.8.0 + (c++)"metaIndex::GetType() const@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for OpProgress@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for SourceCopy@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgAcqFile@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgAcquire@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for DynamicMMap@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for PackageCopy@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgDepCache@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgSimulate@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgAcqMethod@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgCacheFile@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgIndexFile@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for WeakPointable@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgAcqArchive@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgTagSection@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for OpTextProgress@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgAcquireStatus@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgPackageManager@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for debVersioningSystem@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgUdevCdromDevices@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgVersioningSystem@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for MMap@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for FileFd@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgCache@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for IndexCopy@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for debSystem@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for metaIndex@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgDPkgPM@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgPolicy@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgSystem@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgAcquire::Item@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgRecords::Parser@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgDepCache::InRootSetFunc@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgDepCache::DefaultRootSetFunc@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgDepCache::Policy@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgSimulate::Policy@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgIndexFile::Type@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for Configuration::MatchAgainstConfig@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgSourceList::Type@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgSrcRecords::Parser@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for APT::CacheSetHelper@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgCache::Namespace@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for OpProgress@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for SourceCopy@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgAcqFile@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgAcquire@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for DynamicMMap@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for PackageCopy@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgDepCache@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgSimulate@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgAcqMethod@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgCacheFile@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgIndexFile@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for WeakPointable@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgAcqArchive@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgTagSection@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for OpTextProgress@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgAcquireStatus@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgPackageManager@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for debVersioningSystem@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgUdevCdromDevices@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgVersioningSystem@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for MMap@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for FileFd@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgCache@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for IndexCopy@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for debSystem@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for metaIndex@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgDPkgPM@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgPolicy@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgSystem@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgAcquire::Item@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgRecords::Parser@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgDepCache::InRootSetFunc@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgDepCache::DefaultRootSetFunc@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgDepCache::Policy@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgSimulate::Policy@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgIndexFile::Type@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for Configuration::MatchAgainstConfig@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgSourceList::Type@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgSrcRecords::Parser@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for APT::CacheSetHelper@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgCache::Namespace@APTPKG_6.0" 0.8.0 + (c++)"vtable for OpProgress@APTPKG_6.0" 0.8.0 + (c++)"vtable for SourceCopy@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgAcqFile@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgAcquire@APTPKG_6.0" 0.8.0 + (c++)"vtable for DynamicMMap@APTPKG_6.0" 0.8.0 + (c++)"vtable for PackageCopy@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgDepCache@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgSimulate@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgAcqMethod@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgCacheFile@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgIndexFile@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgAcqArchive@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgTagSection@APTPKG_6.0" 0.8.0 + (c++)"vtable for OpTextProgress@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgAcquireStatus@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgPackageManager@APTPKG_6.0" 0.8.0 + (c++)"vtable for debVersioningSystem@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgUdevCdromDevices@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgVersioningSystem@APTPKG_6.0" 0.8.0 + (c++)"vtable for MMap@APTPKG_6.0" 0.8.0 + (c++)"vtable for FileFd@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgCache@APTPKG_6.0" 0.8.0 + (c++)"vtable for IndexCopy@APTPKG_6.0" 0.8.0 + (c++)"vtable for debSystem@APTPKG_6.0" 0.8.0 + (c++)"vtable for metaIndex@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgDPkgPM@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgPolicy@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgSystem@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgAcquire::Item@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgRecords::Parser@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgDepCache::InRootSetFunc@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgDepCache::DefaultRootSetFunc@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgDepCache::Policy@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgSimulate::Policy@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgIndexFile::Type@APTPKG_6.0" 0.8.0 + (c++)"vtable for Configuration::MatchAgainstConfig@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgSourceList::Type@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgSrcRecords::Parser@APTPKG_6.0" 0.8.0 + (c++)"vtable for APT::CacheSetHelper@APTPKG_6.0" 0.8.0 + (c++)"operator<<(std::basic_ostream<char, std::char_traits<char> >&, pkgCache::DepIterator)@APTPKG_6.0" 0.8.0 + (c++)"operator<<(std::basic_ostream<char, std::char_traits<char> >&, pkgCache::PkgIterator)@APTPKG_6.0" 0.8.0 + _config@APTPKG_6.0 0.8.0 + _system@APTPKG_6.0 0.8.0 + debSys@APTPKG_6.0 0.8.0 + debVS@APTPKG_6.0 0.8.0 + pkgLibVersion@APTPKG_6.0 0.8.0 + pkgVersion@APTPKG_6.0 0.8.0 + (c++)"pkgAcquireStatus::~pkgAcquireStatus()@APTPKG_6.0" 0.8.0 + (c++)"IndexCopy::~IndexCopy()@APTPKG_6.0" 0.8.0 + (c++)"pkgArchiveCleaner::~pkgArchiveCleaner()@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgArchiveCleaner@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgArchiveCleaner@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgArchiveCleaner@APTPKG_6.0" 0.8.0 ### architecture specific: va_list - (arch=armel armhf arm64|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, std::__va_list&) const@APTPKG_5.90" 0.8.15~exp1 - (arch=i386 hurd-i386 kfreebsd-i386 ppc64 ppc64el|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, char*&) const@APTPKG_5.90" 0.8.15~exp1 - (arch=hppa ia64 mips mipsel mips64el sparc sparc64|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, void*&) const@APTPKG_5.90" 0.8.15~exp1 - (arch=amd64 kfreebsd-amd64 powerpc powerpcspe s390 s390x x32|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, __va_list_tag (&) [1]) const@APTPKG_5.90" 0.8.15~exp1 - (arch=sh4|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, __builtin_va_list&) const@APTPKG_5.90" 0.8.15~exp1 - (arch=alpha|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, __va_list_tag&) const@APTPKG_5.90" 0.8.15~exp1 + (arch=armel armhf arm64|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, std::__va_list&) const@APTPKG_6.0" 0.8.15~exp1 + (arch=i386 hurd-i386 kfreebsd-i386 ppc64 ppc64el|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, char*&) const@APTPKG_6.0" 0.8.15~exp1 + (arch=hppa ia64 mips mipsel mips64el sparc sparc64|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, void*&) const@APTPKG_6.0" 0.8.15~exp1 + (arch=amd64 kfreebsd-amd64 powerpc powerpcspe s390 s390x x32|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, __va_list_tag (&) [1]) const@APTPKG_6.0" 0.8.15~exp1 + (arch=sh4|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, __builtin_va_list&) const@APTPKG_6.0" 0.8.15~exp1 + (arch=alpha|c++)"pkgAcqMethod::PrintStatus(char const*, char const*, __va_list_tag&) const@APTPKG_6.0" 0.8.15~exp1 ### architecture specific: va_list & size_t - (arch=i386 hurd-i386 kfreebsd-i386|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, char*&, unsigned int&)@APTPKG_5.90" 0.8.11.4 - (arch=armel armhf|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, std::__va_list&, unsigned int&)@APTPKG_5.90" 0.8.11.4 - (arch=arm64|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, std::__va_list&, unsigned long&)@APTPKG_5.90" 0.8.11.4 - (arch=alpha|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, __va_list_tag&, unsigned long&)@APTPKG_5.90" 0.8.11.4 - (arch=powerpc powerpcspe x32|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, __va_list_tag (&) [1], unsigned int&)@APTPKG_5.90" 0.8.11.4 - (arch=amd64 kfreebsd-amd64 s390 s390x|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, __va_list_tag (&) [1], unsigned long&)@APTPKG_5.90" 0.8.11.4 - (arch=hppa mips mipsel sparc|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, void*&, unsigned int&)@APTPKG_5.90" 0.8.11.4 - (arch=ia64 sparc64 mips64el|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, void*&, unsigned long&)@APTPKG_5.90" 0.8.11.4 - (arch=sh4|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, __builtin_va_list&, unsigned int&)@APTPKG_5.90" 0.8.11.4 - (arch=ppc64 ppc64el|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, char*&, unsigned long&)@APTPKG_5.90" 0.8.11.4 - (arch=i386 hurd-i386 kfreebsd-i386|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, char*&, int, unsigned int&)@APTPKG_5.90" 0.8.11.4 - (arch=armel armhf|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, std::__va_list&, int, unsigned int&)@APTPKG_5.90" 0.8.11.4 - (arch=arm64|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, std::__va_list&, int, unsigned long&)@APTPKG_5.90" 0.8.11.4 - (arch=alpha|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, __va_list_tag&, int, unsigned long&)@APTPKG_5.90" 0.8.11.4 - (arch=powerpc powerpcspe x32|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, __va_list_tag (&) [1], int, unsigned int&)@APTPKG_5.90" 0.8.11.4 - (arch=amd64 kfreebsd-amd64 s390 s390x|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, __va_list_tag (&) [1], int, unsigned long&)@APTPKG_5.90" 0.8.11.4 - (arch=hppa mips mipsel sparc|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, void*&, int, unsigned int&)@APTPKG_5.90" 0.8.11.4 - (arch=ia64 sparc64 mips64el|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, void*&, int, unsigned long&)@APTPKG_5.90" 0.8.11.4 1 - (arch=sh4|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, __builtin_va_list&, int, unsigned int&)@APTPKG_5.90" 0.8.11.4 - (arch=ppc64 ppc64el|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, char*&, int, unsigned long&)@APTPKG_5.90" 0.8.11.4 + (arch=i386 hurd-i386 kfreebsd-i386|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, char*&, unsigned int&)@APTPKG_6.0" 0.8.11.4 + (arch=armel armhf|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, std::__va_list&, unsigned int&)@APTPKG_6.0" 0.8.11.4 + (arch=arm64|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, std::__va_list&, unsigned long&)@APTPKG_6.0" 0.8.11.4 + (arch=alpha|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, __va_list_tag&, unsigned long&)@APTPKG_6.0" 0.8.11.4 + (arch=powerpc powerpcspe x32|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, __va_list_tag (&) [1], unsigned int&)@APTPKG_6.0" 0.8.11.4 + (arch=amd64 kfreebsd-amd64 s390 s390x|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, __va_list_tag (&) [1], unsigned long&)@APTPKG_6.0" 0.8.11.4 + (arch=hppa mips mipsel sparc|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, void*&, unsigned int&)@APTPKG_6.0" 0.8.11.4 + (arch=ia64 sparc64 mips64el|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, void*&, unsigned long&)@APTPKG_6.0" 0.8.11.4 + (arch=sh4|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, __builtin_va_list&, unsigned int&)@APTPKG_6.0" 0.8.11.4 + (arch=ppc64 ppc64el|c++)"GlobalError::Insert(GlobalError::MsgType, char const*, char*&, unsigned long&)@APTPKG_6.0" 0.8.11.4 + (arch=i386 hurd-i386 kfreebsd-i386|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, char*&, int, unsigned int&)@APTPKG_6.0" 0.8.11.4 + (arch=armel armhf|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, std::__va_list&, int, unsigned int&)@APTPKG_6.0" 0.8.11.4 + (arch=arm64|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, std::__va_list&, int, unsigned long&)@APTPKG_6.0" 0.8.11.4 + (arch=alpha|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, __va_list_tag&, int, unsigned long&)@APTPKG_6.0" 0.8.11.4 + (arch=powerpc powerpcspe x32|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, __va_list_tag (&) [1], int, unsigned int&)@APTPKG_6.0" 0.8.11.4 + (arch=amd64 kfreebsd-amd64 s390 s390x|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, __va_list_tag (&) [1], int, unsigned long&)@APTPKG_6.0" 0.8.11.4 + (arch=hppa mips mipsel sparc|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, void*&, int, unsigned int&)@APTPKG_6.0" 0.8.11.4 + (arch=ia64 sparc64 mips64el|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, void*&, int, unsigned long&)@APTPKG_6.0" 0.8.11.4 1 + (arch=sh4|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, __builtin_va_list&, int, unsigned int&)@APTPKG_6.0" 0.8.11.4 + (arch=ppc64 ppc64el|c++)"GlobalError::InsertErrno(GlobalError::MsgType, char const*, char const*, char*&, int, unsigned long&)@APTPKG_6.0" 0.8.11.4 ### architecture specific: size_t - (arch=i386 armel armhf hppa hurd-i386 kfreebsd-i386 mips mipsel powerpc powerpcspe sh4 sparc x32|c++)"_strtabexpand(char*, unsigned int)@APTPKG_5.90" 0.8.0 - (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el s390 s390x sparc64 ppc64 ppc64el|c++)"_strtabexpand(char*, unsigned long)@APTPKG_5.90" 0.8.0 + (arch=i386 armel armhf hppa hurd-i386 kfreebsd-i386 mips mipsel powerpc powerpcspe sh4 sparc x32|c++)"_strtabexpand(char*, unsigned int)@APTPKG_6.0" 0.8.0 + (arch=alpha amd64 arm64 ia64 kfreebsd-amd64 mips64el s390 s390x sparc64 ppc64 ppc64el|c++)"_strtabexpand(char*, unsigned long)@APTPKG_6.0" 0.8.0 ### architecture specific: time_t - (arch=!x32|c++)"FTPMDTMStrToTime(char const*, long&)@APTPKG_5.90" 0.8.0 - (arch=x32|c++)"FTPMDTMStrToTime(char const*, long long&)@APTPKG_5.90" 0.8.0 - (arch=!x32|c++)"RFC1123StrToTime(char const*, long&)@APTPKG_5.90" 0.8.0 - (arch=x32|c++)"RFC1123StrToTime(char const*, long long&)@APTPKG_5.90" 0.8.0 - (arch=!x32|c++)"RFC1123StrToTime(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, long&)@APTPKG_5.90" 1.9.0 - (arch=x32|c++)"RFC1123StrToTime(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, long long&)@APTPKG_5.90" 1.9.0 + (arch=!x32|c++)"FTPMDTMStrToTime(char const*, long&)@APTPKG_6.0" 0.8.0 + (arch=x32|c++)"FTPMDTMStrToTime(char const*, long long&)@APTPKG_6.0" 0.8.0 + (arch=!x32|c++)"RFC1123StrToTime(char const*, long&)@APTPKG_6.0" 0.8.0 + (arch=x32|c++)"RFC1123StrToTime(char const*, long long&)@APTPKG_6.0" 0.8.0 + (arch=!x32|c++)"RFC1123StrToTime(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, long&)@APTPKG_6.0" 1.9.0 + (arch=x32|c++)"RFC1123StrToTime(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, long long&)@APTPKG_6.0" 1.9.0 ### architecture specific: mode_t - (arch=!kfreebsd-i386 !kfreebsd-amd64|c++)"ChangeOwnerAndPermissionOfFile(char const*, char const*, char const*, char const*, unsigned int)@APTPKG_5.90" 1.1~exp9 - (arch=kfreebsd-i386 kfreebsd-amd64|c++)"ChangeOwnerAndPermissionOfFile(char const*, char const*, char const*, char const*, unsigned short)@APTPKG_5.90" 1.1~exp9 + (arch=!kfreebsd-i386 !kfreebsd-amd64|c++)"ChangeOwnerAndPermissionOfFile(char const*, char const*, char const*, char const*, unsigned int)@APTPKG_6.0" 1.1~exp9 + (arch=kfreebsd-i386 kfreebsd-amd64|c++)"ChangeOwnerAndPermissionOfFile(char const*, char const*, char const*, char const*, unsigned short)@APTPKG_6.0" 1.1~exp9 ### - (c++)"CreateAPTDirectoryIfNeeded(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.2 - (c++)"FileFd::FileSize()@APTPKG_5.90" 0.8.8 - (c++)"Base256ToNum(char const*, unsigned long&, unsigned int)@APTPKG_5.90" 0.8.11 - (c++)"pkgDepCache::SetCandidateRelease(pkgCache::VerIterator, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::list<std::pair<pkgCache::VerIterator, pkgCache::VerIterator>, std::allocator<std::pair<pkgCache::VerIterator, pkgCache::VerIterator> > >&)@APTPKG_5.90" 0.8.11 - (c++)"pkgDepCache::SetCandidateRelease(pkgCache::VerIterator, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.11 - (c++)"RealFileExists(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.11 - (c++)"StripEpoch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.11 - (c++)"pkgTagSection::FindFlag(unsigned long&, unsigned long, char const*, char const*)@APTPKG_5.90" 0.8.11 - (c++)"FindMountPointForDevice[abi:cxx11](char const*)@APTPKG_5.90" 0.8.12 - (c++)"pkgUdevCdromDevices::ScanForRemovable(bool)@APTPKG_5.90" 0.8.12 - (c++)"APT::Configuration::Compressor::Compressor(char const*, char const*, char const*, char const*, char const*, unsigned short)@APTPKG_5.90" 0.8.12 - (c++)"APT::Configuration::getCompressors(bool)@APTPKG_5.90" 0.8.12 - (c++)"APT::Configuration::getCompressorExtensions[abi:cxx11]()@APTPKG_5.90" 0.8.12 - (c++)"pkgCache::DepIterator::IsNegative() const@APTPKG_5.90" 0.8.15~exp1 - (c++)"Configuration::CndSet(char const*, int)@APTPKG_5.90" 0.8.15.3 - (c++)"pkgProblemResolver::InstOrNewPolicyBroken(pkgCache::PkgIterator)@APTPKG_5.90" 0.8.15.3 - (c++)"DeEscapeString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.15.4 - (c++)"GetModificationTime(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.15.6 - (c++)"pkgSourceList::GetLastModifiedTime()@APTPKG_5.90" 0.8.15.6 - (c++)"pkgCacheFile::RemoveCaches()@APTPKG_5.90" 0.8.15.7 - (c++)"pkgOrderList::VisitNode(pkgCache::PkgIterator, char const*)@APTPKG_5.90" 0.8.15.7 + (c++)"CreateAPTDirectoryIfNeeded(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.2 + (c++)"FileFd::FileSize()@APTPKG_6.0" 0.8.8 + (c++)"Base256ToNum(char const*, unsigned long&, unsigned int)@APTPKG_6.0" 0.8.11 + (c++)"pkgDepCache::SetCandidateRelease(pkgCache::VerIterator, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::list<std::pair<pkgCache::VerIterator, pkgCache::VerIterator>, std::allocator<std::pair<pkgCache::VerIterator, pkgCache::VerIterator> > >&)@APTPKG_6.0" 0.8.11 + (c++)"pkgDepCache::SetCandidateRelease(pkgCache::VerIterator, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.11 + (c++)"RealFileExists(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.11 + (c++)"StripEpoch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.11 + (c++)"pkgTagSection::FindFlag(unsigned long&, unsigned long, char const*, char const*)@APTPKG_6.0" 0.8.11 + (c++)"FindMountPointForDevice[abi:cxx11](char const*)@APTPKG_6.0" 0.8.12 + (c++)"pkgUdevCdromDevices::ScanForRemovable(bool)@APTPKG_6.0" 0.8.12 + (c++)"APT::Configuration::Compressor::Compressor(char const*, char const*, char const*, char const*, char const*, unsigned short)@APTPKG_6.0" 0.8.12 + (c++)"APT::Configuration::getCompressors(bool)@APTPKG_6.0" 0.8.12 + (c++)"APT::Configuration::getCompressorExtensions[abi:cxx11]()@APTPKG_6.0" 0.8.12 + (c++)"pkgCache::DepIterator::IsNegative() const@APTPKG_6.0" 0.8.15~exp1 + (c++)"Configuration::CndSet(char const*, int)@APTPKG_6.0" 0.8.15.3 + (c++)"pkgProblemResolver::InstOrNewPolicyBroken(pkgCache::PkgIterator)@APTPKG_6.0" 0.8.15.3 + (c++)"DeEscapeString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.15.4 + (c++)"GetModificationTime(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.15.6 + (c++)"pkgSourceList::GetLastModifiedTime()@APTPKG_6.0" 0.8.15.6 + (c++)"pkgCacheFile::RemoveCaches()@APTPKG_6.0" 0.8.15.7 + (c++)"pkgOrderList::VisitNode(pkgCache::PkgIterator, char const*)@APTPKG_6.0" 0.8.15.7 ### external dependency resolver ### - (c++)"EDSP::ApplyRequest(std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, pkgDepCache&)@APTPKG_5.90" 0.8.16~exp2 - (c++)"EDSP::ReadResponse(int, pkgDepCache&, OpProgress*)@APTPKG_5.90" 0.8.16~exp2 - (c++)"pkgDepCache::Policy::GetPriority(pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.16~exp6 - (c++)"pkgDepCache::Policy::GetPriority(pkgCache::PkgFileIterator const&)@APTPKG_5.90" 0.8.16~exp6 + (c++)"EDSP::ApplyRequest(std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, pkgDepCache&)@APTPKG_6.0" 0.8.16~exp2 + (c++)"EDSP::ReadResponse(int, pkgDepCache&, OpProgress*)@APTPKG_6.0" 0.8.16~exp2 + (c++)"pkgDepCache::Policy::GetPriority(pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.16~exp6 + (c++)"pkgDepCache::Policy::GetPriority(pkgCache::PkgFileIterator const&)@APTPKG_6.0" 0.8.16~exp6 ### generalisation of checksums (with lfs) -- mostly api-compatible available (without sha512 in previous versions) - (c++)"AddCRC16(unsigned short, void const*, unsigned long long)@APTPKG_5.90" 0.8.16~exp2 - (c++)"MD5Summation::Add(unsigned char const*, unsigned long long)@APTPKG_5.90" 0.8.16~exp6 - (c++)"MD5Summation::Result()@APTPKG_5.90" 0.8.16~exp2 - (c++)"MD5Summation::MD5Summation()@APTPKG_5.90" 0.8.16~exp2 - (c++)"SHA1Summation::SHA1Summation()@APTPKG_5.90" 0.8.16~exp2 - (c++)"SHA1Summation::Add(unsigned char const*, unsigned long long)@APTPKG_5.90" 0.8.16~exp6 - (c++)"SHA1Summation::Result()@APTPKG_5.90" 0.8.16~exp2 - (c++)"SummationImplementation::AddFD(int, unsigned long long)@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo for MD5Summation@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo for SHA1Summation@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo for SHA256Summation@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo for SHA512Summation@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo for SHA2SummationBase@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo for SummationImplementation@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo name for MD5Summation@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo name for SHA1Summation@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo name for SHA256Summation@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo name for SHA512Summation@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo name for SHA2SummationBase@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo name for SummationImplementation@APTPKG_5.90" 0.8.16~exp6 - (c++)"vtable for MD5Summation@APTPKG_5.90" 0.8.16~exp6 - (c++)"vtable for SHA1Summation@APTPKG_5.90" 0.8.16~exp6 - (c++)"vtable for SHA256Summation@APTPKG_5.90" 0.8.16~exp6 - (c++)"vtable for SHA512Summation@APTPKG_5.90" 0.8.16~exp6 + (c++)"MD5Summation::Add(unsigned char const*, unsigned long long)@APTPKG_6.0" 0.8.16~exp6 + (c++)"MD5Summation::Result()@APTPKG_6.0" 0.8.16~exp2 + (c++)"MD5Summation::MD5Summation()@APTPKG_6.0" 0.8.16~exp2 + (c++)"SHA1Summation::SHA1Summation()@APTPKG_6.0" 0.8.16~exp2 + (c++)"SHA1Summation::Add(unsigned char const*, unsigned long long)@APTPKG_6.0" 0.8.16~exp6 + (c++)"SHA1Summation::Result()@APTPKG_6.0" 0.8.16~exp2 + (c++)"SummationImplementation::AddFD(int, unsigned long long)@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo for MD5Summation@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo for SHA1Summation@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo for SHA256Summation@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo for SHA512Summation@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo for SHA2SummationBase@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo for SummationImplementation@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo name for MD5Summation@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo name for SHA1Summation@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo name for SHA256Summation@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo name for SHA512Summation@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo name for SHA2SummationBase@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo name for SummationImplementation@APTPKG_6.0" 0.8.16~exp6 + (c++)"vtable for MD5Summation@APTPKG_6.0" 0.8.16~exp6 + (c++)"vtable for SHA1Summation@APTPKG_6.0" 0.8.16~exp6 + (c++)"vtable for SHA256Summation@APTPKG_6.0" 0.8.16~exp6 + (c++)"vtable for SHA512Summation@APTPKG_6.0" 0.8.16~exp6 ### large file support - available in older api-compatible versions without lfs ### - (c++)"StrToNum(char const*, unsigned long long&, unsigned int, unsigned int)@APTPKG_5.90" 0.8.16~exp6 - (c++)"OpProgress::SubProgress(unsigned long long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, float)@APTPKG_5.90" 0.8.16~exp6 - (c++)"OpProgress::OverallProgress(unsigned long long, unsigned long long, unsigned long long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.16~exp6 - (c++)"OpProgress::Progress(unsigned long long)@APTPKG_5.90" 0.8.16~exp6 - (c++)"SourceCopy::GetFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long long&)@APTPKG_5.90" 0.8.16~exp6 - (c++)"pkgAcquire::UriIterator::~UriIterator()@APTPKG_5.90" 0.8.16~exp6 - (c++)"pkgAcquire::MethodConfig::~MethodConfig()@APTPKG_5.90" 0.8.16~exp6 - (c++)"pkgTagFile::Jump(pkgTagSection&, unsigned long long)@APTPKG_5.90" 0.8.16~exp6 - (c++)"pkgTagFile::Offset()@APTPKG_5.90" 0.8.16~exp6 - (c++)"pkgTagFile::pkgTagFile(FileFd*, unsigned long long)@APTPKG_5.90" 0.8.16~exp6 - (c++)"DynamicMMap::RawAllocate(unsigned long long, unsigned long)@APTPKG_5.90" 0.8.16~exp6 - (c++)"PackageCopy::GetFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long long&)@APTPKG_5.90" 0.8.16~exp6 - (c++)"pkgTagSection::~pkgTagSection()@APTPKG_5.90" 0.8.16~exp6 - (c++)"pkgAcquireStatus::Fetched(unsigned long long, unsigned long long)@APTPKG_5.90" 0.8.16~exp6 - (c++)"FileFd::Read(void*, unsigned long long, unsigned long long*)@APTPKG_5.90" 0.8.16~exp6 - (c++)"FileFd::Seek(unsigned long long)@APTPKG_5.90" 0.8.16~exp6 - (c++)"FileFd::Skip(unsigned long long)@APTPKG_5.90" 0.8.16~exp6 - (c++)"FileFd::Write(void const*, unsigned long long)@APTPKG_5.90" 0.8.16~exp6 - (c++)"FileFd::Truncate(unsigned long long)@APTPKG_5.90" 0.8.16~exp6 - (c++)"pkgPolicy::GetPriority(pkgCache::PkgFileIterator const&)@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo for pkgTagFile@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo for pkgSrcRecords@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo for pkgAcquire::UriIterator@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo for pkgAcquire::MethodConfig@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo for pkgAcquire::Queue@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo for pkgAcquire::Worker@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo name for pkgTagFile@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo name for pkgSrcRecords@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo name for pkgAcquire::UriIterator@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo name for pkgAcquire::MethodConfig@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo name for pkgAcquire::Queue@APTPKG_5.90" 0.8.16~exp6 - (c++)"typeinfo name for pkgAcquire::Worker@APTPKG_5.90" 0.8.16~exp6 - (c++)"vtable for pkgTagFile@APTPKG_5.90" 0.8.16~exp6 - (c++)"vtable for pkgSrcRecords@APTPKG_5.90" 0.8.16~exp6 - (c++)"vtable for pkgAcquire::UriIterator@APTPKG_5.90" 0.8.16~exp6 - (c++)"vtable for pkgAcquire::MethodConfig@APTPKG_5.90" 0.8.16~exp6 - (c++)"vtable for pkgAcquire::Queue@APTPKG_5.90" 0.8.16~exp6 - (c++)"vtable for pkgAcquire::Worker@APTPKG_5.90" 0.8.16~exp6 + (c++)"StrToNum(char const*, unsigned long long&, unsigned int, unsigned int)@APTPKG_6.0" 0.8.16~exp6 + (c++)"OpProgress::SubProgress(unsigned long long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, float)@APTPKG_6.0" 0.8.16~exp6 + (c++)"OpProgress::OverallProgress(unsigned long long, unsigned long long, unsigned long long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.16~exp6 + (c++)"OpProgress::Progress(unsigned long long)@APTPKG_6.0" 0.8.16~exp6 + (c++)"SourceCopy::GetFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long long&)@APTPKG_6.0" 0.8.16~exp6 + (c++)"pkgAcquire::UriIterator::~UriIterator()@APTPKG_6.0" 0.8.16~exp6 + (c++)"pkgAcquire::MethodConfig::~MethodConfig()@APTPKG_6.0" 0.8.16~exp6 + (c++)"pkgTagFile::Jump(pkgTagSection&, unsigned long long)@APTPKG_6.0" 0.8.16~exp6 + (c++)"pkgTagFile::Offset()@APTPKG_6.0" 0.8.16~exp6 + (c++)"pkgTagFile::pkgTagFile(FileFd*, unsigned long long)@APTPKG_6.0" 0.8.16~exp6 + (c++)"DynamicMMap::RawAllocate(unsigned long long, unsigned long)@APTPKG_6.0" 0.8.16~exp6 + (c++)"PackageCopy::GetFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned long long&)@APTPKG_6.0" 0.8.16~exp6 + (c++)"pkgTagSection::~pkgTagSection()@APTPKG_6.0" 0.8.16~exp6 + (c++)"pkgAcquireStatus::Fetched(unsigned long long, unsigned long long)@APTPKG_6.0" 0.8.16~exp6 + (c++)"FileFd::Read(void*, unsigned long long, unsigned long long*)@APTPKG_6.0" 0.8.16~exp6 + (c++)"FileFd::Seek(unsigned long long)@APTPKG_6.0" 0.8.16~exp6 + (c++)"FileFd::Skip(unsigned long long)@APTPKG_6.0" 0.8.16~exp6 + (c++)"FileFd::Write(void const*, unsigned long long)@APTPKG_6.0" 0.8.16~exp6 + (c++)"FileFd::Truncate(unsigned long long)@APTPKG_6.0" 0.8.16~exp6 + (c++)"pkgPolicy::GetPriority(pkgCache::PkgFileIterator const&)@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo for pkgTagFile@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo for pkgSrcRecords@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo for pkgAcquire::UriIterator@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo for pkgAcquire::MethodConfig@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo for pkgAcquire::Queue@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo for pkgAcquire::Worker@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo name for pkgTagFile@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo name for pkgSrcRecords@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo name for pkgAcquire::UriIterator@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo name for pkgAcquire::MethodConfig@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo name for pkgAcquire::Queue@APTPKG_6.0" 0.8.16~exp6 + (c++)"typeinfo name for pkgAcquire::Worker@APTPKG_6.0" 0.8.16~exp6 + (c++)"vtable for pkgTagFile@APTPKG_6.0" 0.8.16~exp6 + (c++)"vtable for pkgSrcRecords@APTPKG_6.0" 0.8.16~exp6 + (c++)"vtable for pkgAcquire::UriIterator@APTPKG_6.0" 0.8.16~exp6 + (c++)"vtable for pkgAcquire::MethodConfig@APTPKG_6.0" 0.8.16~exp6 + (c++)"vtable for pkgAcquire::Queue@APTPKG_6.0" 0.8.16~exp6 + (c++)"vtable for pkgAcquire::Worker@APTPKG_6.0" 0.8.16~exp6 ### remove deprecated parameter - (c++)"pkgDepCache::SetCandidateVersion(pkgCache::VerIterator)@APTPKG_5.90" 0.8.16~exp6 - (c++)"pkgDepCache::AddSizes(pkgCache::PkgIterator const&, bool)@APTPKG_5.90" 0.8.16~exp6 - (c++)"pkgDepCache::AddStates(pkgCache::PkgIterator const&, bool)@APTPKG_5.90" 0.8.16~exp6 + (c++)"pkgDepCache::SetCandidateVersion(pkgCache::VerIterator)@APTPKG_6.0" 0.8.16~exp6 + (c++)"pkgDepCache::AddSizes(pkgCache::PkgIterator const&, bool)@APTPKG_6.0" 0.8.16~exp6 + (c++)"pkgDepCache::AddStates(pkgCache::PkgIterator const&, bool)@APTPKG_6.0" 0.8.16~exp6 ### used internally by public interfaces - if you use them directly, you can keep the pieces - (c++|optional=internal|regex)"^SHA256_.*@APTPKG_5.90$" 0.8.16~exp2 - (c++|optional=internal|regex)"^SHA384_.*@APTPKG_5.90$" 0.8.16~exp2 - (c++|optional=internal|regex)"^SHA512_.*@APTPKG_5.90$" 0.8.16~exp2 + (c++|optional=internal|regex)"^SHA256_.*@APTPKG_6.0$" 0.8.16~exp2 + (c++|optional=internal|regex)"^SHA384_.*@APTPKG_6.0$" 0.8.16~exp2 + (c++|optional=internal|regex)"^SHA512_.*@APTPKG_6.0$" 0.8.16~exp2 ### orderlist rework: the touched methods are protected - (c++)"SigINT(int)@APTPKG_5.90" 0.8.16~exp14 - (c++)"pkgPackageManager::SigINTStop@APTPKG_5.90" 0.8.16~exp14 - (c++)"pkgPackageManager::SmartUnPack(pkgCache::PkgIterator, bool, int)@APTPKG_5.90" 0.8.16~exp14 - (c++)"pkgPackageManager::SmartConfigure(pkgCache::PkgIterator, int)@APTPKG_5.90" 0.8.16~exp14 + (c++)"SigINT(int)@APTPKG_6.0" 0.8.16~exp14 + (c++)"pkgPackageManager::SigINTStop@APTPKG_6.0" 0.8.16~exp14 + (c++)"pkgPackageManager::SmartUnPack(pkgCache::PkgIterator, bool, int)@APTPKG_6.0" 0.8.16~exp14 + (c++)"pkgPackageManager::SmartConfigure(pkgCache::PkgIterator, int)@APTPKG_6.0" 0.8.16~exp14 ### FileFd rework: supporting different on-the-fly (de)compressing needs more parameter (abi), but the api is stable - (c++)"FileFd::OpenDescriptor(int, unsigned int, FileFd::CompressMode, bool)@APTPKG_5.90" 0.8.16~exp9 - (c++)"FileFd::OpenDescriptor(int, unsigned int, APT::Configuration::Compressor const&, bool)@APTPKG_5.90" 0.8.16~exp9 - (c++)"FileFd::ModificationTime()@APTPKG_5.90" 0.8.16~exp9 - (c++)"FileFd::Open(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, FileFd::CompressMode, unsigned long)@APTPKG_5.90" 0.8.16~exp9 - (c++)"FileFd::Open(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, APT::Configuration::Compressor const&, unsigned long)@APTPKG_5.90" 0.8.16~exp9 - (c++)"FileFd::ReadLine(char*, unsigned long long)@APTPKG_5.90" 0.8.16~exp9 - (c++)"SummationImplementation::AddFD(FileFd&, unsigned long long)@APTPKG_5.90" 0.8.16~exp9 + (c++)"FileFd::OpenDescriptor(int, unsigned int, FileFd::CompressMode, bool)@APTPKG_6.0" 0.8.16~exp9 + (c++)"FileFd::OpenDescriptor(int, unsigned int, APT::Configuration::Compressor const&, bool)@APTPKG_6.0" 0.8.16~exp9 + (c++)"FileFd::ModificationTime()@APTPKG_6.0" 0.8.16~exp9 + (c++)"FileFd::Open(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, FileFd::CompressMode, unsigned long)@APTPKG_6.0" 0.8.16~exp9 + (c++)"FileFd::Open(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, APT::Configuration::Compressor const&, unsigned long)@APTPKG_6.0" 0.8.16~exp9 + (c++)"FileFd::ReadLine(char*, unsigned long long)@APTPKG_6.0" 0.8.16~exp9 + (c++)"SummationImplementation::AddFD(FileFd&, unsigned long long)@APTPKG_6.0" 0.8.16~exp9 ### CacheSet rework: making them real containers breaks bigtime the API (for the CacheSetHelper) - (c++)"APT::CacheSetHelper::canNotFindTask(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.16~exp9 - (c++)"APT::CacheSetHelper::canNotFindRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.8.16~exp9 - (c++)"APT::CacheSetHelper::canNotFindAllVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.16~exp9 - (c++)"APT::CacheSetHelper::canNotFindPackage(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.16~exp9 - (c++)"APT::CacheSetHelper::showTaskSelection(pkgCache::PkgIterator const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.16~exp9 - (c++)"APT::CacheSetHelper::showRegExSelection(pkgCache::PkgIterator const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.8.16~exp9 - (c++)"APT::CacheSetHelper::showSelectedVersion(pkgCache::PkgIterator const&, pkgCache::VerIterator, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@APTPKG_5.90" 0.8.16~exp9 - (c++)"APT::CacheSetHelper::canNotFindCandInstVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.16~exp9 - (c++)"APT::CacheSetHelper::canNotFindInstCandVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_5.90" 0.8.16~exp9 - (c++)"APT::VersionContainerInterface::getCandidateVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@APTPKG_5.90" 0.8.16~exp9 - (c++)"APT::VersionContainerInterface::getInstalledVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@APTPKG_5.90" 0.8.16~exp9 - (c++)"APT::VersionContainerInterface::FromModifierCommandLine(unsigned short&, APT::VersionContainerInterface*, pkgCacheFile&, char const*, std::__cxx11::list<APT::VersionContainerInterface::Modifier, std::allocator<APT::VersionContainerInterface::Modifier> > const&, APT::CacheSetHelper&)@APTPKG_5.90" 0.8.16~exp9 - (c++)"typeinfo for APT::PackageContainerInterface@APTPKG_5.90" 0.8.16~exp9 - (c++)"typeinfo for APT::VersionContainerInterface@APTPKG_5.90" 0.8.16~exp9 - (c++)"typeinfo name for APT::PackageContainerInterface@APTPKG_5.90" 0.8.16~exp9 - (c++)"typeinfo name for APT::VersionContainerInterface@APTPKG_5.90" 0.8.16~exp9 - (c++)"vtable for APT::PackageContainerInterface@APTPKG_5.90" 0.8.16~exp9 - (c++)"vtable for APT::VersionContainerInterface@APTPKG_5.90" 0.8.16~exp9 + (c++)"APT::CacheSetHelper::canNotFindTask(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.16~exp9 + (c++)"APT::CacheSetHelper::canNotFindRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.8.16~exp9 + (c++)"APT::CacheSetHelper::canNotFindAllVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.16~exp9 + (c++)"APT::CacheSetHelper::canNotFindPackage(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.16~exp9 + (c++)"APT::CacheSetHelper::showTaskSelection(pkgCache::PkgIterator const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.16~exp9 + (c++)"APT::CacheSetHelper::showRegExSelection(pkgCache::PkgIterator const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.8.16~exp9 + (c++)"APT::CacheSetHelper::showSelectedVersion(pkgCache::PkgIterator const&, pkgCache::VerIterator, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@APTPKG_6.0" 0.8.16~exp9 + (c++)"APT::CacheSetHelper::canNotFindCandInstVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.16~exp9 + (c++)"APT::CacheSetHelper::canNotFindInstCandVer(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_6.0" 0.8.16~exp9 + (c++)"APT::VersionContainerInterface::getCandidateVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@APTPKG_6.0" 0.8.16~exp9 + (c++)"APT::VersionContainerInterface::getInstalledVer(pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper&)@APTPKG_6.0" 0.8.16~exp9 + (c++)"APT::VersionContainerInterface::FromModifierCommandLine(unsigned short&, APT::VersionContainerInterface*, pkgCacheFile&, char const*, std::__cxx11::list<APT::VersionContainerInterface::Modifier, std::allocator<APT::VersionContainerInterface::Modifier> > const&, APT::CacheSetHelper&)@APTPKG_6.0" 0.8.16~exp9 + (c++)"typeinfo for APT::PackageContainerInterface@APTPKG_6.0" 0.8.16~exp9 + (c++)"typeinfo for APT::VersionContainerInterface@APTPKG_6.0" 0.8.16~exp9 + (c++)"typeinfo name for APT::PackageContainerInterface@APTPKG_6.0" 0.8.16~exp9 + (c++)"typeinfo name for APT::VersionContainerInterface@APTPKG_6.0" 0.8.16~exp9 + (c++)"vtable for APT::PackageContainerInterface@APTPKG_6.0" 0.8.16~exp9 + (c++)"vtable for APT::VersionContainerInterface@APTPKG_6.0" 0.8.16~exp9 ### rework of the packagemanager rework - (c++)"APT::Progress::PackageManagerFancy::HandleSIGWINCH(int)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerFancy::~PackageManagerFancy()@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerFancy::PackageManagerFancy()@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerFancy::SetupTerminalScrollArea(int)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerFancy::StatusChanged(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerFancy::Stop()@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManager::~PackageManager()@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressDeb822Fd::ConffilePrompt(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressDeb822Fd::Error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressDeb822Fd::~PackageManagerProgressDeb822Fd()@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressDeb822Fd::PackageManagerProgressDeb822Fd(int)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressDeb822Fd::StartDpkg()@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressDeb822Fd::StatusChanged(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressDeb822Fd::Stop()@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressDeb822Fd::WriteToStatusFd(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressFactory()@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressFd::ConffilePrompt(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressFd::Error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressFd::~PackageManagerProgressFd()@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressFd::PackageManagerProgressFd(int)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressFd::StartDpkg()@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressFd::StatusChanged(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressFd::Stop()@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerProgressFd::WriteToStatusFd(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManager::StatusChanged(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerText::~PackageManagerText()@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerText::StatusChanged(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::String::Strip(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.9.13~exp1 - (c++)"pkgDPkgPM::BuildPackagesProgressMap()@APTPKG_5.90" 0.9.13~exp1 - (c++)"pkgDPkgPM::DoDpkgStatusFd(int)@APTPKG_5.90" 0.9.13~exp1 - (c++)"pkgDPkgPM::ProcessDpkgStatusLine(char*)@APTPKG_5.90" 0.9.13~exp1 - (c++)"pkgDPkgPM::StartPtyMagic()@APTPKG_5.90" 0.9.13~exp1 - (c++)"pkgDPkgPM::StopPtyMagic()@APTPKG_5.90" 0.9.13~exp1 - (c++)"typeinfo for APT::Progress::PackageManager@APTPKG_5.90" 0.9.13~exp1 - (c++)"typeinfo for APT::Progress::PackageManagerFancy@APTPKG_5.90" 0.9.13~exp1 - (c++)"typeinfo for APT::Progress::PackageManagerProgressDeb822Fd@APTPKG_5.90" 0.9.13~exp1 - (c++)"typeinfo for APT::Progress::PackageManagerProgressFd@APTPKG_5.90" 0.9.13~exp1 - (c++)"typeinfo for APT::Progress::PackageManagerText@APTPKG_5.90" 0.9.13~exp1 - (c++)"typeinfo name for APT::Progress::PackageManager@APTPKG_5.90" 0.9.13~exp1 - (c++)"typeinfo name for APT::Progress::PackageManagerFancy@APTPKG_5.90" 0.9.13~exp1 - (c++)"typeinfo name for APT::Progress::PackageManagerProgressDeb822Fd@APTPKG_5.90" 0.9.13~exp1 - (c++)"typeinfo name for APT::Progress::PackageManagerProgressFd@APTPKG_5.90" 0.9.13~exp1 - (c++)"typeinfo name for APT::Progress::PackageManagerText@APTPKG_5.90" 0.9.13~exp1 - (c++)"vtable for APT::Progress::PackageManager@APTPKG_5.90" 0.9.13~exp1 - (c++)"vtable for APT::Progress::PackageManagerFancy@APTPKG_5.90" 0.9.13~exp1 - (c++)"vtable for APT::Progress::PackageManagerProgressDeb822Fd@APTPKG_5.90" 0.9.13~exp1 - (c++)"vtable for APT::Progress::PackageManagerProgressFd@APTPKG_5.90" 0.9.13~exp1 - (c++)"vtable for APT::Progress::PackageManagerText@APTPKG_5.90" 0.9.13~exp1 - (c++)"APT::Progress::PackageManagerFancy::instances@APTPKG_5.90" 0.9.14.2 - (c++)"APT::Progress::PackageManagerFancy::Start(int)@APTPKG_5.90" 0.9.14.2 + (c++)"APT::Progress::PackageManagerFancy::HandleSIGWINCH(int)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerFancy::~PackageManagerFancy()@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerFancy::PackageManagerFancy()@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerFancy::SetupTerminalScrollArea(int)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerFancy::StatusChanged(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerFancy::Stop()@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManager::~PackageManager()@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::ConffilePrompt(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::Error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::~PackageManagerProgressDeb822Fd()@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::PackageManagerProgressDeb822Fd(int)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::StartDpkg()@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::StatusChanged(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::Stop()@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressDeb822Fd::WriteToStatusFd(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressFactory()@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressFd::ConffilePrompt(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressFd::Error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressFd::~PackageManagerProgressFd()@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressFd::PackageManagerProgressFd(int)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressFd::StartDpkg()@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressFd::StatusChanged(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressFd::Stop()@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerProgressFd::WriteToStatusFd(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManager::StatusChanged(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerText::~PackageManagerText()@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerText::StatusChanged(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::String::Strip(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.9.13~exp1 + (c++)"pkgDPkgPM::BuildPackagesProgressMap()@APTPKG_6.0" 0.9.13~exp1 + (c++)"pkgDPkgPM::DoDpkgStatusFd(int)@APTPKG_6.0" 0.9.13~exp1 + (c++)"pkgDPkgPM::ProcessDpkgStatusLine(char*)@APTPKG_6.0" 0.9.13~exp1 + (c++)"pkgDPkgPM::StartPtyMagic()@APTPKG_6.0" 0.9.13~exp1 + (c++)"pkgDPkgPM::StopPtyMagic()@APTPKG_6.0" 0.9.13~exp1 + (c++)"typeinfo for APT::Progress::PackageManager@APTPKG_6.0" 0.9.13~exp1 + (c++)"typeinfo for APT::Progress::PackageManagerFancy@APTPKG_6.0" 0.9.13~exp1 + (c++)"typeinfo for APT::Progress::PackageManagerProgressDeb822Fd@APTPKG_6.0" 0.9.13~exp1 + (c++)"typeinfo for APT::Progress::PackageManagerProgressFd@APTPKG_6.0" 0.9.13~exp1 + (c++)"typeinfo for APT::Progress::PackageManagerText@APTPKG_6.0" 0.9.13~exp1 + (c++)"typeinfo name for APT::Progress::PackageManager@APTPKG_6.0" 0.9.13~exp1 + (c++)"typeinfo name for APT::Progress::PackageManagerFancy@APTPKG_6.0" 0.9.13~exp1 + (c++)"typeinfo name for APT::Progress::PackageManagerProgressDeb822Fd@APTPKG_6.0" 0.9.13~exp1 + (c++)"typeinfo name for APT::Progress::PackageManagerProgressFd@APTPKG_6.0" 0.9.13~exp1 + (c++)"typeinfo name for APT::Progress::PackageManagerText@APTPKG_6.0" 0.9.13~exp1 + (c++)"vtable for APT::Progress::PackageManager@APTPKG_6.0" 0.9.13~exp1 + (c++)"vtable for APT::Progress::PackageManagerFancy@APTPKG_6.0" 0.9.13~exp1 + (c++)"vtable for APT::Progress::PackageManagerProgressDeb822Fd@APTPKG_6.0" 0.9.13~exp1 + (c++)"vtable for APT::Progress::PackageManagerProgressFd@APTPKG_6.0" 0.9.13~exp1 + (c++)"vtable for APT::Progress::PackageManagerText@APTPKG_6.0" 0.9.13~exp1 + (c++)"APT::Progress::PackageManagerFancy::instances@APTPKG_6.0" 0.9.14.2 + (c++)"APT::Progress::PackageManagerFancy::Start(int)@APTPKG_6.0" 0.9.14.2 ### install foo.deb support - (c++)"flAbsPath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 1.1~exp1 - (c++)"metaIndex::~metaIndex()@APTPKG_5.90" 1.1~exp1 + (c++)"flAbsPath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 1.1~exp1 + (c++)"metaIndex::~metaIndex()@APTPKG_6.0" 1.1~exp1 ### CacheFilter functors - (c++)"APT::CacheFilter::ANDMatcher::AND(APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher()@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ANDMatcher::~ANDMatcher()@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ANDMatcher::operator()(pkgCache::GrpIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ANDMatcher::operator()(pkgCache::PkgIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ANDMatcher::operator()(pkgCache::VerIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::FalseMatcher::operator()(pkgCache::GrpIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::FalseMatcher::operator()(pkgCache::PkgIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::FalseMatcher::operator()(pkgCache::VerIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::Matcher::~Matcher()@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::NOTMatcher::NOTMatcher(APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::NOTMatcher::~NOTMatcher()@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::NOTMatcher::operator()(pkgCache::GrpIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::NOTMatcher::operator()(pkgCache::PkgIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::NOTMatcher::operator()(pkgCache::VerIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ORMatcher::operator()(pkgCache::GrpIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ORMatcher::operator()(pkgCache::PkgIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ORMatcher::operator()(pkgCache::VerIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ORMatcher::OR(APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ORMatcher::~ORMatcher()@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::ORMatcher::ORMatcher()@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::PackageIsNewInstall::operator()(pkgCache::PkgIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::PackageIsNewInstall::~PackageIsNewInstall()@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::PackageIsNewInstall::PackageIsNewInstall(pkgCacheFile*)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::PackageMatcher::~PackageMatcher()@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::PackageNameMatchesFnmatch::PackageNameMatchesFnmatch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::TrueMatcher::operator()(pkgCache::GrpIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::TrueMatcher::operator()(pkgCache::PkgIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheFilter::TrueMatcher::operator()(pkgCache::VerIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo for APT::CacheFilter::ANDMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo for APT::CacheFilter::FalseMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo for APT::CacheFilter::Matcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo for APT::CacheFilter::NOTMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo for APT::CacheFilter::ORMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo for APT::CacheFilter::PackageArchitectureMatchesSpecification@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo for APT::CacheFilter::PackageIsNewInstall@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo for APT::CacheFilter::PackageMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo for APT::CacheFilter::PackageNameMatchesFnmatch@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo for APT::CacheFilter::PackageNameMatchesRegEx@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo for APT::CacheFilter::TrueMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo name for APT::CacheFilter::ANDMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo name for APT::CacheFilter::FalseMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo name for APT::CacheFilter::Matcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo name for APT::CacheFilter::NOTMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo name for APT::CacheFilter::ORMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo name for APT::CacheFilter::PackageArchitectureMatchesSpecification@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo name for APT::CacheFilter::PackageIsNewInstall@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo name for APT::CacheFilter::PackageMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo name for APT::CacheFilter::PackageNameMatchesFnmatch@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo name for APT::CacheFilter::PackageNameMatchesRegEx@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo name for APT::CacheFilter::TrueMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"vtable for APT::CacheFilter::ANDMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"vtable for APT::CacheFilter::FalseMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"vtable for APT::CacheFilter::Matcher@APTPKG_5.90" 1.1~exp4 - (c++)"vtable for APT::CacheFilter::NOTMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"vtable for APT::CacheFilter::ORMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"vtable for APT::CacheFilter::PackageArchitectureMatchesSpecification@APTPKG_5.90" 1.1~exp4 - (c++)"vtable for APT::CacheFilter::PackageIsNewInstall@APTPKG_5.90" 1.1~exp4 - (c++)"vtable for APT::CacheFilter::PackageMatcher@APTPKG_5.90" 1.1~exp4 - (c++)"vtable for APT::CacheFilter::PackageNameMatchesFnmatch@APTPKG_5.90" 1.1~exp4 - (c++)"vtable for APT::CacheFilter::PackageNameMatchesRegEx@APTPKG_5.90" 1.1~exp4 - (c++)"vtable for APT::CacheFilter::TrueMatcher@APTPKG_5.90" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::AND(APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher(APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::ANDMatcher()@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::~ANDMatcher()@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::operator()(pkgCache::GrpIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::operator()(pkgCache::PkgIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ANDMatcher::operator()(pkgCache::VerIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::FalseMatcher::operator()(pkgCache::GrpIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::FalseMatcher::operator()(pkgCache::PkgIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::FalseMatcher::operator()(pkgCache::VerIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::Matcher::~Matcher()@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::NOTMatcher::NOTMatcher(APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::NOTMatcher::~NOTMatcher()@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::NOTMatcher::operator()(pkgCache::GrpIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::NOTMatcher::operator()(pkgCache::PkgIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::NOTMatcher::operator()(pkgCache::VerIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::operator()(pkgCache::GrpIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::operator()(pkgCache::PkgIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::operator()(pkgCache::VerIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::OR(APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*, APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::ORMatcher(APT::CacheFilter::Matcher*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::~ORMatcher()@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::ORMatcher::ORMatcher()@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::PackageIsNewInstall::operator()(pkgCache::PkgIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::PackageIsNewInstall::~PackageIsNewInstall()@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::PackageIsNewInstall::PackageIsNewInstall(pkgCacheFile*)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::PackageMatcher::~PackageMatcher()@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::PackageNameMatchesFnmatch::PackageNameMatchesFnmatch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::TrueMatcher::operator()(pkgCache::GrpIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::TrueMatcher::operator()(pkgCache::PkgIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheFilter::TrueMatcher::operator()(pkgCache::VerIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::ANDMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::FalseMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::Matcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::NOTMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::ORMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::PackageArchitectureMatchesSpecification@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::PackageIsNewInstall@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::PackageMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::PackageNameMatchesFnmatch@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::PackageNameMatchesRegEx@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo for APT::CacheFilter::TrueMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::ANDMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::FalseMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::Matcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::NOTMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::ORMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::PackageArchitectureMatchesSpecification@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::PackageIsNewInstall@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::PackageMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::PackageNameMatchesFnmatch@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::PackageNameMatchesRegEx@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo name for APT::CacheFilter::TrueMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::ANDMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::FalseMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::Matcher@APTPKG_6.0" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::NOTMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::ORMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::PackageArchitectureMatchesSpecification@APTPKG_6.0" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::PackageIsNewInstall@APTPKG_6.0" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::PackageMatcher@APTPKG_6.0" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::PackageNameMatchesFnmatch@APTPKG_6.0" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::PackageNameMatchesRegEx@APTPKG_6.0" 1.1~exp4 + (c++)"vtable for APT::CacheFilter::TrueMatcher@APTPKG_6.0" 1.1~exp4 ### cacheset redesign (API, but not ABI compatible) -# (c++|optional=inline)"APT::PackageContainerInterface::FromCommandLine(APT::PackageContainerInterface*, pkgCacheFile&, char const**, APT::CacheSetHelper&)@APTPKG_5.90" 0.8.16~exp9 -# (c++|optional=inline)"APT::PackageContainerInterface::FromModifierCommandLine(unsigned short&, APT::PackageContainerInterface*, pkgCacheFile&, char const*, std::__cxx11::list<APT::PackageContainerInterface::Modifier, std::allocator<APT::PackageContainerInterface::Modifier> > const&, APT::CacheSetHelper&)@APTPKG_5.90" 0.8.16~exp9 -# (c++|optional=inline)"APT::PackageContainerInterface::FromName(pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@APTPKG_5.90" 0.8.16~exp9 -# (c++|optional=inline)"APT::PackageContainerInterface::FromTask(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@APTPKG_5.90" 0.8.16~exp9 -# (c++|optional=inline)"APT::PackageContainerInterface::FromRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@APTPKG_5.90" 0.8.16~exp9 -# (c++|optional=inline)"APT::VersionContainerInterface::FromString(APT::VersionContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&, bool)@APTPKG_5.90" 0.8.16~exp9 -# (c++|optional=inline)"APT::VersionContainerInterface::FromPackage(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&)@APTPKG_5.90" 0.8.16~exp9 -# (c++|optional=inline)"APT::VersionContainerInterface::FromCommandLine(APT::VersionContainerInterface*, pkgCacheFile&, char const**, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&)@APTPKG_5.90" 0.8.16~exp9 -# (c++)"APT::PackageContainerInterface::FromString(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@APTPKG_5.90" 0.8.16~exp9 -# (c++)"APT::PackageContainerInterface::FromGroup(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@APTPKG_5.90" 0.9.7 -# (c++)"APT::PackageContainerInterface::FromFnmatch(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@APTPKG_5.90" 0.9.11 - (c++)"APT::CacheSetHelper::canNotFindFnmatch(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::canNotFindPackage(APT::CacheSetHelper::PkgSelector, APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::canNotFindVersion(APT::CacheSetHelper::VerSelector, APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::canNotGetCandInstVer(pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::canNotGetInstCandVer(pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::canNotGetVersion(APT::CacheSetHelper::VerSelector, pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::PackageFrom(APT::CacheSetHelper::PkgSelector, APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::PackageFromCommandLine(APT::PackageContainerInterface*, pkgCacheFile&, char const**)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::PackageFromFnmatch(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::PackageFromModifierCommandLine(unsigned short&, APT::PackageContainerInterface*, pkgCacheFile&, char const*, std::__cxx11::list<APT::CacheSetHelper::PkgModifier, std::allocator<APT::CacheSetHelper::PkgModifier> > const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::PackageFromPackageName(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::PackageFromRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::PackageFromString(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::PackageFromTask(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::showFnmatchSelection(pkgCache::PkgIterator const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::showPackageSelection(pkgCache::PkgIterator const&, APT::CacheSetHelper::PkgSelector, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::CacheSetHelper::showVersionSelection(pkgCache::PkgIterator const&, pkgCache::VerIterator const&, APT::CacheSetHelper::VerSelector, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::VersionContainerInterface::FromCommandLine(APT::VersionContainerInterface*, pkgCacheFile&, char const**, APT::CacheSetHelper::VerSelector, APT::CacheSetHelper&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::VersionContainerInterface::FromPackage(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper::VerSelector, APT::CacheSetHelper&)@APTPKG_5.90" 1.1~exp4 - (c++)"APT::VersionContainerInterface::FromString(APT::VersionContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper::VerSelector, APT::CacheSetHelper&, bool)@APTPKG_5.90" 1.1~exp4 - (c++)"typeinfo for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >@APTPKG_5.90" 0.8.16~exp9 - (c++)"typeinfo for APT::PackageContainer<std::__cxx11::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >@APTPKG_5.90" 0.8.16~exp9 - (c++)"typeinfo for APT::VersionContainer<std::__cxx11::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@APTPKG_5.90" 0.8.16~exp9 - (c++)"typeinfo name for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >@APTPKG_5.90" 0.8.16~exp9 - (c++)"typeinfo name for APT::PackageContainer<std::__cxx11::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >@APTPKG_5.90" 0.8.16~exp9 - (c++)"typeinfo name for APT::VersionContainer<std::__cxx11::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@APTPKG_5.90" 0.8.16~exp9 - (c++)"vtable for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >@APTPKG_5.90" 0.8.16~exp9 - (c++)"vtable for APT::PackageContainer<std::__cxx11::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >@APTPKG_5.90" 0.8.16~exp9 - (c++)"vtable for APT::VersionContainer<std::__cxx11::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@APTPKG_5.90" 0.8.16~exp9 - (c++)"typeinfo for APT::VersionContainer<std::vector<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@APTPKG_5.90" 1.1~exp15 - (c++)"typeinfo name for APT::VersionContainer<std::vector<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@APTPKG_5.90" 1.1~exp15 - (c++)"vtable for APT::VersionContainer<std::vector<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@APTPKG_5.90" 1.1~exp15 +# (c++|optional=inline)"APT::PackageContainerInterface::FromCommandLine(APT::PackageContainerInterface*, pkgCacheFile&, char const**, APT::CacheSetHelper&)@APTPKG_6.0" 0.8.16~exp9 +# (c++|optional=inline)"APT::PackageContainerInterface::FromModifierCommandLine(unsigned short&, APT::PackageContainerInterface*, pkgCacheFile&, char const*, std::__cxx11::list<APT::PackageContainerInterface::Modifier, std::allocator<APT::PackageContainerInterface::Modifier> > const&, APT::CacheSetHelper&)@APTPKG_6.0" 0.8.16~exp9 +# (c++|optional=inline)"APT::PackageContainerInterface::FromName(pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@APTPKG_6.0" 0.8.16~exp9 +# (c++|optional=inline)"APT::PackageContainerInterface::FromTask(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@APTPKG_6.0" 0.8.16~exp9 +# (c++|optional=inline)"APT::PackageContainerInterface::FromRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@APTPKG_6.0" 0.8.16~exp9 +# (c++|optional=inline)"APT::VersionContainerInterface::FromString(APT::VersionContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&, bool)@APTPKG_6.0" 0.8.16~exp9 +# (c++|optional=inline)"APT::VersionContainerInterface::FromPackage(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&)@APTPKG_6.0" 0.8.16~exp9 +# (c++|optional=inline)"APT::VersionContainerInterface::FromCommandLine(APT::VersionContainerInterface*, pkgCacheFile&, char const**, APT::VersionContainerInterface::Version const&, APT::CacheSetHelper&)@APTPKG_6.0" 0.8.16~exp9 +# (c++)"APT::PackageContainerInterface::FromString(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, APT::CacheSetHelper&)@APTPKG_6.0" 0.8.16~exp9 +# (c++)"APT::PackageContainerInterface::FromGroup(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@APTPKG_6.0" 0.9.7 +# (c++)"APT::PackageContainerInterface::FromFnmatch(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper&)@APTPKG_6.0" 0.9.11 + (c++)"APT::CacheSetHelper::canNotFindFnmatch(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::canNotFindPackage(APT::CacheSetHelper::PkgSelector, APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::canNotFindVersion(APT::CacheSetHelper::VerSelector, APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::canNotGetCandInstVer(pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::canNotGetInstCandVer(pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::canNotGetVersion(APT::CacheSetHelper::VerSelector, pkgCacheFile&, pkgCache::PkgIterator const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFrom(APT::CacheSetHelper::PkgSelector, APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromCommandLine(APT::PackageContainerInterface*, pkgCacheFile&, char const**)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromFnmatch(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromModifierCommandLine(unsigned short&, APT::PackageContainerInterface*, pkgCacheFile&, char const*, std::__cxx11::list<APT::CacheSetHelper::PkgModifier, std::allocator<APT::CacheSetHelper::PkgModifier> > const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromPackageName(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromRegEx(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromString(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::PackageFromTask(APT::PackageContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::showFnmatchSelection(pkgCache::PkgIterator const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::showPackageSelection(pkgCache::PkgIterator const&, APT::CacheSetHelper::PkgSelector, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::CacheSetHelper::showVersionSelection(pkgCache::PkgIterator const&, pkgCache::VerIterator const&, APT::CacheSetHelper::VerSelector, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::VersionContainerInterface::FromCommandLine(APT::VersionContainerInterface*, pkgCacheFile&, char const**, APT::CacheSetHelper::VerSelector, APT::CacheSetHelper&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::VersionContainerInterface::FromPackage(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::PkgIterator const&, APT::CacheSetHelper::VerSelector, APT::CacheSetHelper&)@APTPKG_6.0" 1.1~exp4 + (c++)"APT::VersionContainerInterface::FromString(APT::VersionContainerInterface*, pkgCacheFile&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, APT::CacheSetHelper::VerSelector, APT::CacheSetHelper&, bool)@APTPKG_6.0" 1.1~exp4 + (c++)"typeinfo for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >@APTPKG_6.0" 0.8.16~exp9 + (c++)"typeinfo for APT::PackageContainer<std::__cxx11::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >@APTPKG_6.0" 0.8.16~exp9 + (c++)"typeinfo for APT::VersionContainer<std::__cxx11::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@APTPKG_6.0" 0.8.16~exp9 + (c++)"typeinfo name for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >@APTPKG_6.0" 0.8.16~exp9 + (c++)"typeinfo name for APT::PackageContainer<std::__cxx11::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >@APTPKG_6.0" 0.8.16~exp9 + (c++)"typeinfo name for APT::VersionContainer<std::__cxx11::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@APTPKG_6.0" 0.8.16~exp9 + (c++)"vtable for APT::PackageContainer<std::set<pkgCache::PkgIterator, std::less<pkgCache::PkgIterator>, std::allocator<pkgCache::PkgIterator> > >@APTPKG_6.0" 0.8.16~exp9 + (c++)"vtable for APT::PackageContainer<std::__cxx11::list<pkgCache::PkgIterator, std::allocator<pkgCache::PkgIterator> > >@APTPKG_6.0" 0.8.16~exp9 + (c++)"vtable for APT::VersionContainer<std::__cxx11::list<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@APTPKG_6.0" 0.8.16~exp9 + (c++)"typeinfo for APT::VersionContainer<std::vector<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@APTPKG_6.0" 1.1~exp15 + (c++)"typeinfo name for APT::VersionContainer<std::vector<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@APTPKG_6.0" 1.1~exp15 + (c++)"vtable for APT::VersionContainer<std::vector<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> > >@APTPKG_6.0" 1.1~exp15 ### all the hashes are belong to us - (c++)"Hashes::GetHashStringList()@APTPKG_5.90" 1.1~exp1 - (c++)"Hashes::Hashes()@APTPKG_5.90" 1.1~exp1 - (c++)"Hashes::~Hashes()@APTPKG_5.90" 1.1~exp1 - (c++)"HashStringList::find(char const*) const@APTPKG_5.90" 1.1~exp1 - (c++)"HashStringList::operator==(HashStringList const&) const@APTPKG_5.90" 1.1~exp1 - (c++)"HashStringList::operator!=(HashStringList const&) const@APTPKG_5.90" 1.1~exp1 - (c++)"HashStringList::push_back(HashString const&)@APTPKG_5.90" 1.1~exp1 - (c++)"HashStringList::supported(char const*)@APTPKG_5.90" 1.1~exp1 - (c++)"HashStringList::usable() const@APTPKG_5.90" 1.1~exp1 - (c++)"HashStringList::VerifyFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@APTPKG_5.90" 1.1~exp1 - (c++)"HashString::operator==(HashString const&) const@APTPKG_5.90" 1.1~exp1 - (c++)"HashString::operator!=(HashString const&) const@APTPKG_5.90" 1.1~exp1 - (c++)"pkgAcqArchive::IsTrusted() const@APTPKG_5.90" 1.1~exp1 - (c++)"pkgAcqFile::Custom600Headers[abi:cxx11]() const@APTPKG_5.90" 1.1~exp1 - (c++)"pkgAcqMethod::DropPrivsOrDie()@APTPKG_5.90" 1.1~exp1 - (c++)"pkgAcquire::Item::Custom600Headers[abi:cxx11]() const@APTPKG_5.90" 1.1~exp1 - (c++)"pkgAcquire::Item::IsTrusted() const@APTPKG_5.90" 1.1~exp1 - (c++)"typeinfo for Hashes@APTPKG_5.90" 1.1~exp1 - (c++)"typeinfo name for Hashes@APTPKG_5.90" 1.1~exp1 - (c++)"vtable for Hashes@APTPKG_5.90" 1.1~exp1 + (c++)"Hashes::GetHashStringList()@APTPKG_6.0" 1.1~exp1 + (c++)"Hashes::Hashes()@APTPKG_6.0" 1.1~exp1 + (c++)"Hashes::~Hashes()@APTPKG_6.0" 1.1~exp1 + (c++)"HashStringList::find(char const*) const@APTPKG_6.0" 1.1~exp1 + (c++)"HashStringList::operator==(HashStringList const&) const@APTPKG_6.0" 1.1~exp1 + (c++)"HashStringList::operator!=(HashStringList const&) const@APTPKG_6.0" 1.1~exp1 + (c++)"HashStringList::push_back(HashString const&)@APTPKG_6.0" 1.1~exp1 + (c++)"HashStringList::supported(char const*)@APTPKG_6.0" 1.1~exp1 + (c++)"HashStringList::usable() const@APTPKG_6.0" 1.1~exp1 + (c++)"HashStringList::VerifyFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@APTPKG_6.0" 1.1~exp1 + (c++)"HashString::operator==(HashString const&) const@APTPKG_6.0" 1.1~exp1 + (c++)"HashString::operator!=(HashString const&) const@APTPKG_6.0" 1.1~exp1 + (c++)"pkgAcqArchive::IsTrusted() const@APTPKG_6.0" 1.1~exp1 + (c++)"pkgAcqFile::Custom600Headers[abi:cxx11]() const@APTPKG_6.0" 1.1~exp1 + (c++)"pkgAcqMethod::DropPrivsOrDie()@APTPKG_6.0" 1.1~exp1 + (c++)"pkgAcquire::Item::Custom600Headers[abi:cxx11]() const@APTPKG_6.0" 1.1~exp1 + (c++)"pkgAcquire::Item::IsTrusted() const@APTPKG_6.0" 1.1~exp1 + (c++)"typeinfo for Hashes@APTPKG_6.0" 1.1~exp1 + (c++)"typeinfo name for Hashes@APTPKG_6.0" 1.1~exp1 + (c++)"vtable for Hashes@APTPKG_6.0" 1.1~exp1 ### more transactional update - (c++)"pkgAcquire::GetLock(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp4 - (c++)"pkgAcquire::Item::Dequeue()@APTPKG_5.90" 1.1~exp4 - (c++)"pkgAcquire::Item::QueueURI(pkgAcquire::ItemDesc&)@APTPKG_5.90" 1.1~exp4 - (c++)"pkgAcquire::Item::SetActiveSubprocess(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp4 - (c++)"pkgDepCache::MarkAndSweep()@APTPKG_5.90" 1.1~exp4 - (c++)"pkgDepCache::MarkAndSweep(pkgDepCache::InRootSetFunc&)@APTPKG_5.90" 1.1~exp4 + (c++)"pkgAcquire::GetLock(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp4 + (c++)"pkgAcquire::Item::Dequeue()@APTPKG_6.0" 1.1~exp4 + (c++)"pkgAcquire::Item::QueueURI(pkgAcquire::ItemDesc&)@APTPKG_6.0" 1.1~exp4 + (c++)"pkgAcquire::Item::SetActiveSubprocess(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp4 + (c++)"pkgDepCache::MarkAndSweep()@APTPKG_6.0" 1.1~exp4 + (c++)"pkgDepCache::MarkAndSweep(pkgDepCache::InRootSetFunc&)@APTPKG_6.0" 1.1~exp4 ### mixed stuff - (c++)"GetListOfFilesInDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@APTPKG_5.90" 0.8.16~exp13 - (c++)"pkgCache::DepIterator::IsIgnorable(pkgCache::PkgIterator const&) const@APTPKG_5.90" 0.8.16~exp10 - (c++)"pkgCache::DepIterator::IsIgnorable(pkgCache::PrvIterator const&) const@APTPKG_5.90" 0.8.16~exp10 - (c++)"FileFd::Write(int, void const*, unsigned long long)@APTPKG_5.90" 0.8.16~exp14 - (c++)"_strrstrip(char*)@APTPKG_5.90" 0.9.7.9~exp2 - (c++)"SplitClearSignedFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, FileFd*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*, FileFd*)@APTPKG_5.90" 0.9.7.9~exp2 - (c++)"OpenMaybeClearSignedFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, FileFd&)@APTPKG_5.90" 0.9.7.9~exp2 - (c++)"Configuration::Dump(std::basic_ostream<char, std::char_traits<char> >&, char const*, char const*, bool)@APTPKG_5.90" 0.9.3 - (c++)"AcquireUpdate(pkgAcquire&, int, bool, bool)@APTPKG_5.90" 0.9.3 - (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::PackageArchitectureMatchesSpecification(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@APTPKG_5.90" 0.9.7 - (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::~PackageArchitectureMatchesSpecification()@APTPKG_5.90" 0.9.7 - (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::operator()(pkgCache::PkgIterator const&)@APTPKG_5.90" 0.9.7 - (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::operator()(char const* const&)@APTPKG_5.90" 0.9.7 - (c++)"APT::Configuration::checkLanguage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@APTPKG_5.90" 0.9.7.5 - (c++)"pkgCdrom::DropTranslation(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@APTPKG_5.90" 0.9.7.5 - (c++)"pkgCache::DepIterator::IsSatisfied(pkgCache::PrvIterator const&) const@APTPKG_5.90" 0.9.8 - (c++)"pkgCache::DepIterator::IsSatisfied(pkgCache::VerIterator const&) const@APTPKG_5.90" 0.9.8 - (c++)"pkgDepCache::IsDeleteOkProtectInstallRequests(pkgCache::PkgIterator const&, bool, unsigned long, bool)@APTPKG_5.90" 0.9.9.1 - (c++)"pkgDepCache::IsInstallOkMultiArchSameVersionSynced(pkgCache::PkgIterator const&, bool, unsigned long, bool)@APTPKG_5.90" 0.9.9.1 - (c++)"pkgDPkgPM::SendPkgsInfo(_IO_FILE*, unsigned int const&)@APTPKG_5.90" 0.9.9.1 - (c++)"pkgCache::VerIterator::MultiArchType() const@APTPKG_5.90" 0.9.9.1 - (c++)"AutoDetectProxy(URI&)@APTPKG_5.90" 0.9.10 - (c++)"CommandLine::GetCommand(CommandLine::Dispatch const*, unsigned int, char const* const*)@APTPKG_5.90" 0.9.11 - (c++)"CommandLine::MakeArgs(char, char const*, char const*, unsigned long)@APTPKG_5.90" 0.9.11 - (c++)"Configuration::Clear()@APTPKG_5.90" 0.9.11 - (c++)"Glob(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)@APTPKG_5.90" 0.9.11 - (c++)"APT::CacheFilter::PackageNameMatchesFnmatch::operator()(pkgCache::GrpIterator const&)@APTPKG_5.90" 0.9.11 - (c++)"APT::CacheFilter::PackageNameMatchesFnmatch::operator()(pkgCache::PkgIterator const&)@APTPKG_5.90" 0.9.11 - (c++)"pkgTagSection::pkgTagSection()@APTPKG_5.90" 0.9.11 - (c++)"strv_length(char const**)@APTPKG_5.90" 0.9.11 - (c++)"StringSplit(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)@APTPKG_5.90" 0.9.11.3 - (c++)"pkgAcquire::Item::RenameOnError(pkgAcquire::Item::RenameOnErrorState)@APTPKG_5.90" 0.9.12 - (c++)"APT::String::Endswith(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 0.9.13.1 - (c++)"ExecFork(std::set<int, std::less<int>, std::allocator<int> >)@APTPKG_5.90" 0.9.13.1 - (c++)"MergeKeepFdsFromConfiguration(std::set<int, std::less<int>, std::allocator<int> >&)@APTPKG_5.90" 0.9.13.1 - (c++)"HashString::FromFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.13.1 - (c++)"HashString::GetHashForFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@APTPKG_5.90" 0.9.13.1 - (c++)"GetTempDir[abi:cxx11]()@APTPKG_5.90" 0.9.14.2 - (c++)"APT::Configuration::getBuildProfiles[abi:cxx11]()@APTPKG_5.90" 0.9.16 - (c++)"APT::Configuration::getBuildProfilesString[abi:cxx11]()@APTPKG_5.90" 0.9.16 - (c++)"Rename(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 0.9.16 - (c++)"pkgDepCache::IsInstallOkDependenciesSatisfiableByCandidates(pkgCache::PkgIterator const&, bool, unsigned long, bool)@APTPKG_5.90" 1.0 - (c++)"APT::Progress::PackageManagerFancy::GetTerminalSize()@APTPKG_5.90" 1.0 - (c++)"APT::Progress::PackageManagerFancy::GetTextProgressStr[abi:cxx11](float, int)@APTPKG_5.90" 1.0 - (c++)"EDSP::ExecuteSolver(char const*, int*, int*, bool)@APTPKG_5.90" 1.0.4 - (c++)"pkgPackageManager::EarlyRemove(pkgCache::PkgIterator, pkgCache::DepIterator const*)@APTPKG_5.90" 1.0.4 - (c++)"pkgSrcRecords::Step()@APTPKG_5.90" 1.0.4 - (c++)"pkgDPkgPM::SetupSlavePtyMagic()@APTPKG_5.90" 1.0.8 - (c++)"HashStringList::find(char const*) const@APTPKG_5.90" 1.0.9.4 - (c++)"HashStringList::operator==(HashStringList const&) const@APTPKG_5.90" 1.0.9.4 - (c++)"HashStringList::operator!=(HashStringList const&) const@APTPKG_5.90" 1.0.9.4 - (c++)"HashStringList::push_back(HashString const&)@APTPKG_5.90" 1.0.9.4 - (c++)"HashStringList::supported(char const*)@APTPKG_5.90" 1.0.9.4 - (c++)"HashStringList::VerifyFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@APTPKG_5.90" 1.0.9.4 - (c++)"HashString::operator==(HashString const&) const@APTPKG_5.90" 1.0.9.4 - (c++)"HashString::operator!=(HashString const&) const@APTPKG_5.90" 1.0.9.4 - (c++)"APT::Progress::PackageManager::PackageManager()@APTPKG_5.90" 1.1~exp1 - (c++)"pkgDPkgPM::Go(APT::Progress::PackageManager*)@APTPKG_5.90" 1.1~exp1 - (c++)"pkgPackageManager::DoInstall(APT::Progress::PackageManager*)@APTPKG_5.90" 1.1~exp1 - (c++)"pkgPackageManager::DoInstallPostFork(APT::Progress::PackageManager*)@APTPKG_5.90" 1.1~exp1 - (c++)"pkgTagFile::Init(FileFd*, unsigned long long)@APTPKG_5.90" 1.1~exp1 - (c++)"pkgTagSection::Count() const@APTPKG_5.90" 1.1~exp1 - (c++)"pkgTagSection::Exists(APT::StringView) const@APTPKG_5.90" 1.9~ - (c++)"pkgTagSection::FindB(APT::StringView, bool) const@APTPKG_5.90" 1.9~ - (c++)"pkgTagSection::Scan(char const*, unsigned long, bool)@APTPKG_5.90" 1.1~exp1 - (c++)"StartsWithGPGClearTextSignature(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp1 - (c++)"Popen(char const**, FileFd&, int&, FileFd::OpenMode, bool, bool)@APTPKG_5.90" 1.9.0~ - (c++)"APT::String::Startswith(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp2 - (c++)"APT::Upgrade::Upgrade(pkgDepCache&, int, OpProgress*)@APTPKG_5.90" 1.1~exp4 - (c++)"pkgProblemResolver::Resolve(bool, OpProgress*)@APTPKG_5.90" 1.1~exp4 - (c++)"pkgProblemResolver::ResolveByKeep(OpProgress*)@APTPKG_5.90" 1.1~exp4 - (c++)"DropPrivileges()@APTPKG_5.90" 1.1~exp4 - (c++)"FileFd::FileFd(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned long)@APTPKG_5.90" 1.1~exp4 - (c++)"metaIndex::metaIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgTagSection::Get(char const*&, char const*&, unsigned int) const@APTPKG_5.90" 1.1~exp9 + (c++)"GetListOfFilesInDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@APTPKG_6.0" 0.8.16~exp13 + (c++)"pkgCache::DepIterator::IsIgnorable(pkgCache::PkgIterator const&) const@APTPKG_6.0" 0.8.16~exp10 + (c++)"pkgCache::DepIterator::IsIgnorable(pkgCache::PrvIterator const&) const@APTPKG_6.0" 0.8.16~exp10 + (c++)"FileFd::Write(int, void const*, unsigned long long)@APTPKG_6.0" 0.8.16~exp14 + (c++)"_strrstrip(char*)@APTPKG_6.0" 0.9.7.9~exp2 + (c++)"SplitClearSignedFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, FileFd*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*, FileFd*)@APTPKG_6.0" 0.9.7.9~exp2 + (c++)"OpenMaybeClearSignedFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, FileFd&)@APTPKG_6.0" 0.9.7.9~exp2 + (c++)"Configuration::Dump(std::basic_ostream<char, std::char_traits<char> >&, char const*, char const*, bool)@APTPKG_6.0" 0.9.3 + (c++)"AcquireUpdate(pkgAcquire&, int, bool, bool)@APTPKG_6.0" 0.9.3 + (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::PackageArchitectureMatchesSpecification(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@APTPKG_6.0" 0.9.7 + (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::~PackageArchitectureMatchesSpecification()@APTPKG_6.0" 0.9.7 + (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::operator()(pkgCache::PkgIterator const&)@APTPKG_6.0" 0.9.7 + (c++)"APT::CacheFilter::PackageArchitectureMatchesSpecification::operator()(char const* const&)@APTPKG_6.0" 0.9.7 + (c++)"APT::Configuration::checkLanguage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)@APTPKG_6.0" 0.9.7.5 + (c++)"pkgCdrom::DropTranslation(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)@APTPKG_6.0" 0.9.7.5 + (c++)"pkgCache::DepIterator::IsSatisfied(pkgCache::PrvIterator const&) const@APTPKG_6.0" 0.9.8 + (c++)"pkgCache::DepIterator::IsSatisfied(pkgCache::VerIterator const&) const@APTPKG_6.0" 0.9.8 + (c++)"pkgDepCache::IsDeleteOkProtectInstallRequests(pkgCache::PkgIterator const&, bool, unsigned long, bool)@APTPKG_6.0" 0.9.9.1 + (c++)"pkgDepCache::IsInstallOkMultiArchSameVersionSynced(pkgCache::PkgIterator const&, bool, unsigned long, bool)@APTPKG_6.0" 0.9.9.1 + (c++)"pkgDPkgPM::SendPkgsInfo(_IO_FILE*, unsigned int const&)@APTPKG_6.0" 0.9.9.1 + (c++)"pkgCache::VerIterator::MultiArchType() const@APTPKG_6.0" 0.9.9.1 + (c++)"AutoDetectProxy(URI&)@APTPKG_6.0" 0.9.10 + (c++)"CommandLine::GetCommand(CommandLine::Dispatch const*, unsigned int, char const* const*)@APTPKG_6.0" 0.9.11 + (c++)"CommandLine::MakeArgs(char, char const*, char const*, unsigned long)@APTPKG_6.0" 0.9.11 + (c++)"Configuration::Clear()@APTPKG_6.0" 0.9.11 + (c++)"Glob(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)@APTPKG_6.0" 0.9.11 + (c++)"APT::CacheFilter::PackageNameMatchesFnmatch::operator()(pkgCache::GrpIterator const&)@APTPKG_6.0" 0.9.11 + (c++)"APT::CacheFilter::PackageNameMatchesFnmatch::operator()(pkgCache::PkgIterator const&)@APTPKG_6.0" 0.9.11 + (c++)"pkgTagSection::pkgTagSection()@APTPKG_6.0" 0.9.11 + (c++)"strv_length(char const**)@APTPKG_6.0" 0.9.11 + (c++)"StringSplit(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)@APTPKG_6.0" 0.9.11.3 + (c++)"pkgAcquire::Item::RenameOnError(pkgAcquire::Item::RenameOnErrorState)@APTPKG_6.0" 0.9.12 + (c++)"APT::String::Endswith(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 0.9.13.1 + (c++)"ExecFork(std::set<int, std::less<int>, std::allocator<int> >)@APTPKG_6.0" 0.9.13.1 + (c++)"MergeKeepFdsFromConfiguration(std::set<int, std::less<int>, std::allocator<int> >&)@APTPKG_6.0" 0.9.13.1 + (c++)"HashString::FromFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.13.1 + (c++)"HashString::GetHashForFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@APTPKG_6.0" 0.9.13.1 + (c++)"GetTempDir[abi:cxx11]()@APTPKG_6.0" 0.9.14.2 + (c++)"APT::Configuration::getBuildProfiles[abi:cxx11]()@APTPKG_6.0" 0.9.16 + (c++)"APT::Configuration::getBuildProfilesString[abi:cxx11]()@APTPKG_6.0" 0.9.16 + (c++)"Rename(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 0.9.16 + (c++)"pkgDepCache::IsInstallOkDependenciesSatisfiableByCandidates(pkgCache::PkgIterator const&, bool, unsigned long, bool)@APTPKG_6.0" 1.0 + (c++)"APT::Progress::PackageManagerFancy::GetTerminalSize()@APTPKG_6.0" 1.0 + (c++)"APT::Progress::PackageManagerFancy::GetTextProgressStr[abi:cxx11](float, int)@APTPKG_6.0" 1.0 + (c++)"EDSP::ExecuteSolver(char const*, int*, int*, bool)@APTPKG_6.0" 1.0.4 + (c++)"pkgPackageManager::EarlyRemove(pkgCache::PkgIterator, pkgCache::DepIterator const*)@APTPKG_6.0" 1.0.4 + (c++)"pkgSrcRecords::Step()@APTPKG_6.0" 1.0.4 + (c++)"pkgDPkgPM::SetupSlavePtyMagic()@APTPKG_6.0" 1.0.8 + (c++)"HashStringList::find(char const*) const@APTPKG_6.0" 1.0.9.4 + (c++)"HashStringList::operator==(HashStringList const&) const@APTPKG_6.0" 1.0.9.4 + (c++)"HashStringList::operator!=(HashStringList const&) const@APTPKG_6.0" 1.0.9.4 + (c++)"HashStringList::push_back(HashString const&)@APTPKG_6.0" 1.0.9.4 + (c++)"HashStringList::supported(char const*)@APTPKG_6.0" 1.0.9.4 + (c++)"HashStringList::VerifyFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@APTPKG_6.0" 1.0.9.4 + (c++)"HashString::operator==(HashString const&) const@APTPKG_6.0" 1.0.9.4 + (c++)"HashString::operator!=(HashString const&) const@APTPKG_6.0" 1.0.9.4 + (c++)"APT::Progress::PackageManager::PackageManager()@APTPKG_6.0" 1.1~exp1 + (c++)"pkgDPkgPM::Go(APT::Progress::PackageManager*)@APTPKG_6.0" 1.1~exp1 + (c++)"pkgPackageManager::DoInstall(APT::Progress::PackageManager*)@APTPKG_6.0" 1.1~exp1 + (c++)"pkgPackageManager::DoInstallPostFork(APT::Progress::PackageManager*)@APTPKG_6.0" 1.1~exp1 + (c++)"pkgTagFile::Init(FileFd*, unsigned long long)@APTPKG_6.0" 1.1~exp1 + (c++)"pkgTagSection::Count() const@APTPKG_6.0" 1.1~exp1 + (c++)"pkgTagSection::Exists(APT::StringView) const@APTPKG_6.0" 1.9~ + (c++)"pkgTagSection::FindB(APT::StringView, bool) const@APTPKG_6.0" 1.9~ + (c++)"pkgTagSection::Scan(char const*, unsigned long, bool)@APTPKG_6.0" 1.1~exp1 + (c++)"StartsWithGPGClearTextSignature(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp1 + (c++)"Popen(char const**, FileFd&, int&, FileFd::OpenMode, bool, bool)@APTPKG_6.0" 1.9.0~ + (c++)"APT::String::Startswith(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp2 + (c++)"APT::Upgrade::Upgrade(pkgDepCache&, int, OpProgress*)@APTPKG_6.0" 1.1~exp4 + (c++)"pkgProblemResolver::Resolve(bool, OpProgress*)@APTPKG_6.0" 1.1~exp4 + (c++)"pkgProblemResolver::ResolveByKeep(OpProgress*)@APTPKG_6.0" 1.1~exp4 + (c++)"DropPrivileges()@APTPKG_6.0" 1.1~exp4 + (c++)"FileFd::FileFd(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, unsigned long)@APTPKG_6.0" 1.1~exp4 + (c++)"metaIndex::metaIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgTagSection::Get(char const*&, char const*&, unsigned int) const@APTPKG_6.0" 1.1~exp9 ### ABI 5 changed so much (+ abicxx11 transition) - (c++)"APT::CacheSetHelper::CacheSetHelper(bool, GlobalError::MsgType)@APTPKG_5.90" 1.1~exp9 - (c++)"APT::Configuration::getArchitectures[abi:cxx11](bool const&)@APTPKG_5.90" 1.1~exp9 - (c++)"APT::Configuration::getCompressionTypes[abi:cxx11](bool const&)@APTPKG_5.90" 1.1~exp9 - (c++)"APT::Configuration::getLanguages[abi:cxx11](bool const&, bool const&, char const**)@APTPKG_5.90" 1.1~exp9 - (c++)"APT::PackageContainerInterface::operator=(APT::PackageContainerInterface const&)@APTPKG_5.90" 1.1~exp9 - (c++)"APT::PackageContainerInterface::PackageContainerInterface(APT::CacheSetHelper::PkgSelector)@APTPKG_5.90" 1.1~exp9 - (c++)"APT::PackageContainerInterface::~PackageContainerInterface()@APTPKG_5.90" 1.1~exp9 - (c++)"APT::PackageContainerInterface::PackageContainerInterface()@APTPKG_5.90" 1.1~exp9 - (c++)"APT::PackageUniverse::~PackageUniverse()@APTPKG_5.90" 1.1~exp9 - (c++)"APT::PackageUniverse::PackageUniverse(pkgCache*)@APTPKG_5.90" 1.1~exp9 - (c++)"APT::PackageUniverse::PackageUniverse(pkgCacheFile*)@APTPKG_5.90" 1.1~exp9 - (c++)"APT::Progress::PackageManagerText::PackageManagerText()@APTPKG_5.90" 1.1~exp9 - (c++)"APT::VersionContainerInterface::FromDependency(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::DepIterator const&, APT::CacheSetHelper::VerSelector, APT::CacheSetHelper&)@APTPKG_5.90" 1.1~exp9 - (c++)"APT::VersionContainerInterface::operator=(APT::VersionContainerInterface const&)@APTPKG_5.90" 1.1~exp9 - (c++)"APT::VersionContainerInterface::~VersionContainerInterface()@APTPKG_5.90" 1.1~exp9 - (c++)"APT::VersionContainerInterface::VersionContainerInterface()@APTPKG_5.90" 1.1~exp9 - (c++)"CommandLine::CommandLine()@APTPKG_5.90" 1.1~exp9 - (c++)"Configuration::FindVector(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) const@APTPKG_5.90" 1.1~exp9 - (c++)"debDebianSourceDirIndex::GetType() const@APTPKG_5.90" 1.1~exp9 - (c++)"debDebPkgFileIndex::~debDebPkgFileIndex()@APTPKG_5.90" 1.1~exp9 - (c++)"debDebPkgFileIndex::debDebPkgFileIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"debDebPkgFileIndex::FindInCache(pkgCache&) const@APTPKG_5.90" 1.1~exp9 - (c++)"debDebPkgFileIndex::GetArchitecture[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"debDebPkgFileIndex::GetComponent[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"debDebPkgFileIndex::GetContent(std::basic_ostream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"debDebPkgFileIndex::GetIndexFlags() const@APTPKG_5.90" 1.1~exp9 - (c++)"debDebPkgFileIndex::GetType() const@APTPKG_5.90" 1.1~exp9 - (c++)"debDebPkgFileIndex::OpenListFile(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"debDscFileIndex::CreateSrcParser() const@APTPKG_5.90" 1.1~exp9 - (c++)"debDscFileIndex::~debDscFileIndex()@APTPKG_5.90" 1.1~exp9 - (c++)"debDscFileIndex::debDscFileIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"debDscFileIndex::GetType() const@APTPKG_5.90" 1.1~exp9 - (c++)"debPackagesIndex::ArchiveInfo[abi:cxx11](pkgCache::VerIterator const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"debPackagesIndex::~debPackagesIndex()@APTPKG_5.90" 1.1~exp9 - (c++)"debPackagesIndex::debPackagesIndex(IndexTarget const&, bool)@APTPKG_5.90" 1.1~exp9 - (c++)"debPackagesIndex::GetIndexFlags() const@APTPKG_5.90" 1.1~exp9 - (c++)"debPackagesIndex::GetType() const@APTPKG_5.90" 1.1~exp9 - (c++)"debSourcesIndex::CreateSrcParser() const@APTPKG_5.90" 1.1~exp9 - (c++)"debSourcesIndex::~debSourcesIndex()@APTPKG_5.90" 1.1~exp9 - (c++)"debSourcesIndex::debSourcesIndex(IndexTarget const&, bool)@APTPKG_5.90" 1.1~exp9 - (c++)"debSourcesIndex::GetIndexFlags() const@APTPKG_5.90" 1.1~exp9 - (c++)"debSourcesIndex::GetType() const@APTPKG_5.90" 1.1~exp9 - (c++)"debSourcesIndex::OpenListFile(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"debSourcesIndex::SourceInfo[abi:cxx11](pkgSrcRecords::Parser const&, pkgSrcRecords::File const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"debStatusIndex::~debStatusIndex()@APTPKG_5.90" 1.1~exp9 - (c++)"debStatusIndex::debStatusIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"debStatusIndex::GetArchitecture[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"debStatusIndex::GetComponent[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"debStatusIndex::GetIndexFlags() const@APTPKG_5.90" 1.1~exp9 - (c++)"debStatusIndex::GetType() const@APTPKG_5.90" 1.1~exp9 - (c++)"debTranslationsIndex::~debTranslationsIndex()@APTPKG_5.90" 1.1~exp9 - (c++)"debTranslationsIndex::debTranslationsIndex(IndexTarget const&)@APTPKG_5.90" 1.1~exp9 - (c++)"debTranslationsIndex::GetArchitecture[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"debTranslationsIndex::GetIndexFlags() const@APTPKG_5.90" 1.1~exp9 - (c++)"debTranslationsIndex::GetType() const@APTPKG_5.90" 1.1~exp9 - (c++)"debTranslationsIndex::HasPackages() const@APTPKG_5.90" 1.1~exp9 - (c++)"debTranslationsIndex::OpenListFile(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"ExecGPGV(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int const&, int*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"FileFd::FileFd()@APTPKG_5.90" 1.1~exp9 - (c++)"FileFd::FileFd(int, bool)@APTPKG_5.90" 1.1~exp9 - (c++)"FileFd::FileFd(int, unsigned int, FileFd::CompressMode)@APTPKG_5.90" 1.1~exp9 - (c++)"FileFd::FileFd(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, FileFd::CompressMode, unsigned long)@APTPKG_5.90" 1.1~exp9 - (c++)"GetTempFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, FileFd*)@APTPKG_5.90" 1.1~exp9 - (c++)"Hashes::AddFD(FileFd&, unsigned long long)@APTPKG_5.90" 1.1~exp9 - (c++)"Hashes::AddFD(int, unsigned long long)@APTPKG_5.90" 1.1~exp9 - (c++)"Hashes::Add(unsigned char const*, unsigned long long)@APTPKG_5.90" 1.1~exp9 - (c++)"Hashes::Hashes(HashStringList const&)@APTPKG_5.90" 1.1~exp9 - (c++)"Hashes::Hashes(unsigned int)@APTPKG_5.90" 1.1~exp9 - (c++)"HashStringList::FileSize() const@APTPKG_5.90" 1.1~exp9 - (c++)"HashStringList::FileSize(unsigned long long)@APTPKG_5.90" 1.1~exp9 - (c++)"IndexCopy::IndexCopy()@APTPKG_5.90" 1.1~exp9 - (c++)"IndexTarget::Format(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@APTPKG_5.90" 1.1~exp9 - (c++)"IndexTarget::IndexTarget(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, bool, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"IndexTarget::Option[abi:cxx11](IndexTarget::OptionKeys) const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::CheckDist(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::Describe[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::Exists(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::FindInCache(pkgCache&, bool) const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::GetCodename[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::GetDate() const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::GetExpectedDist[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::GetLoadedSuccessfully() const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::GetSignedBy[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::GetSuite[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::GetSupportsAcquireByHash() const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::GetTrusted() const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::GetValidUntil() const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::Lookup(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::MetaKeys[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"metaIndex::swapLoad(metaIndex*)@APTPKG_5.90" 1.1~exp9 - (c++)"PackageCopy::PackageCopy()@APTPKG_5.90" 1.1~exp9 - (c++)"PackageCopy::RewriteEntry(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqArchive::DescURI[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqArchive::Done(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashStringList const&, pkgAcquire::MethodConfig const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqArchive::Failed(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgAcquire::MethodConfig const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqArchive::GetExpectedHashes() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqArchive::GetFinalFilename[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqArchive::HashesRequired() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqArchive::ShortDesc[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqChangelog::Done(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashStringList const&, pkgAcquire::MethodConfig const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqChangelog::Failed(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgAcquire::MethodConfig const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqChangelog::~pkgAcqChangelog()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqChangelog::pkgAcqChangelog(pkgAcquire*, pkgCache::RlsFileIterator const&, char const*, char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqChangelog::pkgAcqChangelog(pkgAcquire*, pkgCache::VerIterator const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqChangelog::pkgAcqChangelog(pkgAcquire*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqChangelog::URI[abi:cxx11](pkgCache::RlsFileIterator const&, char const*, char const*, char const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqChangelog::URI[abi:cxx11](pkgCache::VerIterator const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqChangelog::URI(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, char const*, char const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqChangelog::URITemplate[abi:cxx11](pkgCache::RlsFileIterator const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqFile::Done(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashStringList const&, pkgAcquire::MethodConfig const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqFile::Failed(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgAcquire::MethodConfig const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqFile::GetExpectedHashes() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqFile::HashesRequired() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqFile::pkgAcqFile(pkgAcquire*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashStringList const&, unsigned long long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqMethod::FetchItem::FetchItem()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqMethod::FetchItem::~FetchItem()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcqMethod::FetchResult::~FetchResult()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Item::Done(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashStringList const&, pkgAcquire::MethodConfig const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Item::Failed(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgAcquire::MethodConfig const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Item::GetFinalFilename[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Item::GetItemDesc()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Item::GetOwner() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Item::HashSum[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Item::Item(pkgAcquire*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Item::Rename(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Item::ShortDesc[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Item::Start(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long long)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Item::VerifyDone(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgAcquire::MethodConfig const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Queue::QItem::Custom600Headers[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Queue::QItem::GetExpectedHashes() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Queue::QItem::GetMaximumSize() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Queue::QItem::SyncDestinationFiles() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::Queue::Queue(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgAcquire*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgAcquire::UriIterator::UriIterator(pkgAcquire::Queue*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgArchiveCleaner::pkgArchiveCleaner()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgCache::DepIterator::IsImplicit() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgCacheFile::pkgCacheFile(pkgDepCache*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgCache::PkgIterator::FullName[abi:cxx11](bool const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgCache::RlsFileIterator::RelStr[abi:cxx11]()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgCdrom::~pkgCdrom()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgCdrom::pkgCdrom()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgCdromStatus::~pkgCdromStatus()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgCdromStatus::pkgCdromStatus()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexFile::FindInCache(pkgCache&) const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexFile::~pkgDebianIndexFile()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexFile::pkgDebianIndexFile(bool)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexRealFile::ArchiveURI(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexRealFile::Describe[abi:cxx11](bool) const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexRealFile::Exists() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexRealFile::GetProgressDescription[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexRealFile::IndexFileName[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexRealFile::OpenListFile(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexRealFile::~pkgDebianIndexRealFile()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexRealFile::pkgDebianIndexRealFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexRealFile::Size() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexTargetFile::ArchiveURI(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexTargetFile::Describe[abi:cxx11](bool) const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexTargetFile::Exists() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexTargetFile::GetArchitecture[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexTargetFile::GetComponent[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexTargetFile::GetProgressDescription[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexTargetFile::IndexFileName[abi:cxx11]() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexTargetFile::OpenListFile(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexTargetFile::~pkgDebianIndexTargetFile()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexTargetFile::pkgDebianIndexTargetFile(IndexTarget const&, bool)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDebianIndexTargetFile::Size() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDepCache::CheckDep(pkgCache::DepIterator const&, int, pkgCache::PkgIterator&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDepCache::DependencyState(pkgCache::DepIterator const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDepCache::Policy::IsImportantDep(pkgCache::DepIterator const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDepCache::UpdateVerState(pkgCache::PkgIterator const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgDepCache::VersionState(pkgCache::DepIterator, unsigned char, unsigned char, unsigned char) const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgIndexFile::ArchiveInfo[abi:cxx11](pkgCache::VerIterator const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgIndexFile::~pkgIndexFile()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgIndexFile::pkgIndexFile(bool)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgIndexFile::SourceInfo[abi:cxx11](pkgSrcRecords::Parser const&, pkgSrcRecords::File const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgRecords::Parser::~Parser()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgRecords::Parser::Parser()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSourceList::AddVolatileFile(pkgIndexFile*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSourceList::GetVolatileFiles() const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSourceList::ReadAppend(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSourceList::ReadSourceDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSourceList::Read(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSourceList::Type::ParseLine(std::vector<metaIndex*, std::allocator<metaIndex*> >&, char const*, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSourceList::Type::ParseStanza(std::vector<metaIndex*, std::allocator<metaIndex*> >&, pkgTagSection&, unsigned int, FileFd&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSourceList::Type::~Type()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSourceList::Type::Type(char const*, char const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSrcRecords::Parser::~Parser()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSrcRecords::Parser::Parser(pkgIndexFile const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSystem::~pkgSystem()@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSystem::pkgSystem(char const*, pkgVersioningSystem*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgTagSection::FindFlag(APT::StringView, unsigned char&, unsigned char) const@APTPKG_5.90" 1.9~ - (c++)"pkgTagSection::FindFlag(unsigned char&, unsigned char, char const*, char const*)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgTagSection::FindRaw(APT::StringView) const@APTPKG_5.90" 1.9~ - (c++)"pkgTagSection::Tag::Remove(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgTagSection::Tag::Rename(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgTagSection::Tag::Rewrite(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgTagSection::Write(FileFd&, char const* const*, std::vector<pkgTagSection::Tag, std::allocator<pkgTagSection::Tag> > const&) const@APTPKG_5.90" 1.1~exp9 - (c++)"pkgVersioningSystem::~pkgVersioningSystem()@APTPKG_5.90" 1.1~exp9 - (c++)"SigVerify::~SigVerify()@APTPKG_5.90" 1.1~exp9 - (c++)"SigVerify::SigVerify()@APTPKG_5.90" 1.1~exp9 - (c++)"SourceCopy::RewriteEntry(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"SourceCopy::SourceCopy()@APTPKG_5.90" 1.1~exp9 - (c++)"TranslationsCopy::~TranslationsCopy()@APTPKG_5.90" 1.1~exp9 - (c++)"TranslationsCopy::TranslationsCopy()@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for APT::PackageUniverse@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for debDebianSourceDirIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for debDebPkgFileIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for debDscFileIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for debPackagesIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for debSourcesIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for debStatusIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for debTranslationsIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgAcqChangelog@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgAcqMethod::FetchItem@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgAcqMethod::FetchResult@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgCdrom@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgCdromStatus@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgDebianIndexFile@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgDebianIndexRealFile@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgDebianIndexTargetFile@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgDepCache::ActionGroup@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgOrderList@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgProblemResolver@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgRecords@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for pkgSourceList@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for SigVerify@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo for TranslationsCopy@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for APT::PackageUniverse@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for debDebianSourceDirIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for debDebPkgFileIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for debDscFileIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for debPackagesIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for debSourcesIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for debStatusIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for debTranslationsIndex@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgAcqChangelog@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgAcqMethod::FetchItem@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgAcqMethod::FetchResult@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgCdrom@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgCdromStatus@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgDebianIndexFile@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgDebianIndexRealFile@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgDebianIndexTargetFile@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgDepCache::ActionGroup@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgOrderList@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgProblemResolver@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgRecords@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for pkgSourceList@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for SigVerify@APTPKG_5.90" 1.1~exp9 - (c++)"typeinfo name for TranslationsCopy@APTPKG_5.90" 1.1~exp9 - (c++)"URI::ArchiveOnly(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for APT::PackageUniverse@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for debDebianSourceDirIndex@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for debDebPkgFileIndex@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for debDscFileIndex@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for debPackagesIndex@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for debSourcesIndex@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for debStatusIndex@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for debTranslationsIndex@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgAcqChangelog@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgAcqMethod::FetchItem@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgAcqMethod::FetchResult@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgCdrom@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgCdromStatus@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgDebianIndexFile@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgDebianIndexRealFile@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgDebianIndexTargetFile@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgDepCache::ActionGroup@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgOrderList@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgProblemResolver@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgRecords@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for pkgSourceList@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for SigVerify@APTPKG_5.90" 1.1~exp9 - (c++)"vtable for TranslationsCopy@APTPKG_5.90" 1.1~exp9 + (c++)"APT::CacheSetHelper::CacheSetHelper(bool, GlobalError::MsgType)@APTPKG_6.0" 1.1~exp9 + (c++)"APT::Configuration::getArchitectures[abi:cxx11](bool const&)@APTPKG_6.0" 1.1~exp9 + (c++)"APT::Configuration::getCompressionTypes[abi:cxx11](bool const&)@APTPKG_6.0" 1.1~exp9 + (c++)"APT::Configuration::getLanguages[abi:cxx11](bool const&, bool const&, char const**)@APTPKG_6.0" 1.1~exp9 + (c++)"APT::PackageContainerInterface::operator=(APT::PackageContainerInterface const&)@APTPKG_6.0" 1.1~exp9 + (c++)"APT::PackageContainerInterface::PackageContainerInterface(APT::CacheSetHelper::PkgSelector)@APTPKG_6.0" 1.1~exp9 + (c++)"APT::PackageContainerInterface::~PackageContainerInterface()@APTPKG_6.0" 1.1~exp9 + (c++)"APT::PackageContainerInterface::PackageContainerInterface()@APTPKG_6.0" 1.1~exp9 + (c++)"APT::PackageUniverse::~PackageUniverse()@APTPKG_6.0" 1.1~exp9 + (c++)"APT::PackageUniverse::PackageUniverse(pkgCache*)@APTPKG_6.0" 1.1~exp9 + (c++)"APT::PackageUniverse::PackageUniverse(pkgCacheFile*)@APTPKG_6.0" 1.1~exp9 + (c++)"APT::Progress::PackageManagerText::PackageManagerText()@APTPKG_6.0" 1.1~exp9 + (c++)"APT::VersionContainerInterface::FromDependency(APT::VersionContainerInterface*, pkgCacheFile&, pkgCache::DepIterator const&, APT::CacheSetHelper::VerSelector, APT::CacheSetHelper&)@APTPKG_6.0" 1.1~exp9 + (c++)"APT::VersionContainerInterface::operator=(APT::VersionContainerInterface const&)@APTPKG_6.0" 1.1~exp9 + (c++)"APT::VersionContainerInterface::~VersionContainerInterface()@APTPKG_6.0" 1.1~exp9 + (c++)"APT::VersionContainerInterface::VersionContainerInterface()@APTPKG_6.0" 1.1~exp9 + (c++)"CommandLine::CommandLine()@APTPKG_6.0" 1.1~exp9 + (c++)"Configuration::FindVector(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) const@APTPKG_6.0" 1.1~exp9 + (c++)"debDebianSourceDirIndex::GetType() const@APTPKG_6.0" 1.1~exp9 + (c++)"debDebPkgFileIndex::~debDebPkgFileIndex()@APTPKG_6.0" 1.1~exp9 + (c++)"debDebPkgFileIndex::debDebPkgFileIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"debDebPkgFileIndex::FindInCache(pkgCache&) const@APTPKG_6.0" 1.1~exp9 + (c++)"debDebPkgFileIndex::GetArchitecture[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"debDebPkgFileIndex::GetComponent[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"debDebPkgFileIndex::GetContent(std::basic_ostream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"debDebPkgFileIndex::GetIndexFlags() const@APTPKG_6.0" 1.1~exp9 + (c++)"debDebPkgFileIndex::GetType() const@APTPKG_6.0" 1.1~exp9 + (c++)"debDebPkgFileIndex::OpenListFile(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"debDscFileIndex::CreateSrcParser() const@APTPKG_6.0" 1.1~exp9 + (c++)"debDscFileIndex::~debDscFileIndex()@APTPKG_6.0" 1.1~exp9 + (c++)"debDscFileIndex::debDscFileIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"debDscFileIndex::GetType() const@APTPKG_6.0" 1.1~exp9 + (c++)"debPackagesIndex::ArchiveInfo[abi:cxx11](pkgCache::VerIterator const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"debPackagesIndex::~debPackagesIndex()@APTPKG_6.0" 1.1~exp9 + (c++)"debPackagesIndex::debPackagesIndex(IndexTarget const&, bool)@APTPKG_6.0" 1.1~exp9 + (c++)"debPackagesIndex::GetIndexFlags() const@APTPKG_6.0" 1.1~exp9 + (c++)"debPackagesIndex::GetType() const@APTPKG_6.0" 1.1~exp9 + (c++)"debSourcesIndex::CreateSrcParser() const@APTPKG_6.0" 1.1~exp9 + (c++)"debSourcesIndex::~debSourcesIndex()@APTPKG_6.0" 1.1~exp9 + (c++)"debSourcesIndex::debSourcesIndex(IndexTarget const&, bool)@APTPKG_6.0" 1.1~exp9 + (c++)"debSourcesIndex::GetIndexFlags() const@APTPKG_6.0" 1.1~exp9 + (c++)"debSourcesIndex::GetType() const@APTPKG_6.0" 1.1~exp9 + (c++)"debSourcesIndex::OpenListFile(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"debSourcesIndex::SourceInfo[abi:cxx11](pkgSrcRecords::Parser const&, pkgSrcRecords::File const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"debStatusIndex::~debStatusIndex()@APTPKG_6.0" 1.1~exp9 + (c++)"debStatusIndex::debStatusIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"debStatusIndex::GetArchitecture[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"debStatusIndex::GetComponent[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"debStatusIndex::GetIndexFlags() const@APTPKG_6.0" 1.1~exp9 + (c++)"debStatusIndex::GetType() const@APTPKG_6.0" 1.1~exp9 + (c++)"debTranslationsIndex::~debTranslationsIndex()@APTPKG_6.0" 1.1~exp9 + (c++)"debTranslationsIndex::debTranslationsIndex(IndexTarget const&)@APTPKG_6.0" 1.1~exp9 + (c++)"debTranslationsIndex::GetArchitecture[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"debTranslationsIndex::GetIndexFlags() const@APTPKG_6.0" 1.1~exp9 + (c++)"debTranslationsIndex::GetType() const@APTPKG_6.0" 1.1~exp9 + (c++)"debTranslationsIndex::HasPackages() const@APTPKG_6.0" 1.1~exp9 + (c++)"debTranslationsIndex::OpenListFile(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"ExecGPGV(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int const&, int*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"FileFd::FileFd()@APTPKG_6.0" 1.1~exp9 + (c++)"FileFd::FileFd(int, bool)@APTPKG_6.0" 1.1~exp9 + (c++)"FileFd::FileFd(int, unsigned int, FileFd::CompressMode)@APTPKG_6.0" 1.1~exp9 + (c++)"FileFd::FileFd(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int, FileFd::CompressMode, unsigned long)@APTPKG_6.0" 1.1~exp9 + (c++)"GetTempFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, FileFd*)@APTPKG_6.0" 1.1~exp9 + (c++)"Hashes::AddFD(FileFd&, unsigned long long)@APTPKG_6.0" 1.1~exp9 + (c++)"Hashes::AddFD(int, unsigned long long)@APTPKG_6.0" 1.1~exp9 + (c++)"Hashes::Add(unsigned char const*, unsigned long long)@APTPKG_6.0" 1.1~exp9 + (c++)"Hashes::Hashes(HashStringList const&)@APTPKG_6.0" 1.1~exp9 + (c++)"Hashes::Hashes(unsigned int)@APTPKG_6.0" 1.1~exp9 + (c++)"HashStringList::FileSize() const@APTPKG_6.0" 1.1~exp9 + (c++)"HashStringList::FileSize(unsigned long long)@APTPKG_6.0" 1.1~exp9 + (c++)"IndexCopy::IndexCopy()@APTPKG_6.0" 1.1~exp9 + (c++)"IndexTarget::Format(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const@APTPKG_6.0" 1.1~exp9 + (c++)"IndexTarget::IndexTarget(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, bool, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"IndexTarget::Option[abi:cxx11](IndexTarget::OptionKeys) const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::CheckDist(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::Describe[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::Exists(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::FindInCache(pkgCache&, bool) const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::GetCodename[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::GetDate() const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::GetExpectedDist[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::GetLoadedSuccessfully() const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::GetSignedBy[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::GetSuite[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::GetSupportsAcquireByHash() const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::GetTrusted() const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::GetValidUntil() const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::Lookup(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::MetaKeys[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"metaIndex::swapLoad(metaIndex*)@APTPKG_6.0" 1.1~exp9 + (c++)"PackageCopy::PackageCopy()@APTPKG_6.0" 1.1~exp9 + (c++)"PackageCopy::RewriteEntry(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqArchive::DescURI[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqArchive::Done(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashStringList const&, pkgAcquire::MethodConfig const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqArchive::Failed(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgAcquire::MethodConfig const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqArchive::GetExpectedHashes() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqArchive::GetFinalFilename[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqArchive::HashesRequired() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqArchive::ShortDesc[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqChangelog::Done(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashStringList const&, pkgAcquire::MethodConfig const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqChangelog::Failed(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgAcquire::MethodConfig const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqChangelog::~pkgAcqChangelog()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqChangelog::pkgAcqChangelog(pkgAcquire*, pkgCache::RlsFileIterator const&, char const*, char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqChangelog::pkgAcqChangelog(pkgAcquire*, pkgCache::VerIterator const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqChangelog::pkgAcqChangelog(pkgAcquire*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqChangelog::URI[abi:cxx11](pkgCache::RlsFileIterator const&, char const*, char const*, char const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqChangelog::URI[abi:cxx11](pkgCache::VerIterator const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqChangelog::URI(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, char const*, char const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqChangelog::URITemplate[abi:cxx11](pkgCache::RlsFileIterator const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqFile::Done(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashStringList const&, pkgAcquire::MethodConfig const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqFile::Failed(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgAcquire::MethodConfig const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqFile::GetExpectedHashes() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqFile::HashesRequired() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqFile::pkgAcqFile(pkgAcquire*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashStringList const&, unsigned long long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqMethod::FetchItem::FetchItem()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqMethod::FetchItem::~FetchItem()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcqMethod::FetchResult::~FetchResult()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Item::Done(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, HashStringList const&, pkgAcquire::MethodConfig const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Item::Failed(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgAcquire::MethodConfig const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Item::GetFinalFilename[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Item::GetItemDesc()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Item::GetOwner() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Item::HashSum[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Item::Item(pkgAcquire*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Item::Rename(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Item::ShortDesc[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Item::Start(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long long)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Item::VerifyDone(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgAcquire::MethodConfig const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Queue::QItem::Custom600Headers[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Queue::QItem::GetExpectedHashes() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Queue::QItem::GetMaximumSize() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Queue::QItem::SyncDestinationFiles() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::Queue::Queue(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pkgAcquire*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgAcquire::UriIterator::UriIterator(pkgAcquire::Queue*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgArchiveCleaner::pkgArchiveCleaner()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgCache::DepIterator::IsImplicit() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgCacheFile::pkgCacheFile(pkgDepCache*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgCache::PkgIterator::FullName[abi:cxx11](bool const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgCache::RlsFileIterator::RelStr[abi:cxx11]()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgCdrom::~pkgCdrom()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgCdrom::pkgCdrom()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgCdromStatus::~pkgCdromStatus()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgCdromStatus::pkgCdromStatus()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexFile::FindInCache(pkgCache&) const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexFile::~pkgDebianIndexFile()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexFile::pkgDebianIndexFile(bool)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexRealFile::ArchiveURI(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexRealFile::Describe[abi:cxx11](bool) const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexRealFile::Exists() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexRealFile::GetProgressDescription[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexRealFile::IndexFileName[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexRealFile::OpenListFile(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexRealFile::~pkgDebianIndexRealFile()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexRealFile::pkgDebianIndexRealFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexRealFile::Size() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexTargetFile::ArchiveURI(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexTargetFile::Describe[abi:cxx11](bool) const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexTargetFile::Exists() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexTargetFile::GetArchitecture[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexTargetFile::GetComponent[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexTargetFile::GetProgressDescription[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexTargetFile::IndexFileName[abi:cxx11]() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexTargetFile::OpenListFile(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexTargetFile::~pkgDebianIndexTargetFile()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexTargetFile::pkgDebianIndexTargetFile(IndexTarget const&, bool)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDebianIndexTargetFile::Size() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDepCache::CheckDep(pkgCache::DepIterator const&, int, pkgCache::PkgIterator&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDepCache::DependencyState(pkgCache::DepIterator const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDepCache::Policy::IsImportantDep(pkgCache::DepIterator const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDepCache::UpdateVerState(pkgCache::PkgIterator const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgDepCache::VersionState(pkgCache::DepIterator, unsigned char, unsigned char, unsigned char) const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgIndexFile::ArchiveInfo[abi:cxx11](pkgCache::VerIterator const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgIndexFile::~pkgIndexFile()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgIndexFile::pkgIndexFile(bool)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgIndexFile::SourceInfo[abi:cxx11](pkgSrcRecords::Parser const&, pkgSrcRecords::File const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgRecords::Parser::~Parser()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgRecords::Parser::Parser()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSourceList::AddVolatileFile(pkgIndexFile*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSourceList::GetVolatileFiles() const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSourceList::ReadAppend(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSourceList::ReadSourceDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSourceList::Read(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSourceList::Type::ParseLine(std::vector<metaIndex*, std::allocator<metaIndex*> >&, char const*, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSourceList::Type::ParseStanza(std::vector<metaIndex*, std::allocator<metaIndex*> >&, pkgTagSection&, unsigned int, FileFd&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSourceList::Type::~Type()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSourceList::Type::Type(char const*, char const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSrcRecords::Parser::~Parser()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSrcRecords::Parser::Parser(pkgIndexFile const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSystem::~pkgSystem()@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSystem::pkgSystem(char const*, pkgVersioningSystem*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgTagSection::FindFlag(APT::StringView, unsigned char&, unsigned char) const@APTPKG_6.0" 1.9~ + (c++)"pkgTagSection::FindFlag(unsigned char&, unsigned char, char const*, char const*)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgTagSection::FindRaw(APT::StringView) const@APTPKG_6.0" 1.9~ + (c++)"pkgTagSection::Tag::Remove(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgTagSection::Tag::Rename(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgTagSection::Tag::Rewrite(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgTagSection::Write(FileFd&, char const* const*, std::vector<pkgTagSection::Tag, std::allocator<pkgTagSection::Tag> > const&) const@APTPKG_6.0" 1.1~exp9 + (c++)"pkgVersioningSystem::~pkgVersioningSystem()@APTPKG_6.0" 1.1~exp9 + (c++)"SigVerify::~SigVerify()@APTPKG_6.0" 1.1~exp9 + (c++)"SigVerify::SigVerify()@APTPKG_6.0" 1.1~exp9 + (c++)"SourceCopy::RewriteEntry(FileFd&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"SourceCopy::SourceCopy()@APTPKG_6.0" 1.1~exp9 + (c++)"TranslationsCopy::~TranslationsCopy()@APTPKG_6.0" 1.1~exp9 + (c++)"TranslationsCopy::TranslationsCopy()@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for APT::PackageUniverse@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for debDebianSourceDirIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for debDebPkgFileIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for debDscFileIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for debPackagesIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for debSourcesIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for debStatusIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for debTranslationsIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgAcqChangelog@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgAcqMethod::FetchItem@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgAcqMethod::FetchResult@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgCdrom@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgCdromStatus@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgDebianIndexFile@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgDebianIndexRealFile@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgDebianIndexTargetFile@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgDepCache::ActionGroup@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgOrderList@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgProblemResolver@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgRecords@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for pkgSourceList@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for SigVerify@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo for TranslationsCopy@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for APT::PackageUniverse@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for debDebianSourceDirIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for debDebPkgFileIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for debDscFileIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for debPackagesIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for debSourcesIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for debStatusIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for debTranslationsIndex@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgAcqChangelog@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgAcqMethod::FetchItem@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgAcqMethod::FetchResult@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgCdrom@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgCdromStatus@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgDebianIndexFile@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgDebianIndexRealFile@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgDebianIndexTargetFile@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgDepCache::ActionGroup@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgOrderList@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgProblemResolver@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgRecords@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for pkgSourceList@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for SigVerify@APTPKG_6.0" 1.1~exp9 + (c++)"typeinfo name for TranslationsCopy@APTPKG_6.0" 1.1~exp9 + (c++)"URI::ArchiveOnly(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for APT::PackageUniverse@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for debDebianSourceDirIndex@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for debDebPkgFileIndex@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for debDscFileIndex@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for debPackagesIndex@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for debSourcesIndex@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for debStatusIndex@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for debTranslationsIndex@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgAcqChangelog@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgAcqMethod::FetchItem@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgAcqMethod::FetchResult@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgCdrom@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgCdromStatus@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgDebianIndexFile@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgDebianIndexRealFile@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgDebianIndexTargetFile@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgDepCache::ActionGroup@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgOrderList@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgProblemResolver@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgRecords@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for pkgSourceList@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for SigVerify@APTPKG_6.0" 1.1~exp9 + (c++)"vtable for TranslationsCopy@APTPKG_6.0" 1.1~exp9 ### dpkg selection state changer & general dpkg interfacing - (c++)"APT::StateChanges::clear()@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::empty() const@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::Error()@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::Hold()@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::Hold(pkgCache::VerIterator const&)@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::Install()@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::Install(pkgCache::VerIterator const&)@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::operator=(APT::StateChanges&&)@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::Purge()@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::Purge(pkgCache::VerIterator const&)@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::Remove()@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::Remove(pkgCache::VerIterator const&)@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::Save(bool)@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::~StateChanges()@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::StateChanges()@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::StateChanges(APT::StateChanges&&)@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::Unhold()@APTPKG_5.90" 1.1~exp15 - (c++)"APT::StateChanges::Unhold(pkgCache::VerIterator const&)@APTPKG_5.90" 1.1~exp15 - (c++)"pkgSystem::ArchitecturesSupported[abi:cxx11]() const@APTPKG_5.90" 1.1~exp15 - (c++)"pkgSystem::MultiArchSupported() const@APTPKG_5.90" 1.1~exp15 - (c++)"metaIndex::IsArchitectureSupported(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_5.90" 1.1~exp15 + (c++)"APT::StateChanges::clear()@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::empty() const@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::Error()@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::Hold()@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::Hold(pkgCache::VerIterator const&)@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::Install()@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::Install(pkgCache::VerIterator const&)@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::operator=(APT::StateChanges&&)@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::Purge()@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::Purge(pkgCache::VerIterator const&)@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::Remove()@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::Remove(pkgCache::VerIterator const&)@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::Save(bool)@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::~StateChanges()@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::StateChanges()@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::StateChanges(APT::StateChanges&&)@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::Unhold()@APTPKG_6.0" 1.1~exp15 + (c++)"APT::StateChanges::Unhold(pkgCache::VerIterator const&)@APTPKG_6.0" 1.1~exp15 + (c++)"pkgSystem::ArchitecturesSupported[abi:cxx11]() const@APTPKG_6.0" 1.1~exp15 + (c++)"pkgSystem::MultiArchSupported() const@APTPKG_6.0" 1.1~exp15 + (c++)"metaIndex::IsArchitectureSupported(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_6.0" 1.1~exp15 ### misc stuff - (c++)"RemoveFile(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp15 - (c++)"pkgOrderList::OrderCompareA(pkgCache::Package*, pkgCache::Package*)@APTPKG_5.90" 1.1~exp15 - (c++)"pkgOrderList::OrderCompareB(pkgCache::Package*, pkgCache::Package*)@APTPKG_5.90" 1.1~exp15 - (c++)"CommandLine::DispatchArg(CommandLine::Dispatch const*, bool)@APTPKG_5.90" 1.1~exp15 - (c++)"Configuration::MoveSubTree(char const*, char const*)@APTPKG_5.90" 1.1~exp15 - (c++)"GetTempDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp15 - (c++)"HashString::usable() const@APTPKG_5.90" 1.1~exp15 - (c++)"IndexTarget::OptionBool(IndexTarget::OptionKeys) const@APTPKG_5.90" 1.1~exp12 - (c++)"pkgDepCache::GetCandidateVersion(pkgCache::PkgIterator const&)@APTPKG_5.90" 1.1~exp15 - (c++)"pkgDepCache::Policy::GetPriority(pkgCache::VerIterator const&, bool)@APTPKG_5.90" 1.1~exp15 - (c++)"pkgPackageManager::CheckRBreaks(pkgCache::PkgIterator const&, pkgCache::DepIterator, char const*)@APTPKG_5.90" 1.1~exp11 - (c++)"pkgPolicy::GetPriority(pkgCache::VerIterator const&, bool)@APTPKG_5.90" 1.1~exp9 - (c++)"pkgSourceList::AddVolatileFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.1~exp15 - (c++)"pkgVersionMatch::VersionMatches(pkgCache::VerIterator)@APTPKG_5.90" 1.1~exp9 - (c++)"GetSrvRecords(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::vector<SrvRec, std::allocator<SrvRec> >&)@APTPKG_5.90" 1.1~exp15 - (c++)"GetSrvRecords(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<SrvRec, std::allocator<SrvRec> >&)@APTPKG_5.90" 1.1~exp15 - (c++)"PopFromSrvRecs(std::vector<SrvRec, std::allocator<SrvRec> >&)@APTPKG_5.90" 1.1~exp15 - (c++)"SrvRec::operator==(SrvRec const&) const@APTPKG_5.90" 1.1~exp15 - (c++)"debDebianSourceDirIndex::GetComponent[abi:cxx11]() const@APTPKG_5.90" 1.1.4 - (c++)"debDscFileIndex::GetArchitecture[abi:cxx11]() const@APTPKG_5.90" 1.1.4 - (c++)"debDscFileIndex::GetComponent[abi:cxx11]() const@APTPKG_5.90" 1.1.4 - (c++)"debDscFileIndex::GetIndexFlags() const@APTPKG_5.90" 1.1.4 - (c++)"FileFd::Flush()@APTPKG_5.90" 1.1.9 - (c++)"isspace_ascii(int)@APTPKG_5.90" 1.1.9 - (c++)"metaIndex::IsArchitectureAllSupportedFor(IndexTarget const&) const@APTPKG_5.90" 1.1.9 - (c++)"pkgTagFile::Init(FileFd*, pkgTagFile::Flags, unsigned long long)@APTPKG_5.90" 1.2~exp1 - (c++)"pkgTagFile::pkgTagFile(FileFd*, pkgTagFile::Flags, unsigned long long)@APTPKG_5.90" 1.2~exp1 + (c++)"RemoveFile(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp15 + (c++)"pkgOrderList::OrderCompareA(pkgCache::Package*, pkgCache::Package*)@APTPKG_6.0" 1.1~exp15 + (c++)"pkgOrderList::OrderCompareB(pkgCache::Package*, pkgCache::Package*)@APTPKG_6.0" 1.1~exp15 + (c++)"CommandLine::DispatchArg(CommandLine::Dispatch const*, bool)@APTPKG_6.0" 1.1~exp15 + (c++)"Configuration::MoveSubTree(char const*, char const*)@APTPKG_6.0" 1.1~exp15 + (c++)"GetTempDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp15 + (c++)"HashString::usable() const@APTPKG_6.0" 1.1~exp15 + (c++)"IndexTarget::OptionBool(IndexTarget::OptionKeys) const@APTPKG_6.0" 1.1~exp12 + (c++)"pkgDepCache::GetCandidateVersion(pkgCache::PkgIterator const&)@APTPKG_6.0" 1.1~exp15 + (c++)"pkgDepCache::Policy::GetPriority(pkgCache::VerIterator const&, bool)@APTPKG_6.0" 1.1~exp15 + (c++)"pkgPackageManager::CheckRBreaks(pkgCache::PkgIterator const&, pkgCache::DepIterator, char const*)@APTPKG_6.0" 1.1~exp11 + (c++)"pkgPolicy::GetPriority(pkgCache::VerIterator const&, bool)@APTPKG_6.0" 1.1~exp9 + (c++)"pkgSourceList::AddVolatileFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.1~exp15 + (c++)"pkgVersionMatch::VersionMatches(pkgCache::VerIterator)@APTPKG_6.0" 1.1~exp9 + (c++)"GetSrvRecords(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::vector<SrvRec, std::allocator<SrvRec> >&)@APTPKG_6.0" 1.1~exp15 + (c++)"GetSrvRecords(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<SrvRec, std::allocator<SrvRec> >&)@APTPKG_6.0" 1.1~exp15 + (c++)"PopFromSrvRecs(std::vector<SrvRec, std::allocator<SrvRec> >&)@APTPKG_6.0" 1.1~exp15 + (c++)"SrvRec::operator==(SrvRec const&) const@APTPKG_6.0" 1.1~exp15 + (c++)"debDebianSourceDirIndex::GetComponent[abi:cxx11]() const@APTPKG_6.0" 1.1.4 + (c++)"debDscFileIndex::GetArchitecture[abi:cxx11]() const@APTPKG_6.0" 1.1.4 + (c++)"debDscFileIndex::GetComponent[abi:cxx11]() const@APTPKG_6.0" 1.1.4 + (c++)"debDscFileIndex::GetIndexFlags() const@APTPKG_6.0" 1.1.4 + (c++)"FileFd::Flush()@APTPKG_6.0" 1.1.9 + (c++)"isspace_ascii(int)@APTPKG_6.0" 1.1.9 + (c++)"metaIndex::IsArchitectureAllSupportedFor(IndexTarget const&) const@APTPKG_6.0" 1.1.9 + (c++)"pkgTagFile::Init(FileFd*, pkgTagFile::Flags, unsigned long long)@APTPKG_6.0" 1.2~exp1 + (c++)"pkgTagFile::pkgTagFile(FileFd*, pkgTagFile::Flags, unsigned long long)@APTPKG_6.0" 1.2~exp1 ### symbol versioning: - APTPKG_5.90@APTPKG_5.90 1.1~exp9 + APTPKG_6.0@APTPKG_6.0 1.1~exp9 ### gcc artifacts - (c++|optional=std)"void std::vector<char const*, std::allocator<char const*> >::emplace_back<char const*>(char const*&&)@APTPKG_5.90" 1.1~exp9 - (c++|optional=std)"void std::vector<pkgCache::GrpIterator*, std::allocator<pkgCache::GrpIterator*> >::emplace_back<pkgCache::GrpIterator*>(pkgCache::GrpIterator*&&)@APTPKG_5.90" 1.1~exp9 - (c++|optional=std)"void std::vector<pkgCache::PkgIterator*, std::allocator<pkgCache::PkgIterator*> >::emplace_back<pkgCache::PkgIterator*>(pkgCache::PkgIterator*&&)@APTPKG_5.90" 1.1~exp9 -# (c++|optional=std)"void std::vector<pkgCache::RlsFileIterator*, std::allocator<pkgCache::RlsFileIterator*> >::emplace_back<pkgCache::RlsFileIterator*>(pkgCache::RlsFileIterator*&&)@APTPKG_5.90" 1.1~exp9 - (c++|optional=std)"void std::vector<pkgCache::VerIterator*, std::allocator<pkgCache::VerIterator*> >::emplace_back<pkgCache::VerIterator*>(pkgCache::VerIterator*&&)@APTPKG_5.90" 1.1~exp9 - (c++|optional=std)"void std::vector<pkgDPkgPM::Item, std::allocator<pkgDPkgPM::Item> >::emplace_back<pkgDPkgPM::Item>(pkgDPkgPM::Item&&)@APTPKG_5.90" 1.1~exp9 - (c++|optional=std)"void std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> >::emplace_back<pkgIndexFile*>(pkgIndexFile*&&)@APTPKG_5.90" 1.1~exp9 - (c++|optional=std)"void std::vector<pkgTagSection::Tag, std::allocator<pkgTagSection::Tag> >::emplace_back<pkgTagSection::Tag>(pkgTagSection::Tag&&)@APTPKG_5.90" 1.1~exp9 - (c++|optional=std)"void std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::emplace_back<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&)@APTPKG_5.90" 1.1~exp9 - (arch=!x32|c++|optional=std)"void std::vector<long, std::allocator<long> >::emplace_back<long>(long&&)@APTPKG_5.90" 1.1~exp15 - (arch=x32|c++|optional=std)"void std::vector<long long, std::allocator<long long> >::emplace_back<long long>(long long&&)@APTPKG_5.90" 1.1~exp15 - (c++|optional=std)"void std::vector<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> >::emplace_back<pkgCache::VerIterator>(pkgCache::VerIterator&&)@APTPKG_5.90" 1.1~exp15 - (c++|optional=std)"SrvRec* std::__move_merge<__gnu_cxx::__normal_iterator<SrvRec*, std::vector<SrvRec, std::allocator<SrvRec> > >, SrvRec*, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<SrvRec*, std::vector<SrvRec, std::allocator<SrvRec> > >, __gnu_cxx::__normal_iterator<SrvRec*, std::vector<SrvRec, std::allocator<SrvRec> > >, __gnu_cxx::__normal_iterator<SrvRec*, std::vector<SrvRec, std::allocator<SrvRec> > >, __gnu_cxx::__normal_iterator<SrvRec*, std::vector<SrvRec, std::allocator<SrvRec> > >, SrvRec*, __gnu_cxx::__ops::_Iter_less_iter)@APTPKG_5.90" 1.1~exp15 - (c++|optional=std)"void std::vector<std::pair<char*, unsigned long>, std::allocator<std::pair<char*, unsigned long> > >::emplace_back<std::pair<char*, unsigned long> >(std::pair<char*, unsigned long>&&)@APTPKG_5.90" 1.1 - (c++|optional=std)"char const* const* std::__find_if<char const* const*, __gnu_cxx::__ops::_Iter_equals_val<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const> >(char const* const*, char const* const*, __gnu_cxx::__ops::_Iter_equals_val<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const>, std::random_access_iterator_tag)@APTPKG_5.90" 1.3~exp1 + (c++|optional=std)"void std::vector<char const*, std::allocator<char const*> >::emplace_back<char const*>(char const*&&)@APTPKG_6.0" 1.1~exp9 + (c++|optional=std)"void std::vector<pkgCache::GrpIterator*, std::allocator<pkgCache::GrpIterator*> >::emplace_back<pkgCache::GrpIterator*>(pkgCache::GrpIterator*&&)@APTPKG_6.0" 1.1~exp9 + (c++|optional=std)"void std::vector<pkgCache::PkgIterator*, std::allocator<pkgCache::PkgIterator*> >::emplace_back<pkgCache::PkgIterator*>(pkgCache::PkgIterator*&&)@APTPKG_6.0" 1.1~exp9 +# (c++|optional=std)"void std::vector<pkgCache::RlsFileIterator*, std::allocator<pkgCache::RlsFileIterator*> >::emplace_back<pkgCache::RlsFileIterator*>(pkgCache::RlsFileIterator*&&)@APTPKG_6.0" 1.1~exp9 + (c++|optional=std)"void std::vector<pkgCache::VerIterator*, std::allocator<pkgCache::VerIterator*> >::emplace_back<pkgCache::VerIterator*>(pkgCache::VerIterator*&&)@APTPKG_6.0" 1.1~exp9 + (c++|optional=std)"void std::vector<pkgDPkgPM::Item, std::allocator<pkgDPkgPM::Item> >::emplace_back<pkgDPkgPM::Item>(pkgDPkgPM::Item&&)@APTPKG_6.0" 1.1~exp9 + (c++|optional=std)"void std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> >::emplace_back<pkgIndexFile*>(pkgIndexFile*&&)@APTPKG_6.0" 1.1~exp9 + (c++|optional=std)"void std::vector<pkgTagSection::Tag, std::allocator<pkgTagSection::Tag> >::emplace_back<pkgTagSection::Tag>(pkgTagSection::Tag&&)@APTPKG_6.0" 1.1~exp9 + (c++|optional=std)"void std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::emplace_back<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&)@APTPKG_6.0" 1.1~exp9 + (arch=!x32|c++|optional=std)"void std::vector<long, std::allocator<long> >::emplace_back<long>(long&&)@APTPKG_6.0" 1.1~exp15 + (arch=x32|c++|optional=std)"void std::vector<long long, std::allocator<long long> >::emplace_back<long long>(long long&&)@APTPKG_6.0" 1.1~exp15 + (c++|optional=std)"void std::vector<pkgCache::VerIterator, std::allocator<pkgCache::VerIterator> >::emplace_back<pkgCache::VerIterator>(pkgCache::VerIterator&&)@APTPKG_6.0" 1.1~exp15 + (c++|optional=std)"SrvRec* std::__move_merge<__gnu_cxx::__normal_iterator<SrvRec*, std::vector<SrvRec, std::allocator<SrvRec> > >, SrvRec*, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<SrvRec*, std::vector<SrvRec, std::allocator<SrvRec> > >, __gnu_cxx::__normal_iterator<SrvRec*, std::vector<SrvRec, std::allocator<SrvRec> > >, __gnu_cxx::__normal_iterator<SrvRec*, std::vector<SrvRec, std::allocator<SrvRec> > >, __gnu_cxx::__normal_iterator<SrvRec*, std::vector<SrvRec, std::allocator<SrvRec> > >, SrvRec*, __gnu_cxx::__ops::_Iter_less_iter)@APTPKG_6.0" 1.1~exp15 + (c++|optional=std)"void std::vector<std::pair<char*, unsigned long>, std::allocator<std::pair<char*, unsigned long> > >::emplace_back<std::pair<char*, unsigned long> >(std::pair<char*, unsigned long>&&)@APTPKG_6.0" 1.1 + (c++|optional=std)"char const* const* std::__find_if<char const* const*, __gnu_cxx::__ops::_Iter_equals_val<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const> >(char const* const*, char const* const*, __gnu_cxx::__ops::_Iter_equals_val<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const>, std::random_access_iterator_tag)@APTPKG_6.0" 1.3~exp1 ### try to ignore std:: template instances - (c++|regex|optional=std)"^std::vector<.+ >::(vector|push_back|erase|_[^ ]+)\(.+\)( const|)@APTPKG_5.90$" 0.8.0 - (c++|regex|optional=std)"^(void |)std::[^ ]+<.+ >::(_|~).+\(.*\)@APTPKG_5.90$" 0.8.0 - (c++|regex|optional=std)"^std::[^ ]+<.+ >::(append|insert|reserve|operator[^ ]+)\(.*\)@APTPKG_5.90$" 0.8.0 - (c++|regex|optional=std)"^(void |DiffInfo\* |)std::_.*@APTPKG_5.90$" 0.8.0 - (c++|regex|optional=std)"^__gnu_cxx::__[^ ]+<.*@APTPKG_5.90$" 0.8.0 + (c++|regex|optional=std)"^std::vector<.+ >::(vector|push_back|erase|_[^ ]+)\(.+\)( const|)@APTPKG_6.0$" 0.8.0 + (c++|regex|optional=std)"^(void |)std::[^ ]+<.+ >::(_|~).+\(.*\)@APTPKG_6.0$" 0.8.0 + (c++|regex|optional=std)"^std::[^ ]+<.+ >::(append|insert|reserve|operator[^ ]+)\(.*\)@APTPKG_6.0$" 0.8.0 + (c++|regex|optional=std)"^(void |DiffInfo\* |)std::_.*@APTPKG_6.0$" 0.8.0 + (c++|regex|optional=std)"^__gnu_cxx::__[^ ]+<.*@APTPKG_6.0$" 0.8.0 ### - (c++)"debStringPackageIndex::~debStringPackageIndex()@APTPKG_5.90" 1.2.2 - (c++)"debStringPackageIndex::debStringPackageIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.2.2 - (c++)"debStringPackageIndex::GetArchitecture[abi:cxx11]() const@APTPKG_5.90" 1.2.2 - (c++)"debStringPackageIndex::GetComponent[abi:cxx11]() const@APTPKG_5.90" 1.2.2 - (c++)"debStringPackageIndex::GetIndexFlags() const@APTPKG_5.90" 1.2.2 - (c++)"debStringPackageIndex::GetType() const@APTPKG_5.90" 1.2.2 - (c++)"pkgCacheFile::AddIndexFile(pkgIndexFile*)@APTPKG_5.90" 1.2.2 - (c++)"typeinfo for debStringPackageIndex@APTPKG_5.90" 1.2.2 - (c++)"typeinfo name for debStringPackageIndex@APTPKG_5.90" 1.2.2 - (c++)"vtable for debStringPackageIndex@APTPKG_5.90" 1.2.2 - (c++)"operator<<(std::basic_ostream<char, std::char_traits<char> >&, APT::PrettyDep const&)@APTPKG_5.90" 1.3~exp1 - (c++)"operator<<(std::basic_ostream<char, std::char_traits<char> >&, APT::PrettyPkg const&)@APTPKG_5.90" 1.3~exp1 - (c++)"EDSP::ReadRequest(int, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, unsigned int&)@APTPKG_5.90" 1.3~exp2 - (c++)"EDSP::ResolveExternal(char const*, pkgDepCache&, unsigned int, OpProgress*)@APTPKG_5.90" 1.3~exp2 - (c++)"EDSP::WriteError(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, FileFd&)@APTPKG_5.90" 1.3~exp2 - (c++)"EDSP::WriteLimitedScenario(pkgDepCache&, FileFd&, std::vector<bool, std::allocator<bool> > const&, OpProgress*)@APTPKG_5.90" 1.3~exp2 - (c++)"EDSP::WriteProgress(unsigned short, char const*, FileFd&)@APTPKG_5.90" 1.3~exp2 - (c++)"EDSP::WriteRequest(pkgDepCache&, FileFd&, unsigned int, OpProgress*)@APTPKG_5.90" 1.3~exp2 - (c++)"EDSP::WriteScenario(pkgDepCache&, FileFd&, OpProgress*)@APTPKG_5.90" 1.3~exp2 - (c++)"EDSP::WriteSolutionStanza(FileFd&, char const*, pkgCache::VerIterator const&)@APTPKG_5.90" 1.3~exp2 - (c++)"int __gnu_cxx::__stoa<long, int, char, int>(long (*)(char const*, char**, int), char const*, char const*, unsigned long*, int)@APTPKG_5.90" 1.3~exp2 - (c++)"EIPP::ApplyRequest(std::__cxx11::list<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, EIPP::PKG_ACTION>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, EIPP::PKG_ACTION> > >&, pkgDepCache&)@APTPKG_5.90" 1.3~rc2 - (c++)"EIPP::ReadRequest(int, std::__cxx11::list<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, EIPP::PKG_ACTION>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, EIPP::PKG_ACTION> > >&, unsigned int&)@APTPKG_5.90" 1.3~rc2 - (c++)"FileFd::Read(int, void*, unsigned long long, unsigned long long*)@APTPKG_5.90" 1.3~rc2 - (c++)"pkgSourceList::AddVolatileFiles(CommandLine&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*)@APTPKG_5.90" 1.3~rc2 - (c++)"pkgSourceList::AddVolatileFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*)@APTPKG_5.90" 1.3~rc2 - (c++)"TimeRFC1123[abi:cxx11](long, bool)@APTPKG_5.90" 1.3~rc2 - (c++)"unsigned long std::uniform_int_distribution<unsigned long>::operator()<std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul> >(std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>&, std::uniform_int_distribution<unsigned long>::param_type const&)@APTPKG_5.90" 1.3~rc2 - (c++)"void std::shuffle<__gnu_cxx::__normal_iterator<IndexTarget*, std::vector<IndexTarget, std::allocator<IndexTarget> > >, std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>&>(__gnu_cxx::__normal_iterator<IndexTarget*, std::vector<IndexTarget, std::allocator<IndexTarget> > >, __gnu_cxx::__normal_iterator<IndexTarget*, std::vector<IndexTarget, std::allocator<IndexTarget> > >, std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>&)@APTPKG_5.90" 1.3~rc2 - (c++)"void std::vector<pkgDPkgPM::Item, std::allocator<pkgDPkgPM::Item> >::emplace_back<pkgDPkgPM::Item::Ops, pkgCache::PkgIterator>(pkgDPkgPM::Item::Ops&&, pkgCache::PkgIterator&&)@APTPKG_5.90" 1.3~rc2 - (c++)"void std::vector<pkgDPkgPM::Item, std::allocator<pkgDPkgPM::Item> >::emplace_back<pkgDPkgPM::Item::Ops, pkgCache::PkgIterator&>(pkgDPkgPM::Item::Ops&&, pkgCache::PkgIterator&)@APTPKG_5.90" 1.3~rc2 - (c++)"void std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::emplace_back<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.3~rc2 - (c++)"void std::vector<std::pair<pkgDPkgPM::Item*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<pkgDPkgPM::Item*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::emplace_back<pkgDPkgPM::Item*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(pkgDPkgPM::Item*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&)@APTPKG_5.90" 1.3~rc2 - (c++)"AddCRC16Byte(unsigned short, unsigned char)@APTPKG_5.90" 1.4~beta1 - (c++)"APT::String::Join(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.4~beta4 - (c++)"debListParser::ParseDepends(char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int&, bool const&, bool const&, bool const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.4~beta3 - (c++)"debListParser::ParseDepends(char const*, char const*, APT::StringView&, APT::StringView&, unsigned int&, bool, bool, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 1.9.0~ - (c++)"pkgTagHash(char const*, unsigned long)@APTPKG_5.90" 1.4~beta1 - (c++|optional=std)"void std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::emplace_back<char const (&) [4]>(char const (&) [4])@APTPKG_5.90" 1.4~beta4 - (c++)"FileFd::ReadLine(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_5.90" 1.5~beta2~ - (c++)"MaybeAddAuth(FileFd&, URI&)@APTPKG_5.90" 1.5~beta2~ - (c++)"metaIndex::GetDefaultPin() const@APTPKG_5.90" 1.5~beta2~ - (c++)"metaIndex::GetLabel[abi:cxx11]() const@APTPKG_5.90" 1.5~beta2~ - (c++)"metaIndex::GetOrigin[abi:cxx11]() const@APTPKG_5.90" 1.5~beta2~ - (c++)"metaIndex::GetReleaseNotes[abi:cxx11]() const@APTPKG_5.90" 1.5~beta2~ - (c++)"metaIndex::GetVersion[abi:cxx11]() const@APTPKG_5.90" 1.5~beta2~ - (c++)"metaIndex::HasSupportForComponent(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_5.90" 1.5~beta2~ - (c++)"pkgAcquireStatus::ReleaseInfoChanges(metaIndex const*, metaIndex const*, std::vector<pkgAcquireStatus::ReleaseInfoChange, std::allocator<pkgAcquireStatus::ReleaseInfoChange> >&&)@APTPKG_5.90" 1.5~beta2~ - (c++)"RemoveFileAt(char const*, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_5.90" 1.5~beta2~ - (c++|optional=std)"void std::vector<pkgAcquireStatus::ReleaseInfoChange, std::allocator<pkgAcquireStatus::ReleaseInfoChange> >::emplace_back<pkgAcquireStatus::ReleaseInfoChange>(pkgAcquireStatus::ReleaseInfoChange&&)@APTPKG_5.90" 1.5~beta2~ - (c++)"pkgAcqMethod::FetchItem::Proxy[abi:cxx11]()@APTPKG_5.90" 1.6~alpha1~ - (c++)"pkgSystem::IsLocked()@APTPKG_5.90" 1.7.0~alpha3~ - (c++)"pkgSystem::LockInner()@APTPKG_5.90" 1.7.0~alpha3~ - (c++)"pkgSystem::UnLockInner(bool)@APTPKG_5.90" 1.7.0~alpha3~ + (c++)"debStringPackageIndex::~debStringPackageIndex()@APTPKG_6.0" 1.2.2 + (c++)"debStringPackageIndex::debStringPackageIndex(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.2.2 + (c++)"debStringPackageIndex::GetArchitecture[abi:cxx11]() const@APTPKG_6.0" 1.2.2 + (c++)"debStringPackageIndex::GetComponent[abi:cxx11]() const@APTPKG_6.0" 1.2.2 + (c++)"debStringPackageIndex::GetIndexFlags() const@APTPKG_6.0" 1.2.2 + (c++)"debStringPackageIndex::GetType() const@APTPKG_6.0" 1.2.2 + (c++)"pkgCacheFile::AddIndexFile(pkgIndexFile*)@APTPKG_6.0" 1.2.2 + (c++)"typeinfo for debStringPackageIndex@APTPKG_6.0" 1.2.2 + (c++)"typeinfo name for debStringPackageIndex@APTPKG_6.0" 1.2.2 + (c++)"vtable for debStringPackageIndex@APTPKG_6.0" 1.2.2 + (c++)"operator<<(std::basic_ostream<char, std::char_traits<char> >&, APT::PrettyDep const&)@APTPKG_6.0" 1.3~exp1 + (c++)"operator<<(std::basic_ostream<char, std::char_traits<char> >&, APT::PrettyPkg const&)@APTPKG_6.0" 1.3~exp1 + (c++)"EDSP::ReadRequest(int, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, unsigned int&)@APTPKG_6.0" 1.3~exp2 + (c++)"EDSP::ResolveExternal(char const*, pkgDepCache&, unsigned int, OpProgress*)@APTPKG_6.0" 1.3~exp2 + (c++)"EDSP::WriteError(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, FileFd&)@APTPKG_6.0" 1.3~exp2 + (c++)"EDSP::WriteLimitedScenario(pkgDepCache&, FileFd&, std::vector<bool, std::allocator<bool> > const&, OpProgress*)@APTPKG_6.0" 1.3~exp2 + (c++)"EDSP::WriteProgress(unsigned short, char const*, FileFd&)@APTPKG_6.0" 1.3~exp2 + (c++)"EDSP::WriteRequest(pkgDepCache&, FileFd&, unsigned int, OpProgress*)@APTPKG_6.0" 1.3~exp2 + (c++)"EDSP::WriteScenario(pkgDepCache&, FileFd&, OpProgress*)@APTPKG_6.0" 1.3~exp2 + (c++)"EDSP::WriteSolutionStanza(FileFd&, char const*, pkgCache::VerIterator const&)@APTPKG_6.0" 1.3~exp2 + (c++)"int __gnu_cxx::__stoa<long, int, char, int>(long (*)(char const*, char**, int), char const*, char const*, unsigned long*, int)@APTPKG_6.0" 1.3~exp2 + (c++)"EIPP::ApplyRequest(std::__cxx11::list<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, EIPP::PKG_ACTION>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, EIPP::PKG_ACTION> > >&, pkgDepCache&)@APTPKG_6.0" 1.3~rc2 + (c++)"EIPP::ReadRequest(int, std::__cxx11::list<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, EIPP::PKG_ACTION>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, EIPP::PKG_ACTION> > >&, unsigned int&)@APTPKG_6.0" 1.3~rc2 + (c++)"FileFd::Read(int, void*, unsigned long long, unsigned long long*)@APTPKG_6.0" 1.3~rc2 + (c++)"pkgSourceList::AddVolatileFiles(CommandLine&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*)@APTPKG_6.0" 1.3~rc2 + (c++)"pkgSourceList::AddVolatileFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*)@APTPKG_6.0" 1.3~rc2 + (c++)"TimeRFC1123[abi:cxx11](long, bool)@APTPKG_6.0" 1.3~rc2 + (c++)"unsigned long std::uniform_int_distribution<unsigned long>::operator()<std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul> >(std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>&, std::uniform_int_distribution<unsigned long>::param_type const&)@APTPKG_6.0" 1.3~rc2 + (c++)"void std::shuffle<__gnu_cxx::__normal_iterator<IndexTarget*, std::vector<IndexTarget, std::allocator<IndexTarget> > >, std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>&>(__gnu_cxx::__normal_iterator<IndexTarget*, std::vector<IndexTarget, std::allocator<IndexTarget> > >, __gnu_cxx::__normal_iterator<IndexTarget*, std::vector<IndexTarget, std::allocator<IndexTarget> > >, std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>&)@APTPKG_6.0" 1.3~rc2 + (c++)"void std::vector<pkgDPkgPM::Item, std::allocator<pkgDPkgPM::Item> >::emplace_back<pkgDPkgPM::Item::Ops, pkgCache::PkgIterator>(pkgDPkgPM::Item::Ops&&, pkgCache::PkgIterator&&)@APTPKG_6.0" 1.3~rc2 + (c++)"void std::vector<pkgDPkgPM::Item, std::allocator<pkgDPkgPM::Item> >::emplace_back<pkgDPkgPM::Item::Ops, pkgCache::PkgIterator&>(pkgDPkgPM::Item::Ops&&, pkgCache::PkgIterator&)@APTPKG_6.0" 1.3~rc2 + (c++)"void std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::emplace_back<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.3~rc2 + (c++)"void std::vector<std::pair<pkgDPkgPM::Item*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<pkgDPkgPM::Item*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::emplace_back<pkgDPkgPM::Item*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(pkgDPkgPM::Item*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&)@APTPKG_6.0" 1.3~rc2 + (c++)"APT::String::Join(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.4~beta4 + (c++)"debListParser::ParseDepends(char const*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, unsigned int&, bool const&, bool const&, bool const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.4~beta3 + (c++)"debListParser::ParseDepends(char const*, char const*, APT::StringView&, APT::StringView&, unsigned int&, bool, bool, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 1.9.0~ + (c++)"pkgTagHash(char const*, unsigned long)@APTPKG_6.0" 1.4~beta1 + (c++|optional=std)"void std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::emplace_back<char const (&) [4]>(char const (&) [4])@APTPKG_6.0" 1.4~beta4 + (c++)"FileFd::ReadLine(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@APTPKG_6.0" 1.5~beta2~ + (c++)"MaybeAddAuth(FileFd&, URI&)@APTPKG_6.0" 1.5~beta2~ + (c++)"metaIndex::GetDefaultPin() const@APTPKG_6.0" 1.5~beta2~ + (c++)"metaIndex::GetLabel[abi:cxx11]() const@APTPKG_6.0" 1.5~beta2~ + (c++)"metaIndex::GetOrigin[abi:cxx11]() const@APTPKG_6.0" 1.5~beta2~ + (c++)"metaIndex::GetReleaseNotes[abi:cxx11]() const@APTPKG_6.0" 1.5~beta2~ + (c++)"metaIndex::GetVersion[abi:cxx11]() const@APTPKG_6.0" 1.5~beta2~ + (c++)"metaIndex::HasSupportForComponent(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@APTPKG_6.0" 1.5~beta2~ + (c++)"pkgAcquireStatus::ReleaseInfoChanges(metaIndex const*, metaIndex const*, std::vector<pkgAcquireStatus::ReleaseInfoChange, std::allocator<pkgAcquireStatus::ReleaseInfoChange> >&&)@APTPKG_6.0" 1.5~beta2~ + (c++)"RemoveFileAt(char const*, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@APTPKG_6.0" 1.5~beta2~ + (c++|optional=std)"void std::vector<pkgAcquireStatus::ReleaseInfoChange, std::allocator<pkgAcquireStatus::ReleaseInfoChange> >::emplace_back<pkgAcquireStatus::ReleaseInfoChange>(pkgAcquireStatus::ReleaseInfoChange&&)@APTPKG_6.0" 1.5~beta2~ + (c++)"pkgAcqMethod::FetchItem::Proxy[abi:cxx11]()@APTPKG_6.0" 1.6~alpha1~ + (c++)"pkgSystem::IsLocked()@APTPKG_6.0" 1.7.0~alpha3~ + (c++)"pkgSystem::LockInner()@APTPKG_6.0" 1.7.0~alpha3~ + (c++)"pkgSystem::UnLockInner(bool)@APTPKG_6.0" 1.7.0~alpha3~ # gcc-8 artifacts - (c++|optional=std)"std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<IndexTarget> >, std::is_move_constructible<IndexTarget>, std::is_move_assignable<IndexTarget> >::value, void>::type std::swap<IndexTarget>(IndexTarget&, IndexTarget&)@APTPKG_5.90" 1.5~beta2~ - (c++|optional=std)"pkgAcqMethod::SendMessage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >&&)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [3], char const (&) [4], char const (&) [3], char const (&) [3], char const (&) [3], int>(char const (&) [3], char const (&) [4], char const (&) [3], char const (&) [3], char const (&) [3], int&&)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [3], char const (&) [4], char const (&) [6], decltype(nullptr), decltype(nullptr), int>(char const (&) [3], char const (&) [4], char const (&) [6], decltype(nullptr)&&, decltype(nullptr)&&, int&&)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [4], char const (&) [5], char const (&) [4], char const (&) [3], char const (&) [3], int>(char const (&) [4], char const (&) [5], char const (&) [4], char const (&) [3], char const (&) [3], int&&)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [4], char const (&) [5], char const (&) [6], decltype(nullptr), decltype(nullptr), int>(char const (&) [4], char const (&) [5], char const (&) [6], decltype(nullptr)&&, decltype(nullptr)&&, int&&)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [5], char const (&) [4], char const (&) [5], char const (&) [4], char const (&) [3], int>(char const (&) [5], char const (&) [4], char const (&) [5], char const (&) [4], char const (&) [3], int&&)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [5], char const (&) [4], char const (&) [6], decltype(nullptr), decltype(nullptr), int>(char const (&) [5], char const (&) [4], char const (&) [6], decltype(nullptr)&&, decltype(nullptr)&&, int&&)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [5], char const (&) [5], char const (&) [5], char const (&) [4], char const (&) [3], int>(char const (&) [5], char const (&) [5], char const (&) [5], char const (&) [4], char const (&) [3], int&&)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [5], char const (&) [5], char const (&) [6], decltype(nullptr), decltype(nullptr), int>(char const (&) [5], char const (&) [5], char const (&) [6], decltype(nullptr)&&, decltype(nullptr)&&, int&&)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [5], char const (&) [6], char const (&) [5], char const (&) [3], char const (&) [3], int>(char const (&) [5], char const (&) [6], char const (&) [5], char const (&) [3], char const (&) [3], int&&)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [5], char const (&) [6], char const (&) [6], decltype(nullptr), decltype(nullptr), int>(char const (&) [5], char const (&) [6], char const (&) [6], decltype(nullptr)&&, decltype(nullptr)&&, int&&)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [6], char const (&) [5], char const (&) [6], char const (&) [3], char const (&) [3], int>(char const (&) [6], char const (&) [5], char const (&) [6], char const (&) [3], char const (&) [3], int&&)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [6], char const (&) [5], char const (&) [6], decltype(nullptr), decltype(nullptr), int>(char const (&) [6], char const (&) [5], char const (&) [6], decltype(nullptr)&&, decltype(nullptr)&&, int&&)@APTPKG_5.90" 1.7.0~alpha3~ + (c++|optional=std)"std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<IndexTarget> >, std::is_move_constructible<IndexTarget>, std::is_move_assignable<IndexTarget> >::value, void>::type std::swap<IndexTarget>(IndexTarget&, IndexTarget&)@APTPKG_6.0" 1.5~beta2~ + (c++|optional=std)"pkgAcqMethod::SendMessage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >&&)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [3], char const (&) [4], char const (&) [3], char const (&) [3], char const (&) [3], int>(char const (&) [3], char const (&) [4], char const (&) [3], char const (&) [3], char const (&) [3], int&&)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [3], char const (&) [4], char const (&) [6], decltype(nullptr), decltype(nullptr), int>(char const (&) [3], char const (&) [4], char const (&) [6], decltype(nullptr)&&, decltype(nullptr)&&, int&&)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [4], char const (&) [5], char const (&) [4], char const (&) [3], char const (&) [3], int>(char const (&) [4], char const (&) [5], char const (&) [4], char const (&) [3], char const (&) [3], int&&)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [4], char const (&) [5], char const (&) [6], decltype(nullptr), decltype(nullptr), int>(char const (&) [4], char const (&) [5], char const (&) [6], decltype(nullptr)&&, decltype(nullptr)&&, int&&)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [5], char const (&) [4], char const (&) [5], char const (&) [4], char const (&) [3], int>(char const (&) [5], char const (&) [4], char const (&) [5], char const (&) [4], char const (&) [3], int&&)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [5], char const (&) [4], char const (&) [6], decltype(nullptr), decltype(nullptr), int>(char const (&) [5], char const (&) [4], char const (&) [6], decltype(nullptr)&&, decltype(nullptr)&&, int&&)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [5], char const (&) [5], char const (&) [5], char const (&) [4], char const (&) [3], int>(char const (&) [5], char const (&) [5], char const (&) [5], char const (&) [4], char const (&) [3], int&&)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [5], char const (&) [5], char const (&) [6], decltype(nullptr), decltype(nullptr), int>(char const (&) [5], char const (&) [5], char const (&) [6], decltype(nullptr)&&, decltype(nullptr)&&, int&&)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [5], char const (&) [6], char const (&) [5], char const (&) [3], char const (&) [3], int>(char const (&) [5], char const (&) [6], char const (&) [5], char const (&) [3], char const (&) [3], int&&)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [5], char const (&) [6], char const (&) [6], decltype(nullptr), decltype(nullptr), int>(char const (&) [5], char const (&) [6], char const (&) [6], decltype(nullptr)&&, decltype(nullptr)&&, int&&)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [6], char const (&) [5], char const (&) [6], char const (&) [3], char const (&) [3], int>(char const (&) [6], char const (&) [5], char const (&) [6], char const (&) [3], char const (&) [3], int&&)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<char const (&) [6], char const (&) [5], char const (&) [6], decltype(nullptr), decltype(nullptr), int>(char const (&) [6], char const (&) [5], char const (&) [6], decltype(nullptr)&&, decltype(nullptr)&&, int&&)@APTPKG_6.0" 1.7.0~alpha3~ * Build-Depends-Package: libapt-pkg-dev - (c++)"ExtractTar::Done()@APTPKG_5.90" 1.1~exp12 - (c++)"ExtractTar::Go(pkgDirStream&)@APTPKG_5.90" 0.8.0 - (c++)"ExtractTar::StartGzip()@APTPKG_5.90" 0.8.0 - (c++)"ExtractTar::ExtractTar(FileFd&, unsigned long long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_5.90" 1.0.5 - (c++)"ExtractTar::~ExtractTar()@APTPKG_5.90" 0.8.0 - (c++)"debDebFile::GotoMember(char const*)@APTPKG_5.90" 0.8.0 - (c++)"debDebFile::CheckMember(char const*)@APTPKG_5.90" 0.8.0 - (c++)"debDebFile::ControlExtract::DoItem(pkgDirStream::Item&, int&)@APTPKG_5.90" 0.8.0 - (c++)"debDebFile::ExtractTarMember(pkgDirStream&, char const*)@APTPKG_5.90" 0.9.15.4 - (c++)"debDebFile::ExtractArchive(pkgDirStream&)@APTPKG_5.90" 0.8.0 - (c++)"debDebFile::MemControlExtract::TakeControl(void const*, unsigned long long)@APTPKG_5.90" 1.0.5 - (c++)"debDebFile::MemControlExtract::Read(debDebFile&)@APTPKG_5.90" 0.8.0 - (c++)"debDebFile::MemControlExtract::DoItem(pkgDirStream::Item&, int&)@APTPKG_5.90" 0.8.0 - (c++)"debDebFile::MemControlExtract::Process(pkgDirStream::Item&, unsigned char const*, unsigned long long, unsigned long long)@APTPKG_5.90" 1.0.5 - (c++)"debDebFile::debDebFile(FileFd&)@APTPKG_5.90" 0.8.0 - (c++)"pkgDirStream::FinishedFile(pkgDirStream::Item&, int)@APTPKG_5.90" 0.8.0 - (c++)"pkgDirStream::Fail(pkgDirStream::Item&, int)@APTPKG_5.90" 0.8.0 - (c++)"pkgDirStream::DoItem(pkgDirStream::Item&, int&)@APTPKG_5.90" 0.8.0 - (c++)"ARArchive::LoadHeaders()@APTPKG_5.90" 0.8.0 - (c++)"ARArchive::ARArchive(FileFd&)@APTPKG_5.90" 0.8.0 - (c++)"ARArchive::~ARArchive()@APTPKG_5.90" 0.8.0 - (c++)"ARArchive::FindMember(char const*) const@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for ExtractTar@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for pkgDirStream@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for debDebFile::ControlExtract@APTPKG_5.90" 0.8.0 - (c++)"typeinfo for debDebFile::MemControlExtract@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for ExtractTar@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for pkgDirStream@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for debDebFile::ControlExtract@APTPKG_5.90" 0.8.0 - (c++)"typeinfo name for debDebFile::MemControlExtract@APTPKG_5.90" 0.8.0 - (c++)"vtable for ExtractTar@APTPKG_5.90" 0.8.0 - (c++)"vtable for pkgDirStream@APTPKG_5.90" 0.8.0 - (c++)"vtable for debDebFile::ControlExtract@APTPKG_5.90" 0.8.0 - (c++)"vtable for debDebFile::MemControlExtract@APTPKG_5.90" 0.8.0 + (c++)"ExtractTar::Done()@APTPKG_6.0" 1.1~exp12 + (c++)"ExtractTar::Go(pkgDirStream&)@APTPKG_6.0" 0.8.0 + (c++)"ExtractTar::StartGzip()@APTPKG_6.0" 0.8.0 + (c++)"ExtractTar::ExtractTar(FileFd&, unsigned long long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)@APTPKG_6.0" 1.0.5 + (c++)"ExtractTar::~ExtractTar()@APTPKG_6.0" 0.8.0 + (c++)"debDebFile::GotoMember(char const*)@APTPKG_6.0" 0.8.0 + (c++)"debDebFile::CheckMember(char const*)@APTPKG_6.0" 0.8.0 + (c++)"debDebFile::ControlExtract::DoItem(pkgDirStream::Item&, int&)@APTPKG_6.0" 0.8.0 + (c++)"debDebFile::ExtractTarMember(pkgDirStream&, char const*)@APTPKG_6.0" 0.9.15.4 + (c++)"debDebFile::ExtractArchive(pkgDirStream&)@APTPKG_6.0" 0.8.0 + (c++)"debDebFile::MemControlExtract::TakeControl(void const*, unsigned long long)@APTPKG_6.0" 1.0.5 + (c++)"debDebFile::MemControlExtract::Read(debDebFile&)@APTPKG_6.0" 0.8.0 + (c++)"debDebFile::MemControlExtract::DoItem(pkgDirStream::Item&, int&)@APTPKG_6.0" 0.8.0 + (c++)"debDebFile::MemControlExtract::Process(pkgDirStream::Item&, unsigned char const*, unsigned long long, unsigned long long)@APTPKG_6.0" 1.0.5 + (c++)"debDebFile::debDebFile(FileFd&)@APTPKG_6.0" 0.8.0 + (c++)"pkgDirStream::FinishedFile(pkgDirStream::Item&, int)@APTPKG_6.0" 0.8.0 + (c++)"pkgDirStream::Fail(pkgDirStream::Item&, int)@APTPKG_6.0" 0.8.0 + (c++)"pkgDirStream::DoItem(pkgDirStream::Item&, int&)@APTPKG_6.0" 0.8.0 + (c++)"ARArchive::LoadHeaders()@APTPKG_6.0" 0.8.0 + (c++)"ARArchive::ARArchive(FileFd&)@APTPKG_6.0" 0.8.0 + (c++)"ARArchive::~ARArchive()@APTPKG_6.0" 0.8.0 + (c++)"ARArchive::FindMember(char const*) const@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for ExtractTar@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for pkgDirStream@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for debDebFile::ControlExtract@APTPKG_6.0" 0.8.0 + (c++)"typeinfo for debDebFile::MemControlExtract@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for ExtractTar@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for pkgDirStream@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for debDebFile::ControlExtract@APTPKG_6.0" 0.8.0 + (c++)"typeinfo name for debDebFile::MemControlExtract@APTPKG_6.0" 0.8.0 + (c++)"vtable for ExtractTar@APTPKG_6.0" 0.8.0 + (c++)"vtable for pkgDirStream@APTPKG_6.0" 0.8.0 + (c++)"vtable for debDebFile::ControlExtract@APTPKG_6.0" 0.8.0 + (c++)"vtable for debDebFile::MemControlExtract@APTPKG_6.0" 0.8.0 ### gcc artifacts - (c++|optional=std)"std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::~vector()@APTPKG_5.90" 0.8.12 - (c++|optional=std)"void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*, std::forward_iterator_tag)@APTPKG_5.90" 1.7.0~alpha3~ - (c++|optional=std)"void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag)@APTPKG_5.90" 1.7.0~alpha3~ + (c++|optional=std)"std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::~vector()@APTPKG_6.0" 0.8.12 + (c++|optional=std)"void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*, std::forward_iterator_tag)@APTPKG_6.0" 1.7.0~alpha3~ + (c++|optional=std)"void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag)@APTPKG_6.0" 1.7.0~alpha3~ ### try to ignore std:: template instances - (c++)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<APT::Configuration::Compressor>(APT::Configuration::Compressor&&)@APTPKG_5.90" 1.9~ - (c++)"void std::vector<APT::StringView*, std::allocator<APT::StringView*> >::emplace_back<APT::StringView*>(APT::StringView*&&)@APTPKG_5.90" 1.9~ - (c++)"void std::vector<std::unique_ptr<FileFd, std::default_delete<FileFd> >, std::allocator<std::unique_ptr<FileFd, std::default_delete<FileFd> > > >::emplace_back<FileFd*>(FileFd*&&)@APTPKG_5.90" 1.9~ - (optional)_ZL6hash32jPKhm._GLOBAL___.._apt_pkg_pkgcache.cc_FB5499C7_0x5f8f5e3a3ed634d9.ifunc@APTPKG_5.90 1.9~ + (c++)"void std::vector<APT::Configuration::Compressor, std::allocator<APT::Configuration::Compressor> >::emplace_back<APT::Configuration::Compressor>(APT::Configuration::Compressor&&)@APTPKG_6.0" 1.9~ + (c++)"void std::vector<APT::StringView*, std::allocator<APT::StringView*> >::emplace_back<APT::StringView*>(APT::StringView*&&)@APTPKG_6.0" 1.9~ + (c++)"void std::vector<std::unique_ptr<FileFd, std::default_delete<FileFd> >, std::allocator<std::unique_ptr<FileFd, std::default_delete<FileFd> > > >::emplace_back<FileFd*>(FileFd*&&)@APTPKG_6.0" 1.9~ + (optional)_ZL6hash32jPKhm._GLOBAL___.._apt_pkg_pkgcache.cc_FB5499C7_0x5f8f5e3a3ed634d9.ifunc@APTPKG_6.0 1.9~ diff --git a/debian/rules b/debian/rules index 54396746e..7997739fa 100755 --- a/debian/rules +++ b/debian/rules @@ -37,15 +37,15 @@ override_dh_gencontrol: override_dh_installcron: dh_installcron --name=apt-compat -override_dh_systemd_start: +override_dh_installsystemd: # Do not restart "apt-daily.service" because this script runs # unattended-upgrades. So if apt itself is upgraded as part of # an unattended-upgrades run it would kill itself - dh_systemd_start -papt apt-daily.timer apt-daily-upgrade.timer - dh_systemd_start --remaining-packages + dh_installsystemd -papt apt-daily.timer apt-daily-upgrade.timer + dh_installsystemd -papt --no-restart-on-upgrade --no-restart-after-upgrade --no-start apt-daily.service apt-daily-upgrade.service + dh_installsystemd --remaining-packages override_dh_auto_configure-arch: flags=-DWITH_DOC=OFF override_dh_auto_configure-indep: flags=-DWITH_DOC=ON override_dh_auto_configure-arch override_dh_auto_configure-indep: dh_auto_configure -- $(flags) $(configure_test_flags) - diff --git a/doc/apt-get.8.xml b/doc/apt-get.8.xml index ab6074802..e603ec5bb 100644 --- a/doc/apt-get.8.xml +++ b/doc/apt-get.8.xml @@ -14,7 +14,7 @@ &apt-email; &apt-product; <!-- The last update date --> - <date>2019-05-09T00:00:00Z</date> + <date>2020-01-15T00:00:00Z</date> </refentryinfo> <refmeta> @@ -140,7 +140,10 @@ to all package names in the database. Any matches are then installed (or removed). Note that matching is done by substring so 'lo.*' matches 'how-lo' and 'lowest'. If this is undesired, anchor the regular expression - with a '^' or '$' character, or create a more specific regular expression.</para></listitem> + with a '^' or '$' character, or create a more specific regular expression.</para> + <para>Fallback to regular expressions is deprecated in APT 2.0, has been removed in + &apt;, except for anchored expressions, and will be removed from &apt-get; + in a future version. Use &apt-patterns; instead.</para></listitem> </varlistentry> <varlistentry><term><option>reinstall</option></term> diff --git a/doc/apt-patterns.7.xml b/doc/apt-patterns.7.xml index b94a9b226..84063a092 100644 --- a/doc/apt-patterns.7.xml +++ b/doc/apt-patterns.7.xml @@ -13,7 +13,7 @@ &apt-email; &apt-product; <!-- The last update date --> - <date>2019-11-26T00:00:00Z</date> + <date>2020-02-04T00:00:00Z</date> </refentryinfo> <refmeta> @@ -43,21 +43,24 @@ patterns. </para> <variablelist> - <varlistentry><term><code>?and(PATTERN, PATTERN, ...)</code></term> + <varlistentry><term><code>?and(PATTERN, PATTERN, ...)</code></term><term><code>PATTERN PATTERN ...</code></term> <listitem><para>Selects objects where all specified patterns match.</para></listitem> </varlistentry> - <varlistentry><term><code>?false</code></term> + <varlistentry><term><code>?false</code></term><term><code>~F</code></term> <listitem><para>Selects nothing.</para></listitem> </varlistentry> - <varlistentry><term><code>?not(PATTERN)</code></term> + <varlistentry><term><code>?not(PATTERN)</code></term><term><code>!PATTERN</code></term> <listitem><para>Selects objects where PATTERN does not match.</para></listitem> </varlistentry> - <varlistentry><term><code>?or(PATTERN, PATTERN, ...)</code></term> + <varlistentry><term><code>?or(PATTERN, PATTERN, ...)</code></term><term><code>PATTERN | PATTERN | ...</code></term> <listitem><para>Selects objects where at least one of the specified patterns match.</para></listitem> </varlistentry> - <varlistentry><term><code>?true</code></term> + <varlistentry><term><code>?true</code></term><term><code>~T</code></term> <listitem><para>Selects all objects.</para></listitem> </varlistentry> + <varlistentry><term><code>(PATTERN)</code></term> + <listitem><para>Selects the same as <code>PATTERN</code>, can be used to work around precedence, for example, <code>(~ramd64|~ri386)~nfoo</code></para></listitem> + </varlistentry> </variablelist> </refsect1> <refsect1> @@ -83,40 +86,40 @@ These patterns select specific packages. </para> <variablelist> - <varlistentry><term><code>?architecture(WILDCARD)</code></term> + <varlistentry><term><code>?architecture(WILDCARD)</code></term><term><code>~rWILDCARD</code></term> <listitem><para>Selects packages matching the specified architecture, which may contain wildcards using any.</para></listitem> </varlistentry> - <varlistentry><term><code>?automatic</code></term> + <varlistentry><term><code>?automatic</code></term><term><code>~M</code></term> <listitem><para>Selects packages that were installed automatically.</para></listitem> </varlistentry> - <varlistentry><term><code>?broken</code></term> + <varlistentry><term><code>?broken</code></term><term><code>~b</code></term> <listitem><para>Selects packages that have broken dependencies.</para></listitem> </varlistentry> - <varlistentry><term><code>?config-files</code></term> + <varlistentry><term><code>?config-files</code></term><term><code>~c</code></term> <listitem><para>Selects packages that are not fully installed, but have solely residual configuration files left.</para></listitem> </varlistentry> - <varlistentry><term><code>?essential</code></term> + <varlistentry><term><code>?essential</code></term><term><code>~E</code></term> <listitem><para>Selects packages that have Essential: yes set in their control file.</para></listitem> </varlistentry> <varlistentry><term><code>?exact-name(NAME)</code></term> <listitem><para>Selects packages with the exact specified name.</para></listitem> </varlistentry> - <varlistentry><term><code>?garbage</code></term> + <varlistentry><term><code>?garbage</code></term><term><code>~g</code></term> <listitem><para>Selects packages that can be removed automatically.</para></listitem> </varlistentry> - <varlistentry><term><code>?installed</code></term> + <varlistentry><term><code>?installed</code></term><term><code>~i</code></term> <listitem><para>Selects packages that are currently installed.</para></listitem> </varlistentry> - <varlistentry><term><code>?name(REGEX)</code></term> + <varlistentry><term><code>?name(REGEX)</code></term><term><code>~nREGEX</code></term> <listitem><para>Selects packages where the name matches the given regular expression.</para></listitem> </varlistentry> - <varlistentry><term><code>?obsolete</code></term> + <varlistentry><term><code>?obsolete</code></term><term><code>~o</code></term> <listitem><para>Selects packages that no longer exist in repositories.</para></listitem> </varlistentry> - <varlistentry><term><code>?upgradable</code></term> + <varlistentry><term><code>?upgradable</code></term><term><code>~U</code></term> <listitem><para>Selects packages that can be upgraded (have a newer candidate).</para></listitem> </varlistentry> - <varlistentry><term><code>?virtual</code></term> + <varlistentry><term><code>?virtual</code></term><term><code>~v</code></term> <listitem><para>Selects all virtual packages; that is packages without a version. These exist when they are referenced somewhere in the archive, for example because something depends on that name.</para></listitem> @@ -129,22 +132,22 @@ These patterns select specific versions of a package. </para> <variablelist> - <varlistentry><term><code>?archive(REGEX)</code></term> + <varlistentry><term><code>?archive(REGEX)</code></term><term><code>~AREGEX</code></term> <listitem><para>Selects versions that come from the archive that matches the specified regular expression. Archive, here, means the values after <code>a=</code> in <command>apt-cache policy</command>.</para></listitem> </varlistentry> - <varlistentry><term><code>?origin(REGEX)</code></term> + <varlistentry><term><code>?origin(REGEX)</code></term><term><code>~OREGEX</code></term> <listitem><para>Selects versions that come from the origin that matches the specified regular expression. Origin, here, means the values after <code>o=</code> in <command>apt-cache policy</command>.</para></listitem> </varlistentry> - <varlistentry><term><code>?section(REGEX)</code></term> + <varlistentry><term><code>?section(REGEX)</code></term><term><code>~sREGEX</code></term> <listitem><para>Selects versions where the section matches the specified regular expression.</para></listitem> </varlistentry> - <varlistentry><term><code>?source-package(REGEX)</code></term> + <varlistentry><term><code>?source-package(REGEX)</code></term><term><code>~eREGEX</code></term> <listitem><para>Selects versions where the source package name matches the specified regular expression.</para></listitem> </varlistentry> <varlistentry><term><code>?source-version(REGEX)</code></term> <listitem><para>Selects versions where the source package version matches the specified regular expression.</para></listitem> </varlistentry> - <varlistentry><term><code>?version(REGEX)</code></term> + <varlistentry><term><code>?version(REGEX)</code></term><term><code>~VREGEX</code></term> <listitem><para>Selects versions where the version string matching the specified regular expression.</para></listitem> </varlistentry> </variablelist> @@ -159,6 +162,9 @@ <varlistentry><term><code>apt purge ?config-files</code></term> <listitem><para>Purge all packages that only have configuration files left</para></listitem> </varlistentry> + <varlistentry><term><code>apt list '~i !~M (~slibs|~sperl|~spython)'</code></term> + <listitem><para>List all manually-installed packages in sections matching libs, perl, or python.</para></listitem> + </varlistentry> </variablelist> </refsect1> @@ -168,9 +174,6 @@ </para> <itemizedlist> <listitem> - <para>Only long forms — the ones starting with ? — are supported</para> - </listitem> - <listitem> <para> Syntax is uniform: If there is an opening parenthesis after a term, it is always assumed to be the beginning of an argument list. </para> @@ -193,6 +196,16 @@ <listitem> <para>?narrow accepts infinite arguments</para> </listitem> + <listitem> + <para><code>foo</code> cannot be used as a shortform for <code>?name(foo)</code>, as this can cause typos to go unnoticed: + Consider <code>?and(...,~poptional)</code>: + this requires the package to have <code>required</code> priority, but + if you do not type the <code>~</code>, it would require the package name to contain <code>poptional</code>.</para> + </listitem> + <listitem> + <para>Grouping patterns with <code>(...)</code> or writing <code>?or(A,B)</code> as <code>A|B</code> are not supported. We + do not believe that the use of <code>|</code> is that common, and the grouping is not necessary without it.</para> + </listitem> </itemizedlist> </refsect1> diff --git a/doc/apt-verbatim.ent b/doc/apt-verbatim.ent index 6fce0d257..f337055c2 100644 --- a/doc/apt-verbatim.ent +++ b/doc/apt-verbatim.ent @@ -57,6 +57,12 @@ </citerefentry>" > +<!ENTITY apt-patterns "<citerefentry> + <refentrytitle><abbrev>apt-patterns</abbrev></refentrytitle> + <manvolnum>5</manvolnum> + </citerefentry>" +> + <!ENTITY apt-preferences "<citerefentry> <refentrytitle><filename>apt_preferences</filename></refentrytitle> <manvolnum>5</manvolnum> @@ -268,14 +274,14 @@ "> <!-- this will be updated by 'prepare-release' --> -<!ENTITY apt-product-version "1.9.5"> +<!ENTITY apt-product-version "1.9.10"> <!-- (Code)names for various things used all over the place --> <!ENTITY debian-oldstable-codename "stretch"> <!ENTITY debian-stable-codename "buster"> <!ENTITY debian-testing-codename "bullseye"> <!ENTITY debian-stable-version "10"> -<!ENTITY ubuntu-codename "disco"> +<!ENTITY ubuntu-codename "focal"> <!-- good and bad just refers to matching and not matching a pattern… It is not a remark about the specific perl version. diff --git a/doc/apt.8.xml b/doc/apt.8.xml index 1bbae0180..21470cc32 100644 --- a/doc/apt.8.xml +++ b/doc/apt.8.xml @@ -13,7 +13,7 @@ &apt-email; &apt-product; <!-- The last update date --> - <date>2019-05-09T00:00:00Z</date> + <date>2020-02-13T00:00:00Z</date> </refentryinfo> <refmeta> @@ -137,7 +137,7 @@ </para></listitem> </varlistentry> - <varlistentry><term><option>list</option> (work-in-progress)</term> + <varlistentry><term><option>list</option></term> <listitem><para><option>list</option> is somewhat similar to <command>dpkg-query --list</command> in that it can display a list of packages satisfying certain criteria. It supports &glob; patterns for matching package names as diff --git a/doc/apt_preferences.5.xml b/doc/apt_preferences.5.xml index cac9a96e1..dacf3dc21 100644 --- a/doc/apt_preferences.5.xml +++ b/doc/apt_preferences.5.xml @@ -303,7 +303,28 @@ a &glob; expression in itself. </para> </refsect2> +<refsect2><title>Pinning by source package</title> +<para>APT supports pinning by source packages. To pin by a source package, +prepend "src:" to the package name.</para> +<para>For example, to pin all binaries produced by the apt source package +of this APT's version to 990, you can do:</para> +<programlisting> +Package: src:apt +Pin: version &apt-product-version; +Pin-Priority: 990 +</programlisting> + +<para>Source package pinning can be combined with regular expressions and +glob patterns, and can also take a binary architecture.</para> +<para>For example, let's pin all binaries for all architectures produced by +any source package containing apt in its name to 990:</para> +<programlisting> +Package: src:*apt*:any +Pin: version * +Pin-Priority: 990 +</programlisting> +</refsect2> diff --git a/doc/examples/configure-index b/doc/examples/configure-index index 25378a809..cc70465d6 100644 --- a/doc/examples/configure-index +++ b/doc/examples/configure-index @@ -695,6 +695,7 @@ apt::cmd::list-include-summary "<BOOL>"; apt::cmd::use-regexp "<BOOL>"; apt::cmd::all-versions "<BOOL>"; apt::cmd::format "<STRING>"; +apt::cmd::pattern-only "<BOOL>"; // internal apt::config::dump::emptyvalue "<BOOL>"; apt::config::dump::format "<STRING>"; diff --git a/doc/po/apt-doc.pot b/doc/po/apt-doc.pot index 9cf6d5b19..5c91571d8 100644 --- a/doc/po/apt-doc.pot +++ b/doc/po/apt-doc.pot @@ -5,9 +5,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: apt-doc 1.9.5\n" +"Project-Id-Version: apt-doc 1.9.10\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-02-18 12:32+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -673,11 +673,6 @@ msgid "" "searching for new packages to install." msgstr "" -#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> -#: apt.8.xml -msgid "(work-in-progress)" -msgstr "" - #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -689,6 +684,11 @@ msgid "" "(<option>--all-versions</option>) versions." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt.8.xml +msgid "(work-in-progress)" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -899,6 +899,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-get.8.xml msgid "" +"Fallback to regular expressions is deprecated in APT 2.0, has been removed " +"in &apt;, except for anchored expressions, and will be removed from " +"&apt-get; in a future version. Use &apt-patterns; instead." +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-get.8.xml +msgid "" "<literal>reinstall</literal> is an alias for <literal>install " "--reinstall</literal>." msgstr "" @@ -7771,6 +7779,11 @@ msgstr "" msgid "<code>?and(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN PATTERN ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where all specified patterns match." @@ -7781,6 +7794,11 @@ msgstr "" msgid "<code>?false</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~F</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects nothing." @@ -7791,6 +7809,11 @@ msgstr "" msgid "<code>?not(PATTERN)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>!PATTERN</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where PATTERN does not match." @@ -7801,6 +7824,11 @@ msgstr "" msgid "<code>?or(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN | PATTERN | ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where at least one of the specified patterns match." @@ -7811,11 +7839,28 @@ msgstr "" msgid "<code>?true</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~T</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects all objects." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>(PATTERN)</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Selects the same as <code>PATTERN</code>, can be used to work around " +"precedence, for example, <code>(~ramd64|~ri386)~nfoo</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Narrowing patterns" @@ -7879,6 +7924,11 @@ msgstr "" msgid "<code>?architecture(WILDCARD)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~rWILDCARD</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -7891,6 +7941,11 @@ msgstr "" msgid "<code>?automatic</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~M</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that were installed automatically." @@ -7901,6 +7956,11 @@ msgstr "" msgid "<code>?broken</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~b</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have broken dependencies." @@ -7911,6 +7971,11 @@ msgstr "" msgid "<code>?config-files</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~c</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -7923,6 +7988,11 @@ msgstr "" msgid "<code>?essential</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~E</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have Essential: yes set in their control file." @@ -7943,6 +8013,11 @@ msgstr "" msgid "<code>?garbage</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~g</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be removed automatically." @@ -7953,6 +8028,11 @@ msgstr "" msgid "<code>?installed</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~i</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that are currently installed." @@ -7963,6 +8043,11 @@ msgstr "" msgid "<code>?name(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~nREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages where the name matches the given regular expression." @@ -7973,6 +8058,11 @@ msgstr "" msgid "<code>?obsolete</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~o</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that no longer exist in repositories." @@ -7983,6 +8073,11 @@ msgstr "" msgid "<code>?upgradable</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~U</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be upgraded (have a newer candidate)." @@ -7993,6 +8088,11 @@ msgstr "" msgid "<code>?virtual</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~v</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8016,6 +8116,11 @@ msgstr "" msgid "<code>?archive(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~AREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8029,6 +8134,11 @@ msgstr "" msgid "<code>?origin(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~OREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8042,6 +8152,11 @@ msgstr "" msgid "<code>?section(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~sREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects versions where the section matches the specified regular expression." @@ -8052,6 +8167,11 @@ msgstr "" msgid "<code>?source-package(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~eREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8076,6 +8196,11 @@ msgstr "" msgid "<code>?version(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~VREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8105,6 +8230,18 @@ msgstr "" msgid "Purge all packages that only have configuration files left" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>apt list '~i !~M (~slibs|~sperl|~spython)'</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"List all manually-installed packages in sections matching libs, perl, or " +"python." +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Migrating from aptitude" @@ -8119,11 +8256,6 @@ msgstr "" #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> #: apt-patterns.7.xml -msgid "Only long forms — the ones starting with ? — are supported" -msgstr "" - -#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> -#: apt-patterns.7.xml msgid "" "Syntax is uniform: If there is an opening parenthesis after a term, it is " "always assumed to be the beginning of an argument list." @@ -8164,6 +8296,24 @@ msgstr "" msgid "?narrow accepts infinite arguments" msgstr "" +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"<code>foo</code> cannot be used as a shortform for <code>?name(foo)</code>, " +"as this can cause typos to go unnoticed: Consider " +"<code>?and(...,~poptional)</code>: this requires the package to have " +"<code>required</code> priority, but if you do not type the <code>~</code>, " +"it would require the package name to contain <code>poptional</code>." +msgstr "" + +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Grouping patterns with <code>(...)</code> or writing <code>?or(A,B)</code> " +"as <code>A|B</code> are not supported. We do not believe that the use of " +"<code>|</code> is that common, and the grouping is not necessary without it." +msgstr "" + #. type: Content of: <refentry><refsect1><para> #: apt-patterns.7.xml msgid "&apt-get;, &apt;" diff --git a/doc/po/de.po b/doc/po/de.po index 948748b02..b1168a83a 100644 --- a/doc/po/de.po +++ b/doc/po/de.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.9.2\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-02-18 12:32+0100\n" "PO-Revision-Date: 2019-08-15 10:22+0200\n" "Last-Translator: Chris Leick <c.leick@vollbio.de>\n" "Language-Team: German <debian-l10n-german@lists.debian.org>\n" @@ -866,11 +866,6 @@ msgstr "" "bevor Sie &apt; gestatten, ein Paket zu entfernen oder wenn Sie neue Pakete " "zur Installation suchen." -#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> -#: apt.8.xml -msgid "(work-in-progress)" -msgstr "(in Arbeit)" - #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -889,6 +884,11 @@ msgstr "" "werden kann (<option>--upgradeable</option>) oder allen verfügbaren " "(<option>--all-versions</option>)." +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt.8.xml +msgid "(work-in-progress)" +msgstr "(in Arbeit)" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -1200,6 +1200,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-get.8.xml msgid "" +"Fallback to regular expressions is deprecated in APT 2.0, has been removed " +"in &apt;, except for anchored expressions, and will be removed from &apt-" +"get; in a future version. Use &apt-patterns; instead." +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-get.8.xml +msgid "" "<literal>reinstall</literal> is an alias for <literal>install --reinstall</" "literal>." msgstr "" @@ -11168,6 +11176,11 @@ msgstr "" msgid "<code>?and(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN PATTERN ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where all specified patterns match." @@ -11178,6 +11191,11 @@ msgstr "" msgid "<code>?false</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~F</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects nothing." @@ -11188,6 +11206,11 @@ msgstr "" msgid "<code>?not(PATTERN)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>!PATTERN</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where PATTERN does not match." @@ -11198,6 +11221,11 @@ msgstr "" msgid "<code>?or(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN | PATTERN | ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where at least one of the specified patterns match." @@ -11208,11 +11236,28 @@ msgstr "" msgid "<code>?true</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~T</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects all objects." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>(PATTERN)</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Selects the same as <code>PATTERN</code>, can be used to work around " +"precedence, for example, <code>(~ramd64|~ri386)~nfoo</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Narrowing patterns" @@ -11276,6 +11321,11 @@ msgstr "" msgid "<code>?architecture(WILDCARD)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~rWILDCARD</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11288,6 +11338,11 @@ msgstr "" msgid "<code>?automatic</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~M</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that were installed automatically." @@ -11298,6 +11353,11 @@ msgstr "" msgid "<code>?broken</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~b</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have broken dependencies." @@ -11308,6 +11368,11 @@ msgstr "" msgid "<code>?config-files</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~c</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11320,6 +11385,11 @@ msgstr "" msgid "<code>?essential</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~E</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have Essential: yes set in their control file." @@ -11340,6 +11410,11 @@ msgstr "" msgid "<code>?garbage</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~g</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be removed automatically." @@ -11350,6 +11425,11 @@ msgstr "" msgid "<code>?installed</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~i</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that are currently installed." @@ -11360,6 +11440,11 @@ msgstr "" msgid "<code>?name(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~nREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages where the name matches the given regular expression." @@ -11370,6 +11455,11 @@ msgstr "" msgid "<code>?obsolete</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~o</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that no longer exist in repositories." @@ -11380,6 +11470,11 @@ msgstr "" msgid "<code>?upgradable</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~U</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be upgraded (have a newer candidate)." @@ -11390,6 +11485,11 @@ msgstr "" msgid "<code>?virtual</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~v</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11415,6 +11515,11 @@ msgstr "" msgid "<code>?archive(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~AREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11428,6 +11533,11 @@ msgstr "" msgid "<code>?origin(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~OREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11441,6 +11551,11 @@ msgstr "" msgid "<code>?section(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~sREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11452,6 +11567,11 @@ msgstr "" msgid "<code>?source-package(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~eREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11476,6 +11596,11 @@ msgstr "" msgid "<code>?version(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~VREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11505,6 +11630,18 @@ msgstr "" msgid "Purge all packages that only have configuration files left" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>apt list '~i !~M (~slibs|~sperl|~spython)'</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"List all manually-installed packages in sections matching libs, perl, or " +"python." +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Migrating from aptitude" @@ -11519,11 +11656,6 @@ msgstr "" #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> #: apt-patterns.7.xml -msgid "Only long forms — the ones starting with ? — are supported" -msgstr "" - -#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> -#: apt-patterns.7.xml msgid "" "Syntax is uniform: If there is an opening parenthesis after a term, it is " "always assumed to be the beginning of an argument list." @@ -11564,6 +11696,24 @@ msgstr "" msgid "?narrow accepts infinite arguments" msgstr "" +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"<code>foo</code> cannot be used as a shortform for <code>?name(foo)</code>, " +"as this can cause typos to go unnoticed: Consider <code>?and(...," +"~poptional)</code>: this requires the package to have <code>required</code> " +"priority, but if you do not type the <code>~</code>, it would require the " +"package name to contain <code>poptional</code>." +msgstr "" + +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Grouping patterns with <code>(...)</code> or writing <code>?or(A,B)</code> " +"as <code>A|B</code> are not supported. We do not believe that the use of " +"<code>|</code> is that common, and the grouping is not necessary without it." +msgstr "" + #. type: Content of: <refentry><refsect1><para> #: apt-patterns.7.xml #, fuzzy diff --git a/doc/po/es.po b/doc/po/es.po index 669ca01fb..40407efbd 100644 --- a/doc/po/es.po +++ b/doc/po/es.po @@ -38,7 +38,7 @@ msgid "" msgstr "" "Project-Id-Version: apt-doc 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-02-18 12:32+0100\n" "PO-Revision-Date: 2014-07-04 01:31+0200\n" "Last-Translator: Omar Campagne <ocampagne@gmail.com>\n" "Language-Team: Debian l10n Spanish <debian-l10n-spanish@lists.debian.org>\n" @@ -899,11 +899,6 @@ msgid "" "searching for new packages to install." msgstr "" -#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> -#: apt.8.xml -msgid "(work-in-progress)" -msgstr "" - #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -915,6 +910,11 @@ msgid "" "option>) versions." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt.8.xml +msgid "(work-in-progress)" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -1222,6 +1222,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-get.8.xml +msgid "" +"Fallback to regular expressions is deprecated in APT 2.0, has been removed " +"in &apt;, except for anchored expressions, and will be removed from &apt-" +"get; in a future version. Use &apt-patterns; instead." +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-get.8.xml #, fuzzy #| msgid "the <literal>Archive:</literal> or <literal>Suite:</literal> line" msgid "" @@ -10652,6 +10660,11 @@ msgstr "" msgid "<code>?and(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN PATTERN ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where all specified patterns match." @@ -10662,6 +10675,11 @@ msgstr "" msgid "<code>?false</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~F</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects nothing." @@ -10672,6 +10690,11 @@ msgstr "" msgid "<code>?not(PATTERN)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>!PATTERN</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where PATTERN does not match." @@ -10682,6 +10705,11 @@ msgstr "" msgid "<code>?or(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN | PATTERN | ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where at least one of the specified patterns match." @@ -10692,11 +10720,28 @@ msgstr "" msgid "<code>?true</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~T</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects all objects." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>(PATTERN)</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Selects the same as <code>PATTERN</code>, can be used to work around " +"precedence, for example, <code>(~ramd64|~ri386)~nfoo</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Narrowing patterns" @@ -10760,6 +10805,11 @@ msgstr "" msgid "<code>?architecture(WILDCARD)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~rWILDCARD</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10772,6 +10822,11 @@ msgstr "" msgid "<code>?automatic</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~M</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that were installed automatically." @@ -10782,6 +10837,11 @@ msgstr "" msgid "<code>?broken</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~b</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have broken dependencies." @@ -10792,6 +10852,11 @@ msgstr "" msgid "<code>?config-files</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~c</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10804,6 +10869,11 @@ msgstr "" msgid "<code>?essential</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~E</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have Essential: yes set in their control file." @@ -10824,6 +10894,11 @@ msgstr "" msgid "<code>?garbage</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~g</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be removed automatically." @@ -10834,6 +10909,11 @@ msgstr "" msgid "<code>?installed</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~i</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that are currently installed." @@ -10844,6 +10924,11 @@ msgstr "" msgid "<code>?name(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~nREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages where the name matches the given regular expression." @@ -10854,6 +10939,11 @@ msgstr "" msgid "<code>?obsolete</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~o</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that no longer exist in repositories." @@ -10864,6 +10954,11 @@ msgstr "" msgid "<code>?upgradable</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~U</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be upgraded (have a newer candidate)." @@ -10874,6 +10969,11 @@ msgstr "" msgid "<code>?virtual</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~v</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10897,6 +10997,11 @@ msgstr "" msgid "<code>?archive(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~AREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10910,6 +11015,11 @@ msgstr "" msgid "<code>?origin(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~OREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10923,6 +11033,11 @@ msgstr "" msgid "<code>?section(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~sREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10934,6 +11049,11 @@ msgstr "" msgid "<code>?source-package(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~eREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10958,6 +11078,11 @@ msgstr "" msgid "<code>?version(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~VREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10987,6 +11112,18 @@ msgstr "" msgid "Purge all packages that only have configuration files left" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>apt list '~i !~M (~slibs|~sperl|~spython)'</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"List all manually-installed packages in sections matching libs, perl, or " +"python." +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Migrating from aptitude" @@ -11001,11 +11138,6 @@ msgstr "" #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> #: apt-patterns.7.xml -msgid "Only long forms — the ones starting with ? — are supported" -msgstr "" - -#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> -#: apt-patterns.7.xml msgid "" "Syntax is uniform: If there is an opening parenthesis after a term, it is " "always assumed to be the beginning of an argument list." @@ -11046,6 +11178,24 @@ msgstr "" msgid "?narrow accepts infinite arguments" msgstr "" +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"<code>foo</code> cannot be used as a shortform for <code>?name(foo)</code>, " +"as this can cause typos to go unnoticed: Consider <code>?and(...," +"~poptional)</code>: this requires the package to have <code>required</code> " +"priority, but if you do not type the <code>~</code>, it would require the " +"package name to contain <code>poptional</code>." +msgstr "" + +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Grouping patterns with <code>(...)</code> or writing <code>?or(A,B)</code> " +"as <code>A|B</code> are not supported. We do not believe that the use of " +"<code>|</code> is that common, and the grouping is not necessary without it." +msgstr "" + #. type: Content of: <refentry><refsect1><para> #: apt-patterns.7.xml #, fuzzy diff --git a/doc/po/fr.po b/doc/po/fr.po index 38b68a71e..2062320e9 100644 --- a/doc/po/fr.po +++ b/doc/po/fr.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: apt-doc 1.8.0\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-02-18 12:32+0100\n" "PO-Revision-Date: 2019-05-01 17:00+0100\n" "Last-Translator: Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>\n" "Language-Team: French <debian-l10n-french@lists.debian.org>\n" @@ -855,11 +855,6 @@ msgstr "" "d'autoriser &apt; à supprimer un paquet ou lors d'une recherche de nouveaux " "paquets à installer." -#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> -#: apt.8.xml -msgid "(work-in-progress)" -msgstr "(travail en cours)" - #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -878,6 +873,11 @@ msgstr "" "mises à jour <option>--upgradeable</option>, ou toutes les versions " "disponibles <option>--all-versions</option>." +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt.8.xml +msgid "(work-in-progress)" +msgstr "(travail en cours)" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -1190,6 +1190,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-get.8.xml msgid "" +"Fallback to regular expressions is deprecated in APT 2.0, has been removed " +"in &apt;, except for anchored expressions, and will be removed from &apt-" +"get; in a future version. Use &apt-patterns; instead." +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-get.8.xml +msgid "" "<literal>reinstall</literal> is an alias for <literal>install --reinstall</" "literal>." msgstr "" @@ -11102,6 +11110,11 @@ msgstr "" msgid "<code>?and(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN PATTERN ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where all specified patterns match." @@ -11112,6 +11125,11 @@ msgstr "" msgid "<code>?false</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~F</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects nothing." @@ -11122,6 +11140,11 @@ msgstr "" msgid "<code>?not(PATTERN)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>!PATTERN</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where PATTERN does not match." @@ -11132,6 +11155,11 @@ msgstr "" msgid "<code>?or(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN | PATTERN | ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where at least one of the specified patterns match." @@ -11142,11 +11170,28 @@ msgstr "" msgid "<code>?true</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~T</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects all objects." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>(PATTERN)</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Selects the same as <code>PATTERN</code>, can be used to work around " +"precedence, for example, <code>(~ramd64|~ri386)~nfoo</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Narrowing patterns" @@ -11210,6 +11255,11 @@ msgstr "" msgid "<code>?architecture(WILDCARD)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~rWILDCARD</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11222,6 +11272,11 @@ msgstr "" msgid "<code>?automatic</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~M</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that were installed automatically." @@ -11232,6 +11287,11 @@ msgstr "" msgid "<code>?broken</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~b</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have broken dependencies." @@ -11242,6 +11302,11 @@ msgstr "" msgid "<code>?config-files</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~c</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11254,6 +11319,11 @@ msgstr "" msgid "<code>?essential</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~E</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have Essential: yes set in their control file." @@ -11274,6 +11344,11 @@ msgstr "" msgid "<code>?garbage</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~g</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be removed automatically." @@ -11284,6 +11359,11 @@ msgstr "" msgid "<code>?installed</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~i</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that are currently installed." @@ -11294,6 +11374,11 @@ msgstr "" msgid "<code>?name(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~nREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages where the name matches the given regular expression." @@ -11304,6 +11389,11 @@ msgstr "" msgid "<code>?obsolete</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~o</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that no longer exist in repositories." @@ -11314,6 +11404,11 @@ msgstr "" msgid "<code>?upgradable</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~U</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be upgraded (have a newer candidate)." @@ -11324,6 +11419,11 @@ msgstr "" msgid "<code>?virtual</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~v</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11349,6 +11449,11 @@ msgstr "" msgid "<code>?archive(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~AREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11362,6 +11467,11 @@ msgstr "" msgid "<code>?origin(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~OREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11375,6 +11485,11 @@ msgstr "" msgid "<code>?section(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~sREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11386,6 +11501,11 @@ msgstr "" msgid "<code>?source-package(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~eREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11410,6 +11530,11 @@ msgstr "" msgid "<code>?version(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~VREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11439,6 +11564,18 @@ msgstr "" msgid "Purge all packages that only have configuration files left" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>apt list '~i !~M (~slibs|~sperl|~spython)'</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"List all manually-installed packages in sections matching libs, perl, or " +"python." +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Migrating from aptitude" @@ -11453,11 +11590,6 @@ msgstr "" #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> #: apt-patterns.7.xml -msgid "Only long forms — the ones starting with ? — are supported" -msgstr "" - -#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> -#: apt-patterns.7.xml msgid "" "Syntax is uniform: If there is an opening parenthesis after a term, it is " "always assumed to be the beginning of an argument list." @@ -11498,6 +11630,24 @@ msgstr "" msgid "?narrow accepts infinite arguments" msgstr "" +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"<code>foo</code> cannot be used as a shortform for <code>?name(foo)</code>, " +"as this can cause typos to go unnoticed: Consider <code>?and(...," +"~poptional)</code>: this requires the package to have <code>required</code> " +"priority, but if you do not type the <code>~</code>, it would require the " +"package name to contain <code>poptional</code>." +msgstr "" + +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Grouping patterns with <code>(...)</code> or writing <code>?or(A,B)</code> " +"as <code>A|B</code> are not supported. We do not believe that the use of " +"<code>|</code> is that common, and the grouping is not necessary without it." +msgstr "" + #. type: Content of: <refentry><refsect1><para> #: apt-patterns.7.xml #, fuzzy diff --git a/doc/po/it.po b/doc/po/it.po index daff003ef..432c466ec 100644 --- a/doc/po/it.po +++ b/doc/po/it.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: apt-doc 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-02-18 12:32+0100\n" "PO-Revision-Date: 2017-03-27 19:05+0200\n" "Last-Translator: Beatrice Torracca <beatricet@libero.it>\n" "Language-Team: Italian <debian-l10n-italian@lists.debian.org>\n" @@ -905,11 +905,6 @@ msgstr "" "permettere ad &apt; di rimuovere un pacchetto o quando si cercano nuovi " "pacchetti da installare." -#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> -#: apt.8.xml -msgid "(work-in-progress)" -msgstr "(lavoro-in-corso)" - #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -927,6 +922,11 @@ msgstr "" "versioni installate (<option>--installed</option>), aggiornabili (<option>--" "upgradeable</option>) o disponibili (<option>--all-versions</option>)." +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt.8.xml +msgid "(work-in-progress)" +msgstr "(lavoro-in-corso)" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -1235,6 +1235,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-get.8.xml +msgid "" +"Fallback to regular expressions is deprecated in APT 2.0, has been removed " +"in &apt;, except for anchored expressions, and will be removed from &apt-" +"get; in a future version. Use &apt-patterns; instead." +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-get.8.xml #, fuzzy #| msgid "" #| "A new <literal>list</literal> command is available similar to " @@ -10828,6 +10836,11 @@ msgstr "" msgid "<code>?and(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN PATTERN ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where all specified patterns match." @@ -10838,6 +10851,13 @@ msgstr "" msgid "<code>?false</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~F</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects nothing." @@ -10848,6 +10868,13 @@ msgstr "" msgid "<code>?not(PATTERN)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>!PATTERN</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where PATTERN does not match." @@ -10858,6 +10885,11 @@ msgstr "" msgid "<code>?or(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN | PATTERN | ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where at least one of the specified patterns match." @@ -10868,11 +10900,32 @@ msgstr "" msgid "<code>?true</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~T</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects all objects." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>(PATTERN)</code>" +msgstr "<option>--installed</option>" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Selects the same as <code>PATTERN</code>, can be used to work around " +"precedence, for example, <code>(~ramd64|~ri386)~nfoo</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml #, fuzzy @@ -10942,6 +10995,13 @@ msgstr "" msgid "<code>?architecture(WILDCARD)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~rWILDCARD</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10954,6 +11014,13 @@ msgstr "" msgid "<code>?automatic</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~M</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that were installed automatically." @@ -10964,6 +11031,13 @@ msgstr "" msgid "<code>?broken</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~b</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have broken dependencies." @@ -10974,6 +11048,13 @@ msgstr "" msgid "<code>?config-files</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~c</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10986,6 +11067,13 @@ msgstr "" msgid "<code>?essential</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~E</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have Essential: yes set in their control file." @@ -11006,6 +11094,13 @@ msgstr "" msgid "<code>?garbage</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~g</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be removed automatically." @@ -11018,6 +11113,13 @@ msgstr "" msgid "<code>?installed</code>" msgstr "<option>--installed</option>" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~i</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that are currently installed." @@ -11028,6 +11130,13 @@ msgstr "" msgid "<code>?name(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~nREGEX</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages where the name matches the given regular expression." @@ -11038,6 +11147,13 @@ msgstr "" msgid "<code>?obsolete</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~o</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that no longer exist in repositories." @@ -11048,6 +11164,13 @@ msgstr "" msgid "<code>?upgradable</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~U</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be upgraded (have a newer candidate)." @@ -11058,6 +11181,13 @@ msgstr "" msgid "<code>?virtual</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~v</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11085,6 +11215,13 @@ msgstr "" msgid "<code>?archive(REGEX)</code>" msgstr "<option>--installed</option>" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~AREGEX</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11100,6 +11237,13 @@ msgstr "" msgid "<code>?origin(REGEX)</code>" msgstr "<option>--installed</option>" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~OREGEX</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11115,6 +11259,13 @@ msgstr "" msgid "<code>?section(REGEX)</code>" msgstr "<option>--installed</option>" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~sREGEX</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11126,6 +11277,13 @@ msgstr "" msgid "<code>?source-package(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~eREGEX</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11152,6 +11310,13 @@ msgstr "" msgid "<code>?version(REGEX)</code>" msgstr "<option>--installed</option>" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +#, fuzzy +#| msgid "<option>--installed</option>" +msgid "<code>~VREGEX</code>" +msgstr "<option>--installed</option>" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11181,6 +11346,18 @@ msgstr "" msgid "Purge all packages that only have configuration files left" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>apt list '~i !~M (~slibs|~sperl|~spython)'</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"List all manually-installed packages in sections matching libs, perl, or " +"python." +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Migrating from aptitude" @@ -11195,11 +11372,6 @@ msgstr "" #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> #: apt-patterns.7.xml -msgid "Only long forms — the ones starting with ? — are supported" -msgstr "" - -#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> -#: apt-patterns.7.xml msgid "" "Syntax is uniform: If there is an opening parenthesis after a term, it is " "always assumed to be the beginning of an argument list." @@ -11240,6 +11412,24 @@ msgstr "" msgid "?narrow accepts infinite arguments" msgstr "" +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"<code>foo</code> cannot be used as a shortform for <code>?name(foo)</code>, " +"as this can cause typos to go unnoticed: Consider <code>?and(...," +"~poptional)</code>: this requires the package to have <code>required</code> " +"priority, but if you do not type the <code>~</code>, it would require the " +"package name to contain <code>poptional</code>." +msgstr "" + +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Grouping patterns with <code>(...)</code> or writing <code>?or(A,B)</code> " +"as <code>A|B</code> are not supported. We do not believe that the use of " +"<code>|</code> is that common, and the grouping is not necessary without it." +msgstr "" + #. type: Content of: <refentry><refsect1><para> #: apt-patterns.7.xml #, fuzzy diff --git a/doc/po/ja.po b/doc/po/ja.po index 53644d8ea..5eaecbb73 100644 --- a/doc/po/ja.po +++ b/doc/po/ja.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: apt-doc 1.4\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-02-18 12:32+0100\n" "PO-Revision-Date: 2017-01-06 04:50+0900\n" "Last-Translator: Takuma Yamada <tyamada@takumayamada.com>\n" "Language-Team: Japanese <debian-japanese@lists.debian.org>\n" @@ -894,11 +894,6 @@ msgstr "" "含みます。例えば &apt; にパッケージの削除をさせる前や、インストールする新しい" "パッケージを検索するときに、この情報を見て参考にすることができます。" -#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> -#: apt.8.xml -msgid "(work-in-progress)" -msgstr "(作業中)" - #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -916,6 +911,11 @@ msgstr "" "versions</option>) の一覧オプションでも、パッケージ名をマッチさせる &glob; パ" "ターンをサポートしています。" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt.8.xml +msgid "(work-in-progress)" +msgstr "(作業中)" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -1210,6 +1210,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-get.8.xml +msgid "" +"Fallback to regular expressions is deprecated in APT 2.0, has been removed " +"in &apt;, except for anchored expressions, and will be removed from &apt-" +"get; in a future version. Use &apt-patterns; instead." +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-get.8.xml #, fuzzy #| msgid "the <literal>Archive:</literal> or <literal>Suite:</literal> line" msgid "" @@ -10433,6 +10441,11 @@ msgstr "" msgid "<code>?and(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN PATTERN ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where all specified patterns match." @@ -10443,6 +10456,11 @@ msgstr "" msgid "<code>?false</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~F</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects nothing." @@ -10453,6 +10471,11 @@ msgstr "" msgid "<code>?not(PATTERN)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>!PATTERN</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where PATTERN does not match." @@ -10463,6 +10486,11 @@ msgstr "" msgid "<code>?or(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN | PATTERN | ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where at least one of the specified patterns match." @@ -10473,11 +10501,28 @@ msgstr "" msgid "<code>?true</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~T</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects all objects." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>(PATTERN)</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Selects the same as <code>PATTERN</code>, can be used to work around " +"precedence, for example, <code>(~ramd64|~ri386)~nfoo</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Narrowing patterns" @@ -10541,6 +10586,11 @@ msgstr "" msgid "<code>?architecture(WILDCARD)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~rWILDCARD</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10553,6 +10603,11 @@ msgstr "" msgid "<code>?automatic</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~M</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that were installed automatically." @@ -10563,6 +10618,11 @@ msgstr "" msgid "<code>?broken</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~b</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have broken dependencies." @@ -10573,6 +10633,11 @@ msgstr "" msgid "<code>?config-files</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~c</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10585,6 +10650,11 @@ msgstr "" msgid "<code>?essential</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~E</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have Essential: yes set in their control file." @@ -10605,6 +10675,11 @@ msgstr "" msgid "<code>?garbage</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~g</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be removed automatically." @@ -10615,6 +10690,11 @@ msgstr "" msgid "<code>?installed</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~i</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that are currently installed." @@ -10625,6 +10705,11 @@ msgstr "" msgid "<code>?name(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~nREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages where the name matches the given regular expression." @@ -10635,6 +10720,11 @@ msgstr "" msgid "<code>?obsolete</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~o</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that no longer exist in repositories." @@ -10645,6 +10735,11 @@ msgstr "" msgid "<code>?upgradable</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~U</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be upgraded (have a newer candidate)." @@ -10655,6 +10750,11 @@ msgstr "" msgid "<code>?virtual</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~v</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10680,6 +10780,11 @@ msgstr "" msgid "<code>?archive(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~AREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10693,6 +10798,11 @@ msgstr "" msgid "<code>?origin(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~OREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10706,6 +10816,11 @@ msgstr "" msgid "<code>?section(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~sREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10717,6 +10832,11 @@ msgstr "" msgid "<code>?source-package(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~eREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10741,6 +10861,11 @@ msgstr "" msgid "<code>?version(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~VREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10770,6 +10895,18 @@ msgstr "" msgid "Purge all packages that only have configuration files left" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>apt list '~i !~M (~slibs|~sperl|~spython)'</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"List all manually-installed packages in sections matching libs, perl, or " +"python." +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Migrating from aptitude" @@ -10784,11 +10921,6 @@ msgstr "" #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> #: apt-patterns.7.xml -msgid "Only long forms — the ones starting with ? — are supported" -msgstr "" - -#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> -#: apt-patterns.7.xml msgid "" "Syntax is uniform: If there is an opening parenthesis after a term, it is " "always assumed to be the beginning of an argument list." @@ -10829,6 +10961,24 @@ msgstr "" msgid "?narrow accepts infinite arguments" msgstr "" +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"<code>foo</code> cannot be used as a shortform for <code>?name(foo)</code>, " +"as this can cause typos to go unnoticed: Consider <code>?and(...," +"~poptional)</code>: this requires the package to have <code>required</code> " +"priority, but if you do not type the <code>~</code>, it would require the " +"package name to contain <code>poptional</code>." +msgstr "" + +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Grouping patterns with <code>(...)</code> or writing <code>?or(A,B)</code> " +"as <code>A|B</code> are not supported. We do not believe that the use of " +"<code>|</code> is that common, and the grouping is not necessary without it." +msgstr "" + #. type: Content of: <refentry><refsect1><para> #: apt-patterns.7.xml #, fuzzy diff --git a/doc/po/nl.po b/doc/po/nl.po index 1141cf2fe..ebf1a8567 100644 --- a/doc/po/nl.po +++ b/doc/po/nl.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: apt-doc 1.8.0~rc3\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-02-18 12:32+0100\n" "PO-Revision-Date: 2019-02-16 20:46+0100\n" "Last-Translator: Frans Spiesschaert <Frans.Spiesschaert@yucom.be>\n" "Language-Team: Debian Dutch l10n Team <debian-l10n-dutch@lists.debian.org>\n" @@ -914,11 +914,6 @@ msgstr "" "vooraleer u &apt; toestaat om een pakket te verwijderen of bij het zoeken " "naar nieuw te installeren pakketten." -#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> -#: apt.8.xml -msgid "(work-in-progress)" -msgstr "(werk-in-uitvoering)" - #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -937,6 +932,11 @@ msgstr "" "opwaardeerbare (<option>--upgradable</option>) of alle beschikbare " "(<option>--all-versions</option>) versies weer te geven." +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt.8.xml +msgid "(work-in-progress)" +msgstr "(werk-in-uitvoering)" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -1257,6 +1257,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-get.8.xml msgid "" +"Fallback to regular expressions is deprecated in APT 2.0, has been removed " +"in &apt;, except for anchored expressions, and will be removed from &apt-" +"get; in a future version. Use &apt-patterns; instead." +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-get.8.xml +msgid "" "<literal>reinstall</literal> is an alias for <literal>install --reinstall</" "literal>." msgstr "" @@ -11299,6 +11307,11 @@ msgstr "" msgid "<code>?and(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN PATTERN ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where all specified patterns match." @@ -11309,6 +11322,11 @@ msgstr "" msgid "<code>?false</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~F</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects nothing." @@ -11319,6 +11337,11 @@ msgstr "" msgid "<code>?not(PATTERN)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>!PATTERN</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where PATTERN does not match." @@ -11329,6 +11352,11 @@ msgstr "" msgid "<code>?or(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN | PATTERN | ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where at least one of the specified patterns match." @@ -11339,11 +11367,28 @@ msgstr "" msgid "<code>?true</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~T</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects all objects." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>(PATTERN)</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Selects the same as <code>PATTERN</code>, can be used to work around " +"precedence, for example, <code>(~ramd64|~ri386)~nfoo</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Narrowing patterns" @@ -11407,6 +11452,11 @@ msgstr "" msgid "<code>?architecture(WILDCARD)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~rWILDCARD</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11419,6 +11469,11 @@ msgstr "" msgid "<code>?automatic</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~M</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that were installed automatically." @@ -11429,6 +11484,11 @@ msgstr "" msgid "<code>?broken</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~b</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have broken dependencies." @@ -11439,6 +11499,11 @@ msgstr "" msgid "<code>?config-files</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~c</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11451,6 +11516,11 @@ msgstr "" msgid "<code>?essential</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~E</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have Essential: yes set in their control file." @@ -11471,6 +11541,11 @@ msgstr "" msgid "<code>?garbage</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~g</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be removed automatically." @@ -11481,6 +11556,11 @@ msgstr "" msgid "<code>?installed</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~i</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that are currently installed." @@ -11491,6 +11571,11 @@ msgstr "" msgid "<code>?name(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~nREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages where the name matches the given regular expression." @@ -11501,6 +11586,11 @@ msgstr "" msgid "<code>?obsolete</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~o</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that no longer exist in repositories." @@ -11511,6 +11601,11 @@ msgstr "" msgid "<code>?upgradable</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~U</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be upgraded (have a newer candidate)." @@ -11521,6 +11616,11 @@ msgstr "" msgid "<code>?virtual</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~v</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11546,6 +11646,11 @@ msgstr "" msgid "<code>?archive(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~AREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11559,6 +11664,11 @@ msgstr "" msgid "<code>?origin(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~OREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11572,6 +11682,11 @@ msgstr "" msgid "<code>?section(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~sREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11583,6 +11698,11 @@ msgstr "" msgid "<code>?source-package(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~eREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11607,6 +11727,11 @@ msgstr "" msgid "<code>?version(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~VREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11636,6 +11761,18 @@ msgstr "" msgid "Purge all packages that only have configuration files left" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>apt list '~i !~M (~slibs|~sperl|~spython)'</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"List all manually-installed packages in sections matching libs, perl, or " +"python." +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Migrating from aptitude" @@ -11650,11 +11787,6 @@ msgstr "" #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> #: apt-patterns.7.xml -msgid "Only long forms — the ones starting with ? — are supported" -msgstr "" - -#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> -#: apt-patterns.7.xml msgid "" "Syntax is uniform: If there is an opening parenthesis after a term, it is " "always assumed to be the beginning of an argument list." @@ -11695,6 +11827,24 @@ msgstr "" msgid "?narrow accepts infinite arguments" msgstr "" +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"<code>foo</code> cannot be used as a shortform for <code>?name(foo)</code>, " +"as this can cause typos to go unnoticed: Consider <code>?and(...," +"~poptional)</code>: this requires the package to have <code>required</code> " +"priority, but if you do not type the <code>~</code>, it would require the " +"package name to contain <code>poptional</code>." +msgstr "" + +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Grouping patterns with <code>(...)</code> or writing <code>?or(A,B)</code> " +"as <code>A|B</code> are not supported. We do not believe that the use of " +"<code>|</code> is that common, and the grouping is not necessary without it." +msgstr "" + #. type: Content of: <refentry><refsect1><para> #: apt-patterns.7.xml #, fuzzy diff --git a/doc/po/pl.po b/doc/po/pl.po index 712c0c967..e57ef8da3 100644 --- a/doc/po/pl.po +++ b/doc/po/pl.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: apt-doc 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-02-18 12:32+0100\n" "PO-Revision-Date: 2014-07-04 02:13+0200\n" "Last-Translator: Robert Luberda <robert@debian.org>\n" "Language-Team: Polish <manpages-pl-list@lists.sourceforge.net>\n" @@ -861,11 +861,6 @@ msgid "" "searching for new packages to install." msgstr "" -#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> -#: apt.8.xml -msgid "(work-in-progress)" -msgstr "" - #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -877,6 +872,11 @@ msgid "" "option>) versions." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt.8.xml +msgid "(work-in-progress)" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -1200,6 +1200,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-get.8.xml +msgid "" +"Fallback to regular expressions is deprecated in APT 2.0, has been removed " +"in &apt;, except for anchored expressions, and will be removed from &apt-" +"get; in a future version. Use &apt-patterns; instead." +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-get.8.xml #, fuzzy #| msgid "the <literal>Archive:</literal> or <literal>Suite:</literal> line" msgid "" @@ -9809,6 +9817,11 @@ msgstr "" msgid "<code>?and(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN PATTERN ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where all specified patterns match." @@ -9819,6 +9832,11 @@ msgstr "" msgid "<code>?false</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~F</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects nothing." @@ -9829,6 +9847,11 @@ msgstr "" msgid "<code>?not(PATTERN)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>!PATTERN</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where PATTERN does not match." @@ -9839,6 +9862,11 @@ msgstr "" msgid "<code>?or(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN | PATTERN | ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where at least one of the specified patterns match." @@ -9849,11 +9877,28 @@ msgstr "" msgid "<code>?true</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~T</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects all objects." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>(PATTERN)</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Selects the same as <code>PATTERN</code>, can be used to work around " +"precedence, for example, <code>(~ramd64|~ri386)~nfoo</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Narrowing patterns" @@ -9917,6 +9962,11 @@ msgstr "" msgid "<code>?architecture(WILDCARD)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~rWILDCARD</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -9929,6 +9979,11 @@ msgstr "" msgid "<code>?automatic</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~M</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that were installed automatically." @@ -9939,6 +9994,11 @@ msgstr "" msgid "<code>?broken</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~b</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have broken dependencies." @@ -9949,6 +10009,11 @@ msgstr "" msgid "<code>?config-files</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~c</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -9961,6 +10026,11 @@ msgstr "" msgid "<code>?essential</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~E</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have Essential: yes set in their control file." @@ -9981,6 +10051,11 @@ msgstr "" msgid "<code>?garbage</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~g</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be removed automatically." @@ -9991,6 +10066,11 @@ msgstr "" msgid "<code>?installed</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~i</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that are currently installed." @@ -10001,6 +10081,11 @@ msgstr "" msgid "<code>?name(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~nREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages where the name matches the given regular expression." @@ -10011,6 +10096,11 @@ msgstr "" msgid "<code>?obsolete</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~o</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that no longer exist in repositories." @@ -10021,6 +10111,11 @@ msgstr "" msgid "<code>?upgradable</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~U</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be upgraded (have a newer candidate)." @@ -10031,6 +10126,11 @@ msgstr "" msgid "<code>?virtual</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~v</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10054,6 +10154,11 @@ msgstr "" msgid "<code>?archive(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~AREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10067,6 +10172,11 @@ msgstr "" msgid "<code>?origin(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~OREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10080,6 +10190,11 @@ msgstr "" msgid "<code>?section(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~sREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10091,6 +10206,11 @@ msgstr "" msgid "<code>?source-package(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~eREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10115,6 +10235,11 @@ msgstr "" msgid "<code>?version(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~VREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -10144,6 +10269,18 @@ msgstr "" msgid "Purge all packages that only have configuration files left" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>apt list '~i !~M (~slibs|~sperl|~spython)'</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"List all manually-installed packages in sections matching libs, perl, or " +"python." +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Migrating from aptitude" @@ -10158,11 +10295,6 @@ msgstr "" #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> #: apt-patterns.7.xml -msgid "Only long forms — the ones starting with ? — are supported" -msgstr "" - -#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> -#: apt-patterns.7.xml msgid "" "Syntax is uniform: If there is an opening parenthesis after a term, it is " "always assumed to be the beginning of an argument list." @@ -10203,6 +10335,24 @@ msgstr "" msgid "?narrow accepts infinite arguments" msgstr "" +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"<code>foo</code> cannot be used as a shortform for <code>?name(foo)</code>, " +"as this can cause typos to go unnoticed: Consider <code>?and(...," +"~poptional)</code>: this requires the package to have <code>required</code> " +"priority, but if you do not type the <code>~</code>, it would require the " +"package name to contain <code>poptional</code>." +msgstr "" + +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Grouping patterns with <code>(...)</code> or writing <code>?or(A,B)</code> " +"as <code>A|B</code> are not supported. We do not believe that the use of " +"<code>|</code> is that common, and the grouping is not necessary without it." +msgstr "" + #. type: Content of: <refentry><refsect1><para> #: apt-patterns.7.xml #, fuzzy diff --git a/doc/po/pt.po b/doc/po/pt.po index 0893cf91f..64d0b9d50 100644 --- a/doc/po/pt.po +++ b/doc/po/pt.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.8.0\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-02-18 12:32+0100\n" "PO-Revision-Date: 2019-04-07 22:02+0000\n" "Last-Translator: Américo Monteiro <a_monteiro@gmx.com>\n" "Language-Team: Portuguese <>\n" @@ -899,11 +899,6 @@ msgstr "" "Pode, por exemplo, ser útil para ver esta informação antes de permitir ao " "&apt; remover um pacote ou enquanto procura por novos pacotes para instalar." -#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> -#: apt.8.xml -msgid "(work-in-progress)" -msgstr "(work-in-progress)" - #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -921,6 +916,11 @@ msgstr "" "actualizáveis (<option>--upgradeable</option>) ou todas as versões " "disponíveis (<option>--all-versions</option>)." +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt.8.xml +msgid "(work-in-progress)" +msgstr "(work-in-progress)" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -1227,6 +1227,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-get.8.xml msgid "" +"Fallback to regular expressions is deprecated in APT 2.0, has been removed " +"in &apt;, except for anchored expressions, and will be removed from &apt-" +"get; in a future version. Use &apt-patterns; instead." +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-get.8.xml +msgid "" "<literal>reinstall</literal> is an alias for <literal>install --reinstall</" "literal>." msgstr "" @@ -10995,6 +11003,11 @@ msgstr "" msgid "<code>?and(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN PATTERN ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where all specified patterns match." @@ -11005,6 +11018,11 @@ msgstr "" msgid "<code>?false</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~F</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects nothing." @@ -11015,6 +11033,11 @@ msgstr "" msgid "<code>?not(PATTERN)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>!PATTERN</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where PATTERN does not match." @@ -11025,6 +11048,11 @@ msgstr "" msgid "<code>?or(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN | PATTERN | ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where at least one of the specified patterns match." @@ -11035,11 +11063,28 @@ msgstr "" msgid "<code>?true</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~T</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects all objects." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>(PATTERN)</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Selects the same as <code>PATTERN</code>, can be used to work around " +"precedence, for example, <code>(~ramd64|~ri386)~nfoo</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Narrowing patterns" @@ -11103,6 +11148,11 @@ msgstr "" msgid "<code>?architecture(WILDCARD)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~rWILDCARD</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11115,6 +11165,11 @@ msgstr "" msgid "<code>?automatic</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~M</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that were installed automatically." @@ -11125,6 +11180,11 @@ msgstr "" msgid "<code>?broken</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~b</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have broken dependencies." @@ -11135,6 +11195,11 @@ msgstr "" msgid "<code>?config-files</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~c</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11147,6 +11212,11 @@ msgstr "" msgid "<code>?essential</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~E</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have Essential: yes set in their control file." @@ -11167,6 +11237,11 @@ msgstr "" msgid "<code>?garbage</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~g</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be removed automatically." @@ -11177,6 +11252,11 @@ msgstr "" msgid "<code>?installed</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~i</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that are currently installed." @@ -11187,6 +11267,11 @@ msgstr "" msgid "<code>?name(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~nREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages where the name matches the given regular expression." @@ -11197,6 +11282,11 @@ msgstr "" msgid "<code>?obsolete</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~o</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that no longer exist in repositories." @@ -11207,6 +11297,11 @@ msgstr "" msgid "<code>?upgradable</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~U</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be upgraded (have a newer candidate)." @@ -11217,6 +11312,11 @@ msgstr "" msgid "<code>?virtual</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~v</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11242,6 +11342,11 @@ msgstr "" msgid "<code>?archive(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~AREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11255,6 +11360,11 @@ msgstr "" msgid "<code>?origin(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~OREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11268,6 +11378,11 @@ msgstr "" msgid "<code>?section(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~sREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11279,6 +11394,11 @@ msgstr "" msgid "<code>?source-package(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~eREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11303,6 +11423,11 @@ msgstr "" msgid "<code>?version(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~VREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -11332,6 +11457,18 @@ msgstr "" msgid "Purge all packages that only have configuration files left" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>apt list '~i !~M (~slibs|~sperl|~spython)'</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"List all manually-installed packages in sections matching libs, perl, or " +"python." +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Migrating from aptitude" @@ -11346,11 +11483,6 @@ msgstr "" #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> #: apt-patterns.7.xml -msgid "Only long forms — the ones starting with ? — are supported" -msgstr "" - -#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> -#: apt-patterns.7.xml msgid "" "Syntax is uniform: If there is an opening parenthesis after a term, it is " "always assumed to be the beginning of an argument list." @@ -11391,6 +11523,24 @@ msgstr "" msgid "?narrow accepts infinite arguments" msgstr "" +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"<code>foo</code> cannot be used as a shortform for <code>?name(foo)</code>, " +"as this can cause typos to go unnoticed: Consider <code>?and(...," +"~poptional)</code>: this requires the package to have <code>required</code> " +"priority, but if you do not type the <code>~</code>, it would require the " +"package name to contain <code>poptional</code>." +msgstr "" + +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Grouping patterns with <code>(...)</code> or writing <code>?or(A,B)</code> " +"as <code>A|B</code> are not supported. We do not believe that the use of " +"<code>|</code> is that common, and the grouping is not necessary without it." +msgstr "" + #. type: Content of: <refentry><refsect1><para> #: apt-patterns.7.xml #, fuzzy diff --git a/doc/po/pt_BR.po b/doc/po/pt_BR.po index 9b00067ca..88fb24f04 100644 --- a/doc/po/pt_BR.po +++ b/doc/po/pt_BR.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: apt-doc 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-02-18 12:32+0100\n" "PO-Revision-Date: 2004-09-20 17:02+0000\n" "Last-Translator: André Luís Lopes <andrelop@debian.org>\n" "Language-Team: <debian-l10n-portuguese@lists.debian.org>\n" @@ -656,11 +656,6 @@ msgid "" "searching for new packages to install." msgstr "" -#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> -#: apt.8.xml -msgid "(work-in-progress)" -msgstr "" - #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -672,6 +667,11 @@ msgid "" "option>) versions." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt.8.xml +msgid "(work-in-progress)" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.8.xml msgid "" @@ -880,6 +880,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-get.8.xml +msgid "" +"Fallback to regular expressions is deprecated in APT 2.0, has been removed " +"in &apt;, except for anchored expressions, and will be removed from &apt-" +"get; in a future version. Use &apt-patterns; instead." +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-get.8.xml #, fuzzy msgid "" "<literal>reinstall</literal> is an alias for <literal>install --reinstall</" @@ -8106,6 +8114,11 @@ msgstr "" msgid "<code>?and(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN PATTERN ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where all specified patterns match." @@ -8116,6 +8129,11 @@ msgstr "" msgid "<code>?false</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~F</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects nothing." @@ -8126,6 +8144,11 @@ msgstr "" msgid "<code>?not(PATTERN)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>!PATTERN</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where PATTERN does not match." @@ -8136,6 +8159,11 @@ msgstr "" msgid "<code>?or(PATTERN, PATTERN, ...)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>PATTERN | PATTERN | ...</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects objects where at least one of the specified patterns match." @@ -8146,11 +8174,28 @@ msgstr "" msgid "<code>?true</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~T</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects all objects." msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>(PATTERN)</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Selects the same as <code>PATTERN</code>, can be used to work around " +"precedence, for example, <code>(~ramd64|~ri386)~nfoo</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Narrowing patterns" @@ -8214,6 +8259,11 @@ msgstr "" msgid "<code>?architecture(WILDCARD)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~rWILDCARD</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8226,6 +8276,11 @@ msgstr "" msgid "<code>?automatic</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~M</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that were installed automatically." @@ -8236,6 +8291,11 @@ msgstr "" msgid "<code>?broken</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~b</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have broken dependencies." @@ -8246,6 +8306,11 @@ msgstr "" msgid "<code>?config-files</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~c</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8258,6 +8323,11 @@ msgstr "" msgid "<code>?essential</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~E</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that have Essential: yes set in their control file." @@ -8278,6 +8348,11 @@ msgstr "" msgid "<code>?garbage</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~g</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be removed automatically." @@ -8288,6 +8363,11 @@ msgstr "" msgid "<code>?installed</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~i</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that are currently installed." @@ -8298,6 +8378,11 @@ msgstr "" msgid "<code>?name(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~nREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages where the name matches the given regular expression." @@ -8308,6 +8393,11 @@ msgstr "" msgid "<code>?obsolete</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~o</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that no longer exist in repositories." @@ -8318,6 +8408,11 @@ msgstr "" msgid "<code>?upgradable</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~U</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "Selects packages that can be upgraded (have a newer candidate)." @@ -8328,6 +8423,11 @@ msgstr "" msgid "<code>?virtual</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~v</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8351,6 +8451,11 @@ msgstr "" msgid "<code>?archive(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~AREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8364,6 +8469,11 @@ msgstr "" msgid "<code>?origin(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~OREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8377,6 +8487,11 @@ msgstr "" msgid "<code>?section(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~sREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8388,6 +8503,11 @@ msgstr "" msgid "<code>?source-package(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~eREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8412,6 +8532,11 @@ msgstr "" msgid "<code>?version(REGEX)</code>" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>~VREGEX</code>" +msgstr "" + #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-patterns.7.xml msgid "" @@ -8441,6 +8566,18 @@ msgstr "" msgid "Purge all packages that only have configuration files left" msgstr "" +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> +#: apt-patterns.7.xml +msgid "<code>apt list '~i !~M (~slibs|~sperl|~spython)'</code>" +msgstr "" + +#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> +#: apt-patterns.7.xml +msgid "" +"List all manually-installed packages in sections matching libs, perl, or " +"python." +msgstr "" + #. type: Content of: <refentry><refsect1><title> #: apt-patterns.7.xml msgid "Migrating from aptitude" @@ -8455,11 +8592,6 @@ msgstr "" #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> #: apt-patterns.7.xml -msgid "Only long forms — the ones starting with ? — are supported" -msgstr "" - -#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> -#: apt-patterns.7.xml msgid "" "Syntax is uniform: If there is an opening parenthesis after a term, it is " "always assumed to be the beginning of an argument list." @@ -8500,6 +8632,24 @@ msgstr "" msgid "?narrow accepts infinite arguments" msgstr "" +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"<code>foo</code> cannot be used as a shortform for <code>?name(foo)</code>, " +"as this can cause typos to go unnoticed: Consider <code>?and(...," +"~poptional)</code>: this requires the package to have <code>required</code> " +"priority, but if you do not type the <code>~</code>, it would require the " +"package name to contain <code>poptional</code>." +msgstr "" + +#. type: Content of: <refentry><refsect1><itemizedlist><listitem><para> +#: apt-patterns.7.xml +msgid "" +"Grouping patterns with <code>(...)</code> or writing <code>?or(A,B)</code> " +"as <code>A|B</code> are not supported. We do not believe that the use of " +"<code>|</code> is that common, and the grouping is not necessary without it." +msgstr "" + #. type: Content of: <refentry><refsect1><para> #: apt-patterns.7.xml #, fuzzy diff --git a/ftparchive/apt-ftparchive.cc b/ftparchive/apt-ftparchive.cc index 077701cc0..87ce9153c 100644 --- a/ftparchive/apt-ftparchive.cc +++ b/ftparchive/apt-ftparchive.cc @@ -56,6 +56,15 @@ static struct timeval GetTimevalFromSteadyClock() /*{{{*/ return { Time_sec.count(), Time_usec.count() }; } /*}}}*/ +static auto GetTimeDeltaSince(struct timeval StartTime) /*{{{*/ +{ + auto const NewTime = GetTimevalFromSteadyClock(); + std::chrono::duration<double> Delta = + std::chrono::seconds(NewTime.tv_sec - StartTime.tv_sec) + + std::chrono::microseconds(NewTime.tv_usec - StartTime.tv_usec); + return llround(Delta.count()); +} + /*}}}*/ // struct PackageMap - List of all package files in the config file /*{{{*/ // --------------------------------------------------------------------- @@ -241,16 +250,11 @@ bool PackageMap::GenPackages(Configuration &Setup,struct CacheDB::Stats &Stats) << SizeToStr(Size) << "B "; else c0out << ' '; - - struct timeval NewTime = GetTimevalFromSteadyClock(); - std::chrono::duration<double> Delta = - std::chrono::seconds(NewTime.tv_sec - StartTime.tv_sec) + - std::chrono::microseconds(NewTime.tv_sec - StartTime.tv_usec); c0out << Packages.Stats.Packages << " files " << /* SizeToStr(Packages.Stats.MD5Bytes) << "B/" << */ SizeToStr(Packages.Stats.Bytes) << "B " << - TimeToStr(llround(Delta.count())) << endl; + TimeToStr(GetTimeDeltaSince(StartTime)) << endl; if(_config->FindB("APT::FTPArchive::ShowCacheMisses", false) == true) c0out << " Misses in Cache: " << Packages.Stats.Misses<< endl; @@ -328,13 +332,8 @@ bool PackageMap::GenSources(Configuration &Setup,struct CacheDB::Stats &Stats) else c0out << ' '; - struct timeval NewTime = GetTimevalFromSteadyClock(); - std::chrono::duration<double> Delta = - std::chrono::seconds(NewTime.tv_sec - StartTime.tv_sec) + - std::chrono::microseconds(NewTime.tv_sec - StartTime.tv_usec); - c0out << Sources.Stats.Packages << " pkgs in " << - TimeToStr(llround(Delta.count())) << endl; + TimeToStr(GetTimeDeltaSince(StartTime)) << endl; if(_config->FindB("APT::FTPArchive::ShowCacheMisses", false) == true) c0out << " Misses in Cache: " << Sources.Stats.Misses << endl; @@ -444,17 +443,12 @@ bool PackageMap::GenContents(Configuration &Setup, else c0out << ' '; - struct timeval NewTime = GetTimevalFromSteadyClock(); - std::chrono::duration<double> Delta = - std::chrono::seconds(NewTime.tv_sec - StartTime.tv_sec) + - std::chrono::microseconds(NewTime.tv_sec - StartTime.tv_usec); - if(_config->FindB("APT::FTPArchive::ShowCacheMisses", false) == true) c0out << " Misses in Cache: " << Contents.Stats.Misses<< endl; c0out << Contents.Stats.Packages << " files " << SizeToStr(Contents.Stats.Bytes) << "B " << - TimeToStr(llround(Delta.count())) << endl; + TimeToStr(GetTimeDeltaSince(StartTime)) << endl; return true; } @@ -970,12 +964,8 @@ static bool Generate(CommandLine &CmdL) return false; } - struct timeval NewTime = GetTimevalFromSteadyClock(); - std::chrono::duration<double> Delta = - std::chrono::seconds(NewTime.tv_sec - StartTime.tv_sec) + - std::chrono::microseconds(NewTime.tv_sec - StartTime.tv_usec); c1out << "Done. " << SizeToStr(Stats.Bytes) << "B in " << Stats.Packages - << " archives. Took " << TimeToStr(llround(Delta.count())) << endl; + << " archives. Took " << TimeToStr(GetTimeDeltaSince(StartTime)) << endl; UnloadTree(TransList); return true; diff --git a/ftparchive/cachedb.cc b/ftparchive/cachedb.cc index 1890c28d0..dedb01eaa 100644 --- a/ftparchive/cachedb.cc +++ b/ftparchive/cachedb.cc @@ -17,9 +17,6 @@ #include <apt-pkg/fileutl.h> #include <apt-pkg/gpgv.h> #include <apt-pkg/hashes.h> -#include <apt-pkg/md5.h> -#include <apt-pkg/sha1.h> -#include <apt-pkg/sha2.h> #include <apt-pkg/strutl.h> #include <ctype.h> diff --git a/ftparchive/multicompress.cc b/ftparchive/multicompress.cc index f5fe14164..cdaa7a60a 100644 --- a/ftparchive/multicompress.cc +++ b/ftparchive/multicompress.cc @@ -18,8 +18,7 @@ #include <apt-pkg/aptconfiguration.h> #include <apt-pkg/error.h> #include <apt-pkg/fileutl.h> -#include <apt-pkg/hashsum_template.h> -#include <apt-pkg/md5.h> +#include <apt-pkg/hashes.h> #include <apt-pkg/strutl.h> #include <ctype.h> @@ -267,7 +266,7 @@ bool MultiCompress::Child(int const &FD) SetNonBlock(FD,false); unsigned char Buffer[32*1024]; unsigned long long FileSize = 0; - MD5Summation MD5; + Hashes MD5(Hashes::MD5SUM); while (1) { WaitFd(FD,false); @@ -315,7 +314,7 @@ bool MultiCompress::Child(int const &FD) } // Compute the hash - MD5Summation OldMD5; + Hashes OldMD5(Hashes::MD5SUM); unsigned long long NewFileSize = 0; while (1) { @@ -330,7 +329,7 @@ bool MultiCompress::Child(int const &FD) CompFd.Close(); // Check the hash - if (OldMD5.Result() == MD5.Result() && + if (OldMD5.GetHashString(Hashes::MD5SUM) == MD5.GetHashString(Hashes::MD5SUM) && FileSize == NewFileSize) { for (Files *I = Outputs; I != 0; I = I->Next) diff --git a/ftparchive/writer.cc b/ftparchive/writer.cc index 078638c41..5dcb98c9c 100644 --- a/ftparchive/writer.cc +++ b/ftparchive/writer.cc @@ -19,10 +19,7 @@ #include <apt-pkg/fileutl.h> #include <apt-pkg/gpgv.h> #include <apt-pkg/hashes.h> -#include <apt-pkg/md5.h> #include <apt-pkg/pkgcache.h> -#include <apt-pkg/sha1.h> -#include <apt-pkg/sha2.h> #include <apt-pkg/strutl.h> #include <apt-pkg/tagfile.h> @@ -493,9 +490,9 @@ bool PackagesWriter::DoPackage(string FileName) string DescriptionMd5; if (LongDescription == false) { - MD5Summation descmd5; + Hashes descmd5(Hashes::MD5SUM); descmd5.Add(desc.c_str()); - DescriptionMd5 = descmd5.Result().Value(); + DescriptionMd5 = descmd5.GetHashString(Hashes::MD5SUM).HashValue(); Changes.push_back(pkgTagSection::Tag::Rewrite("Description-md5", DescriptionMd5)); if (TransWriter != NULL) TransWriter->DoPackage(Package, desc, DescriptionMd5); diff --git a/methods/aptmethod.h b/methods/aptmethod.h index 5d792ceb7..67d5a3a0b 100644 --- a/methods/aptmethod.h +++ b/methods/aptmethod.h @@ -8,6 +8,7 @@ #include <apt-pkg/error.h> #include <apt-pkg/fileutl.h> #include <apt-pkg/netrc.h> +#include <apt-pkg/strutl.h> #include <algorithm> #include <locale> @@ -137,8 +138,11 @@ protected: ALLOW(chown); ALLOW(chown32); ALLOW(clock_getres); + ALLOW(clock_getres_time64); ALLOW(clock_gettime); + ALLOW(clock_gettime64); ALLOW(clock_nanosleep); + ALLOW(clock_nanosleep_time64); ALLOW(close); ALLOW(creat); ALLOW(dup); @@ -166,6 +170,7 @@ protected: ALLOW(ftruncate); ALLOW(ftruncate64); ALLOW(futex); + ALLOW(futex_time64); ALLOW(futimesat); ALLOW(getegid); ALLOW(getegid32); @@ -220,9 +225,11 @@ protected: ALLOW(pipe2); ALLOW(poll); ALLOW(ppoll); + ALLOW(ppoll_time64); ALLOW(prctl); ALLOW(prlimit64); ALLOW(pselect6); + ALLOW(pselect6_time64); ALLOW(read); ALLOW(readv); ALLOW(rename); @@ -264,6 +271,7 @@ protected: ALLOW(unlinkat); ALLOW(utime); ALLOW(utimensat); + ALLOW(utimensat_time64); ALLOW(utimes); ALLOW(write); ALLOW(writev); @@ -277,6 +285,7 @@ protected: ALLOW(recv); ALLOW(recvfrom); ALLOW(recvmmsg); + ALLOW(recvmmsg_time64); ALLOW(recvmsg); ALLOW(send); ALLOW(sendmmsg); @@ -525,6 +534,7 @@ class aptAuthConfMethod : public aptMethod if (uri.User.empty() == false || uri.Password.empty() == false) return true; + _error->PushToStack(); for (auto &authconf : authconfs) { if (authconf->IsOpen() == false) @@ -538,6 +548,17 @@ class aptAuthConfMethod : public aptMethod result &= MaybeAddAuth(*authconf, uri); } + if (not _error->empty()) + { + std::string message; + while (not _error->empty()) + { + _error->PopMessage(message); + Warning("%s", message.c_str()); + } + } + _error->RevertToStack(); + return result; } diff --git a/po/apt-all.pot b/po/apt-all.pot index cd469e0ce..c9c07ef2a 100644 --- a/po/apt-all.pot +++ b/po/apt-all.pot @@ -5,9 +5,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: apt 1.9.5\n" +"Project-Id-Version: apt 1.9.10\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-02-18 12:32+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -842,6 +842,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2006-10-20 21:28+0300\n" "Last-Translator: Ossama M. Khayat <okhayat@yahoo.com>\n" "Language-Team: Arabic <support@arabeyes.org>\n" @@ -855,6 +855,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 0.7.18\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2010-10-02 23:35+0100\n" "Last-Translator: Iñigo Varela <ivarela@softastur.org>\n" "Language-Team: Asturian (ast)\n" @@ -874,6 +874,13 @@ msgstr "" "Nun pudó incrementase'l tamañu de MMap ya que crecer automáticamente ta " "desactivao pol usuariu." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 0.7.21\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2012-06-25 17:23+0300\n" "Last-Translator: Damyan Ivanov <dmn@debian.org>\n" "Language-Team: Bulgarian <dict@fsa-bg.org>\n" @@ -896,6 +896,13 @@ msgstr "" "Неуспех при увеличаване на паметта за MMap. Автоматичното увеличаване е " "забранено от потребителя." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 0.5.26\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2004-05-06 15:25+0100\n" "Last-Translator: Safir Šećerović <sapphire@linux.org.ba>\n" "Language-Team: Bosnian <lokal@lugbih.org>\n" @@ -850,6 +850,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.4~beta1\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2016-12-05 21:09+0100\n" "Last-Translator: Oriol Debian <oriol.debian@gmail.com>\n" "Language-Team: Catalan <debian-l10n-catalan@lists.debian.org>\n" @@ -932,6 +932,13 @@ msgstr "" "No s'ha pogut incrementar la mida del MMap ja que el creixement automàtic " "està deshabilitat per l'usuari." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.4.2\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2017-05-06 11:08+0200\n" "Last-Translator: Miroslav Kure <kurem@debian.cz>\n" "Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n" @@ -902,6 +902,13 @@ msgstr "" "Nelze zvýšit velikost MMapu, protože automatické zvětšování bylo uživatelem " "zakázáno." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2005-06-06 13:46+0100\n" "Last-Translator: Dafydd Harries <daf@muse.19inch.net>\n" "Language-Team: Welsh <cy@pengwyn.linux.org.uk>\n" @@ -873,6 +873,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.4~rc2\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2017-03-02 23:51+0200\n" "Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n" "Language-Team: Danish <debian-l10n-danish@lists.debian.org>\n" @@ -911,6 +911,13 @@ msgstr "" "Kunne ikke øge størrelsen på MMap da automatisk øgning er deaktiveret af " "bruger." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.6\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2018-01-11 21:11+0100\n" "Last-Translator: Holger Wansing <linux@wansing-online.de>\n" "Language-Team: German <debian-l10n-german@lists.debian.org>\n" @@ -947,6 +947,13 @@ msgstr "" "Unmöglich, die Größe der MMap zu erhöhen, da das automatische Anwachsen der " "MMap vom Benutzer deaktiviert ist." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2006-09-19 09:49+0530\n" "Last-Translator: Kinley Tshering <gasepkuenden2k3@hotmail.com>\n" "Language-Team: Dzongkha <pgeyleg@dit.gov.bt>\n" @@ -860,6 +860,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -16,7 +16,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2008-08-26 18:25+0300\n" "Last-Translator: Θανάσης Νάτσης <natsisthanasis@gmail.com>\n" "Language-Team: Greek <debian-l10n-greek@lists.debian.org>\n" @@ -879,6 +879,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -34,7 +34,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 0.8.10\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2016-01-26 01:51+0100\n" "Last-Translator: Manuel \"Venturi\" Porras Peralta <venturi@openmailbox." "org>\n" @@ -995,6 +995,13 @@ msgstr "" "No se pudo incrementar el tamaño de MMap dado que el usuario ha " "deshabilitado el crecimiento automático." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2009-05-17 00:41+0200\n" "Last-Translator: Piarres Beobide <pi@beobide.net>\n" "Language-Team: Euskara <debian-l10n-basque@lists.debian.org>\n" @@ -864,6 +864,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 0.5.26\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2008-12-11 14:52+0200\n" "Last-Translator: Tapio Lehtonen <tale@debian.org>\n" "Language-Team: Finnish <debian-l10n-finnish@lists.debian.org>\n" @@ -858,6 +858,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2019-01-21 09:19+0100\n" "Last-Translator: Julien Patriarca <leatherface@debian.org>\n" "Language-Team: French <debian-l10n-french@lists.debian.org>\n" @@ -944,6 +944,13 @@ msgstr "" "Impossible d'augmenter la taille de la « mmap » car l'augmentation " "automatique a été désactivée par une option utilisateur." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2011-05-12 15:28+0100\n" "Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>\n" "Language-Team: galician <proxecto@trasno.net>\n" @@ -892,6 +892,13 @@ msgstr "" "Non é posíbel aumentar o tamaño de MMap xa que o crecemento automático foi " "desactivado polo usuario." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2016-04-10 19:46+0200\n" "Last-Translator: Gabor Kelemen <kelemeng@ubuntu.com>\n" "Language-Team: Hungarian <gnome-hu-list@gnome.org>\n" @@ -925,6 +925,13 @@ msgstr "" "Nem lehet növelni az MMap méretét, mert a felhasználó letiltotta az " "automatikus emelést." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: apt\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2019-03-04 11:05+0100\n" "Last-Translator: Milo Casagrande <milo@milo.name>\n" "Language-Team: Italian <tp@lists.linux.it>\n" @@ -937,6 +937,13 @@ msgstr "" "Impossibile incrementare la dimensione della MMap poiché il " "ridimensionamento automatico è stato disabilitato dall'utente." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.4\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2017-01-06 04:50+0900\n" "Last-Translator: Takuma Yamada <tyamada@takumayamada.com>\n" "Language-Team: Japanese <debian-japanese@lists.debian.org>\n" @@ -921,6 +921,13 @@ msgid "" msgstr "" "自動増加がユーザによって無効にされているため、MMap のサイズを増やせません。" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2006-10-10 09:48+0700\n" "Last-Translator: Khoem Sokhem <khoemsokhem@khmeros.info>\n" "Language-Team: Khmer <support@khmeros.info>\n" @@ -861,6 +861,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2010-08-30 02:31+0900\n" "Last-Translator: Changwoo Ryu <cwryu@debian.org>\n" "Language-Team: Korean <debian-l10n-korean@lists.debian.org>\n" @@ -861,6 +861,13 @@ msgid "" msgstr "" "mmap 크기를 늘릴 수 없습니다. 자동으로 늘리는 기능을 사용자가 금지했습니다." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2008-05-08 12:48+0200\n" "Last-Translator: Erdal Ronahi <erdal.ronahi@gmail.com>\n" "Language-Team: ku <ubuntu-l10n-kur@lists.ubuntu.com>\n" @@ -849,6 +849,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2008-08-02 01:47-0400\n" "Last-Translator: Gintautas Miliauskas <gintas@akl.lt>\n" "Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n" @@ -856,6 +856,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2008-11-20 23:27+0530\n" "Last-Translator: Sampada <sampadanakhare@gmail.com>\n" "Language-Team: Marathi, janabhaaratii, C-DAC, Mumbai, India " @@ -858,6 +858,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2018-10-30 20:53+0100\n" "Last-Translator: Petter Reinholdtsen <pere@hungry.com>\n" "Language-Team: Norwegian Bokmål <i18n-no@lister.ping.uio.no>\n" @@ -888,6 +888,13 @@ msgstr "" "Klarte ikke øke størrelsen på MMap-en siden automatisk voksing er deaktivert " "av brukeren." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2006-06-12 14:35+0545\n" "Last-Translator: Shiva Pokharel <pokharelshiva@hotmail.com>\n" "Language-Team: Nepali <info@mpp.org.np>\n" @@ -857,6 +857,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.8.0~rc3\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2019-02-16 20:35+0100\n" "Last-Translator: Frans Spiesschaert <Frans.Spiesschaert@yucom.be>\n" "Language-Team: Debian Dutch l10n Team <debian-l10n-dutch@lists.debian.org>\n" @@ -941,6 +941,13 @@ msgstr "" "Kan het formaat van de MMap niet vergroten omdat het automatisch vergroten " "door de gebruiker is uitgeschakeld." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2005-02-14 23:30+0100\n" "Last-Translator: Havard Korsvoll <korsvoll@skulelinux.no>\n" "Language-Team: Norwegian nynorsk <i18n-nn@lister.ping.uio.no>\n" @@ -864,6 +864,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 0.9.7.3\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2012-07-28 21:53+0200\n" "Last-Translator: Michał Kułach <michal.kulach@gmail.com>\n" "Language-Team: Polish <debian-l10n-polish@lists.debian.org>\n" @@ -898,6 +898,13 @@ msgstr "" "Nie udało się zwiększyć rozmiaru MMap, ponieważ automatycznie powiększanie " "zostało wyłączone przez użytkownika." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2012-06-29 15:45+0100\n" "Last-Translator: Miguel Figueiredo <elmig@debianpt.org>\n" "Language-Team: Portuguese <traduz@debianpt.org>\n" @@ -901,6 +901,13 @@ msgstr "" "Não foi possível aumentar o tamanho do MMap pois o crescimento automático " "está desabilitado pelo utilizador." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" diff --git a/po/pt_BR.po b/po/pt_BR.po index bc71a8ff7..3fec6cf4a 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2008-11-17 02:33-0200\n" "Last-Translator: Felipe Augusto van de Wiel (faw) <faw@debian.org>\n" "Language-Team: Brazilian Portuguese <debian-l10n-portuguese@lists.debian." @@ -866,6 +866,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2008-11-15 02:21+0200\n" "Last-Translator: Eddy Petrișor <eddy.petrisor@gmail.com>\n" "Language-Team: Romanian <debian-l10n-romanian@lists.debian.org>\n" @@ -868,6 +868,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -14,7 +14,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.8.0\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2019-02-10 11:50+0300\n" "Last-Translator: Aleksej Shilin <rootlexx@mail.ru>\n" "Language-Team: Russian <debian-l10n-russian@lists.debian.org>\n" @@ -933,6 +933,13 @@ msgstr "" "Невозможно увеличить размер отображения в память, так как автоматическое " "увеличение отключено пользователем." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2012-06-28 20:49+0100\n" "Last-Translator: Ivan Masár <helix84@centrum.sk>\n" "Language-Team: Slovak <sk-i18n@lists.linux.sk>\n" @@ -883,6 +883,13 @@ msgstr "" "Napodarilo sa zväčšiť veľkosť MMap, pretože automatické zväčovanie vypol " "používateľ." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 0.5.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2012-06-27 21:29+0000\n" "Last-Translator: Andrej Znidarsic <andrej.znidarsic@gmail.com>\n" "Language-Team: Slovenian <sl@li.org>\n" @@ -879,6 +879,13 @@ msgid "" msgstr "" "Ni mogoče povečati velikosti MMap, ker je samodejno povečevanje onemogočeno." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2015-08-19 21:33+0200\n" "Last-Translator: Anders Jonsson <anders.jonsson@norsjovallen.se>\n" "Language-Team: Swedish <debian-l10n-swedish@debian.org>\n" @@ -896,6 +896,13 @@ msgstr "" "Kunde inte öka storleken för MMap eftersom automatisk växt har inaktiverats " "av användaren." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2014-12-12 13:00+0700\n" "Last-Translator: Theppitak Karoonboonyanan <thep@debian.org>\n" "Language-Team: Thai <thai-l10n@googlegroups.com>\n" @@ -866,6 +866,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "ไม่สามารถเพิ่มขนาดของ MMap เนื่องจากผู้ใช้ปิดการขยายขนาดอัตโนมัติ" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2007-03-29 21:36+0800\n" "Last-Translator: Eric Pareja <xenos@upm.edu.ph>\n" "Language-Team: Tagalog <debian-tl@banwa.upm.edu.ph>\n" @@ -875,6 +875,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2018-01-03 16:32+0300\n" "Last-Translator: Mert Dirik <mertdirik@gmail.com>\n" "Language-Team: Debian l10n Turkish <debian-l10n-turkish@lists.debian.org>\n" @@ -920,6 +920,13 @@ msgstr "" "Otomatik büyüme kullanıcı tarafından kapatıldığı için MMap boyutu " "artırılamadı." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.5\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2012-09-25 20:19+0300\n" "Last-Translator: A. Bondarenko <artem.brz@gmail.com>\n" "Language-Team: Українська <uk@li.org>\n" @@ -896,6 +896,13 @@ msgstr "" "Неможливо збільшити розмір MMap, так як автоматичне збільшення вимкнено " "користувачем." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.0.8\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2014-09-12 13:48+0700\n" "Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n" "Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n" @@ -888,6 +888,13 @@ msgstr "" "Không thể tăng kích cỡ của ánh xạ bộ nhớ, vì chức năng tự động tăng bị người " "dùng tắt đi." +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" diff --git a/po/zh_CN.po b/po/zh_CN.po index 4cec9d34f..853e37aa3 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.7.x\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2019-01-12 00:00+0000\n" "Last-Translator: Mo Zhou <cdluminate@gmail.com>\n" "Language-Team: Chinese (simplified) <debian-l10n-chinese@lists.debian.org>\n" @@ -873,6 +873,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "无法增加 MMap 大小,因为用户已禁用自动增加。" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" diff --git a/po/zh_TW.po b/po/zh_TW.po index 41f09e66b..11fda50a2 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 1.2.X\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2019-12-02 18:18+0100\n" +"POT-Creation-Date: 2020-01-15 23:07+0100\n" "PO-Revision-Date: 2009-01-28 10:41+0800\n" "Last-Translator: Tetralet <tetralet@gmail.com>\n" "Language-Team: Debian-user in Chinese [Big5] <debian-chinese-big5@lists." @@ -859,6 +859,13 @@ msgid "" "Unable to increase size of the MMap as automatic growing is disabled by user." msgstr "" +#: apt-pkg/contrib/netrc.cc +#, c-format +msgid "" +"%s: Credentials for %s match, but the protocol is not encrypted. Annotate " +"with %s:// to use." +msgstr "" + #: apt-pkg/contrib/progress.cc #, c-format msgid "%c%s... Error!" diff --git a/test/integration/test-apt-patterns b/test/integration/test-apt-patterns index 06c552479..cdba76146 100755 --- a/test/integration/test-apt-patterns +++ b/test/integration/test-apt-patterns @@ -34,16 +34,10 @@ testfailureequal "E: input:0-14: error: Unrecognized pattern '?not-a-pattern' ?not-a-pattern ^^^^^^^^^^^^^^ N: Unable to locate package ?not-a-pattern -N: Couldn't find any package by glob '?not-a-pattern' -E: Regex compilation error - Invalid preceding regular expression -N: Couldn't find any package by regex '?not-a-pattern' E: input:0-14: error: Unrecognized pattern '?not-a-pattern' ?not-a-pattern ^^^^^^^^^^^^^^ N: Unable to locate package ?not-a-pattern -N: Couldn't find any package by glob '?not-a-pattern' -E: Regex compilation error - Invalid preceding regular expression -N: Couldn't find any package by regex '?not-a-pattern' E: No packages found" apt show '?not-a-pattern' testfailureequal "Listing... @@ -57,10 +51,7 @@ Reading state information... E: input:0-14: error: Unrecognized pattern '?not-a-pattern' ?not-a-pattern ^^^^^^^^^^^^^^ -E: Unable to locate package ?not-a-pattern -E: Couldn't find any package by glob '?not-a-pattern' -E: Regex compilation error - Invalid preceding regular expression -E: Couldn't find any package by regex '?not-a-pattern'" apt install -s '?not-a-pattern' +E: Unable to locate package ?not-a-pattern" apt install -s '?not-a-pattern' msgmsg "Ensure that argument lists are present where needed, and absent elsewhere" diff --git a/test/integration/test-authentication-basic b/test/integration/test-authentication-basic index 5aafaade0..784a00c03 100755 --- a/test/integration/test-authentication-basic +++ b/test/integration/test-authentication-basic @@ -96,6 +96,8 @@ password hunter2" if [ "$protocol" = "https" ]; then testauthsuccess "$1" else + testfailure apthelper download-file "${1}/bash" ./downloaded/bash + testsuccessequal "W: ${1}/bash: ${TMPWORKINGDIRECTORY}/rootdir/etc/apt/auth.conf: Credentials for localhost match, but the protocol is not encrypted. Annotate with http:// to use." grep "Credentials.*match" rootdir/tmp/testfailure.output testauthfailure "$1" fi diff --git a/test/integration/test-kernel-helper-autoremove b/test/integration/test-kernel-helper-autoremove index 8cde3432f..9cc978645 100755 --- a/test/integration/test-kernel-helper-autoremove +++ b/test/integration/test-kernel-helper-autoremove @@ -46,10 +46,10 @@ testprotected() { testfailure --nomsg grep '^[A-Z]: ' protected.list msgtest 'Check kernel autoremoval protection list includes' 'most recent kernel' - testsuccess --nomsg grep '^\^linux-image-100\\\.0\\\.0-1-generic\$$' protected.list + testsuccess --nomsg grep '^\^linux-.*-100\\\.0\\\.0-1-generic\$$' protected.list msgtest 'Check kernel autoremoval protection list includes' 'running kernel' - testsuccess --nomsg grep "^\\^linux-image-$(uname -r | tr '[A-Z]' '[a-z]' | sed -e 's#\.#\\\\.#g')\\\$\$" protected.list + testsuccess --nomsg grep "^\\^linux-.*-$(uname -r | tr '[A-Z]' '[a-z]' | sed -e 's#\.#\\\\.#g')\\\$\$" protected.list msgtest 'Check kernel autoremoval protection list does not include' 'metapackages' testfailure --nomsg grep -e '^\^linux-image-amd64\$$' -e '^\^linux-image-686-pae\$$' -e ':i386' protected.list @@ -115,7 +115,7 @@ Remv ${CURRENTKERNEL}-dbg [5-1]" aptget autoremove -sV msgmsg "run without parameter" testprotected msgtest 'Check kernel autoremoval protection list does not include' 'old kernel' -testfailure --nomsg grep '^\^linux-image-1\\\.0\\\.0-2-generic\$$' protected.list +testfailure --nomsg grep '^\^linux-.*-1\\\.0\\\.0-2-generic\$$' protected.list export COLUMNS=99999 testsuccessequal "Reading package lists... Building dependency tree... @@ -134,9 +134,9 @@ msgmsg "install unknown kernel" # know for sure without complicated detection mechanisms testprotected 1.0.0-2-ungeneric msgtest 'Check kernel autoremoval protection list does not include' 'old kernel' -testfailure --nomsg grep '^\^linux-image-1\\\.0\\\.0-2-generic\$$' protected.list +testfailure --nomsg grep '^\^linux-.*-1\\\.0\\\.0-2-generic\$$' protected.list msgtest 'Check kernel autoremoval protection list does include' 'unknown installed kernel' -testsuccess --nomsg grep '^\^linux-image-1\\\.0\\\.0-2-ungeneric\$$' protected.list +testsuccess --nomsg grep '^\^linux-.*-1\\\.0\\\.0-2-ungeneric\$$' protected.list export COLUMNS=9 testsuccessequal "Reading package lists... Building dependency tree... @@ -154,7 +154,7 @@ unset COLUMNS msgmsg "install an old kernel" testprotected 1.0.0-2-generic msgtest 'Check kernel autoremoval protection list includes' 'installed kernel' -testsuccess --nomsg grep '^\^linux-image-1\\\.0\\\.0-2-generic\$$' protected.list +testsuccess --nomsg grep '^\^linux-.*-1\\\.0\\\.0-2-generic\$$' protected.list export COLUMNS=9 testsuccessequal "Reading package lists... Building dependency tree... diff --git a/test/integration/test-packages-require-authorization b/test/integration/test-packages-require-authorization deleted file mode 100755 index 527497ce5..000000000 --- a/test/integration/test-packages-require-authorization +++ /dev/null @@ -1,61 +0,0 @@ -#!/bin/sh -set -e - -TESTDIR="$(readlink -f "$(dirname "$0")")" -. "$TESTDIR/framework" -setupenvironment -configarchitecture 'amd64' - -insertpackage 'unstable' 'cool' 'amd64' '1.0' - -export APT_DONT_SIGN='InRelease' -setupaptarchive --no-update -changetowebserver - -echo 'Packages-Require-Authorization: yes' >> aptarchive/dists/unstable/Release -signreleasefiles - -testsuccess aptget update -testsuccessequal "Package files: - 100 ${TMPWORKINGDIRECTORY}/rootdir/var/lib/dpkg/status - release a=now --32768 http://localhost:${APTHTTPPORT} unstable/main amd64 Packages - release a=unstable,n=sid,c=main,b=amd64 - origin localhost -Pinned packages:" aptcache policy - -mkdir rootdir/etc/apt/auth.conf.d -cat > rootdir/etc/apt/auth.conf.d/myauth.conf << EOF -machine localhost -login username -password usersPassword -EOF - - -testsuccessequal "Package files: - 100 ${TMPWORKINGDIRECTORY}/rootdir/var/lib/dpkg/status - release a=now - 500 http://localhost:${APTHTTPPORT} unstable/main amd64 Packages - release a=unstable,n=sid,c=main,b=amd64 - origin localhost -Pinned packages:" aptcache policy - - -cat > rootdir/etc/apt/preferences.d/myauth.pref << EOF -Package: * -Pin: origin localhost -Pin-Priority: 990 - -Package: cool -Pin: origin localhost -Pin-Priority: 990 -EOF - -testsuccessequal "Package files: - 100 ${TMPWORKINGDIRECTORY}/rootdir/var/lib/dpkg/status - release a=now - 990 http://localhost:${APTHTTPPORT} unstable/main amd64 Packages - release a=unstable,n=sid,c=main,b=amd64 - origin localhost -Pinned packages: - cool -> 1.0 with priority 990" aptcache policy diff --git a/test/integration/test-provides-arch-all b/test/integration/test-provides-arch-all new file mode 100755 index 000000000..f212b513c --- /dev/null +++ b/test/integration/test-provides-arch-all @@ -0,0 +1,28 @@ +#!/bin/sh +# +# In apt 1.9.6, this test would have failed, outputting: +# The following packages will be REMOVED: +# libltdl-dev +# 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded. +# Remv libltdl-dev [1] +# +# Because we started inserting groups without packages, and then could not +# properly insert the provides. + +set -e + +TESTDIR="$(readlink -f "$(dirname "$0")")" +. "$TESTDIR/framework" +setupenvironment +configarchitecture "i386" + +insertinstalledpackage 'automake' 'i386' '1' 'Provides: automake-1.16 +Source: automake-1.16 +Multi-Arch: foreign' +insertinstalledpackage 'libltdl-dev' 'i386' '1' 'Depends: automake-1.16' + +setupaptarchive + +testsuccessequal 'Reading package lists... +Building dependency tree... +0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.' aptget install -f -s diff --git a/test/libapt/hashsums_test.cc b/test/libapt/hashsums_test.cc index eede213cd..a8a826821 100644 --- a/test/libapt/hashsums_test.cc +++ b/test/libapt/hashsums_test.cc @@ -3,9 +3,6 @@ #include <apt-pkg/configuration.h> #include <apt-pkg/fileutl.h> #include <apt-pkg/hashes.h> -#include <apt-pkg/md5.h> -#include <apt-pkg/sha1.h> -#include <apt-pkg/sha2.h> #include <apt-pkg/strutl.h> #include <iostream> @@ -25,83 +22,6 @@ template <class T> void Test(const char *In,const char *Out) -TEST(HashSumsTest,SummationStrings) -{ -#define EXPECT_SUM(Summation, In, Out) \ - { \ - Summation Sum; \ - Sum.Add(In); \ - EXPECT_EQ(Sum.Result().Value(), Out) << #Summation << " for '" << In << "'"; \ - } - - // From FIPS PUB 180-1 - EXPECT_SUM(SHA1Summation, "","da39a3ee5e6b4b0d3255bfef95601890afd80709"); - EXPECT_SUM(SHA1Summation, "abc","a9993e364706816aba3e25717850c26c9cd0d89d"); - EXPECT_SUM(SHA1Summation, "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", - "84983e441c3bd26ebaae4aa1f95129e5e54670f1"); - - // MD5 tests from RFC 1321 - EXPECT_SUM(MD5Summation, "","d41d8cd98f00b204e9800998ecf8427e"); - EXPECT_SUM(MD5Summation, "a","0cc175b9c0f1b6a831c399e269772661"); - EXPECT_SUM(MD5Summation, "abc","900150983cd24fb0d6963f7d28e17f72"); - EXPECT_SUM(MD5Summation, "message digest","f96b697d7cb7938d525a2f31aaf161d0"); - EXPECT_SUM(MD5Summation, "abcdefghijklmnopqrstuvwxyz","c3fcd3d76192e4007dfb496cca67e13b"); - EXPECT_SUM(MD5Summation, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", - "d174ab98d277d9f5a5611c2c9f419d9f"); - EXPECT_SUM(MD5Summation, "12345678901234567890123456789012345678901234567890123456789012345678901234567890", - "57edf4a22be3c955ac49da2e2107b67a"); - - // SHA-256, From FIPS 180-2 - EXPECT_SUM(SHA256Summation, "", "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"); - EXPECT_SUM(SHA256Summation, "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", - "248d6a61d20638b8e5c026930c3e6039a33ce45964ff2167f6ecedd419db06c1"); - - // SHA-512 - EXPECT_SUM(SHA512Summation, "", - "cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce" - "47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e"); - EXPECT_SUM(SHA512Summation, "abc", - "ddaf35a193617abacc417349ae20413112e6fa4e89a97ea20a9eeee64b55d39a" - "2192992a274fc1a836ba3c23a3feebbd454d4423643ce80e2a9ac94fa54ca49f"); - - - EXPECT_SUM(MD5Summation, "The quick brown fox jumps over the lazy dog", "9e107d9d372bb6826bd81d3542a419d6"); - EXPECT_SUM(MD5Summation, "The quick brown fox jumps over the lazy dog.", "e4d909c290d0fb1ca068ffaddf22cbd0"); - EXPECT_SUM(SHA1Summation, "The quick brown fox jumps over the lazy dog", "2fd4e1c67a2d28fced849ee1bb76e7391b93eb12"); - EXPECT_SUM(SHA1Summation, "The quick brown fox jumps over the lazy cog", "de9f2c7fd25e1b3afad3e85a0bd17d9b100db4b3"); - EXPECT_SUM(SHA256Summation, "The quick brown fox jumps over the lazy dog", "d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592"); - EXPECT_SUM(SHA256Summation, "The quick brown fox jumps over the lazy dog.", "ef537f25c895bfa782526529a9b63d97aa631564d5d789c2b765448c8635fb6c"); - EXPECT_SUM(SHA512Summation, "The quick brown fox jumps over the lazy dog", "07e547d9586f6a73f73fbac0435ed76951218fb7d0c8d788a309d785436bbb64" - "2e93a252a954f23912547d1e8a3b5ed6e1bfd7097821233fa0538f3db854fee6"); - EXPECT_SUM(SHA512Summation, "The quick brown fox jumps over the lazy dog.", "91ea1245f20d46ae9a037a989f54f1f790f0a47607eeb8a14d12890cea77a1bb" - "c6c7ed9cf205e67b7f2b8fd4c7dfd3a7a8617e45f3c463d481c7e586c39ac1ed"); - -#undef EXPECT_SUM -} -TEST(HashSumsTest, Mill) -{ - SHA1Summation Sum1; - - const unsigned char As[] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; - size_t const AsCount = sizeof(As)/sizeof(As[0]) - 1; - size_t Count = 1000000; - while (Count != 0) - { - if (Count >= AsCount) - { - Sum1.Add(As, AsCount); - Count -= AsCount; - } - else - { - Sum1.Add(As,Count); - Count = 0; - } - } - - EXPECT_EQ("34aa973cd4c4daa4f61eeb2bdbad27316534016f", Sum1.Result().Value()); -} - static void getSummationString(char const * const type, std::string &sum) { /* to compare our result with an independent source we call the specific binaries @@ -146,20 +66,20 @@ TEST(HashSumsTest, FileBased) std::string summation; getSummationString("md5sum", summation); - MD5SumValue md5(summation); - EXPECT_EQ(md5.Value(), summation); + HashString md5("MD5Sum", summation); + EXPECT_EQ(md5.HashValue(), summation); getSummationString("sha1sum", summation); - SHA1SumValue sha1(summation); - EXPECT_EQ(sha1.Value(), summation); + HashString sha1("SHA1", summation); + EXPECT_EQ(sha1.HashValue(), summation); getSummationString("sha256sum", summation); - SHA256SumValue sha256(summation); - EXPECT_EQ(sha256.Value(), summation); + HashString sha256("SHA256", summation); + EXPECT_EQ(sha256.HashValue(), summation); getSummationString("sha512sum", summation); - SHA512SumValue sha512(summation); - EXPECT_EQ(sha512.Value(), summation); + HashString sha512("SHA512", summation); + EXPECT_EQ(sha512.HashValue(), summation); FileFd fd("/etc/os-release", FileFd::ReadOnly); EXPECT_TRUE(fd.IsOpen()); @@ -172,10 +92,10 @@ TEST(HashSumsTest, FileBased) HashStringList list = hashes.GetHashStringList(); EXPECT_FALSE(list.empty()); EXPECT_EQ(5u, list.size()); - EXPECT_EQ(md5.Value(), list.find("MD5Sum")->HashValue()); - EXPECT_EQ(sha1.Value(), list.find("SHA1")->HashValue()); - EXPECT_EQ(sha256.Value(), list.find("SHA256")->HashValue()); - EXPECT_EQ(sha512.Value(), list.find("SHA512")->HashValue()); + EXPECT_EQ(md5.HashValue(), list.find("MD5Sum")->HashValue()); + EXPECT_EQ(sha1.HashValue(), list.find("SHA1")->HashValue()); + EXPECT_EQ(sha256.HashValue(), list.find("SHA256")->HashValue()); + EXPECT_EQ(sha512.HashValue(), list.find("SHA512")->HashValue()); EXPECT_EQ(FileSize, list.find("Checksum-FileSize")->HashValue()); } unsigned long long sz = fd.FileSize(); @@ -186,10 +106,10 @@ TEST(HashSumsTest, FileBased) HashStringList list = hashes.GetHashStringList(); EXPECT_FALSE(list.empty()); EXPECT_EQ(5u, list.size()); - EXPECT_EQ(md5.Value(), list.find("MD5Sum")->HashValue()); - EXPECT_EQ(sha1.Value(), list.find("SHA1")->HashValue()); - EXPECT_EQ(sha256.Value(), list.find("SHA256")->HashValue()); - EXPECT_EQ(sha512.Value(), list.find("SHA512")->HashValue()); + EXPECT_EQ(md5.HashValue(), list.find("MD5Sum")->HashValue()); + EXPECT_EQ(sha1.HashValue(), list.find("SHA1")->HashValue()); + EXPECT_EQ(sha256.HashValue(), list.find("SHA256")->HashValue()); + EXPECT_EQ(sha512.HashValue(), list.find("SHA512")->HashValue()); EXPECT_EQ(FileSize, list.find("Checksum-FileSize")->HashValue()); } fd.Seek(0); @@ -199,10 +119,10 @@ TEST(HashSumsTest, FileBased) HashStringList list = hashes.GetHashStringList(); EXPECT_FALSE(list.empty()); EXPECT_EQ(3u, list.size()); - EXPECT_EQ(md5.Value(), list.find("MD5Sum")->HashValue()); + EXPECT_EQ(md5.HashValue(), list.find("MD5Sum")->HashValue()); EXPECT_EQ(NULL, list.find("SHA1")); EXPECT_EQ(NULL, list.find("SHA256")); - EXPECT_EQ(sha512.Value(), list.find("SHA512")->HashValue()); + EXPECT_EQ(sha512.HashValue(), list.find("SHA512")->HashValue()); EXPECT_EQ(FileSize, list.find("Checksum-FileSize")->HashValue()); fd.Seek(0); Hashes hashes2(list); @@ -210,39 +130,39 @@ TEST(HashSumsTest, FileBased) list = hashes2.GetHashStringList(); EXPECT_FALSE(list.empty()); EXPECT_EQ(3u, list.size()); - EXPECT_EQ(md5.Value(), list.find("MD5Sum")->HashValue()); + EXPECT_EQ(md5.HashValue(), list.find("MD5Sum")->HashValue()); EXPECT_EQ(NULL, list.find("SHA1")); EXPECT_EQ(NULL, list.find("SHA256")); - EXPECT_EQ(sha512.Value(), list.find("SHA512")->HashValue()); + EXPECT_EQ(sha512.HashValue(), list.find("SHA512")->HashValue()); EXPECT_EQ(FileSize, list.find("Checksum-FileSize")->HashValue()); } fd.Seek(0); { - MD5Summation MD5; + Hashes MD5(Hashes::MD5SUM); MD5.AddFD(fd.Fd()); - EXPECT_EQ(md5.Value(), MD5.Result().Value()); + EXPECT_EQ(md5, MD5.GetHashString(Hashes::MD5SUM)); } fd.Seek(0); { - SHA1Summation SHA1; + Hashes SHA1(Hashes::SHA1SUM); SHA1.AddFD(fd.Fd()); - EXPECT_EQ(sha1.Value(), SHA1.Result().Value()); + EXPECT_EQ(sha1, SHA1.GetHashString(Hashes::SHA1SUM)); } fd.Seek(0); { - SHA256Summation SHA2; + Hashes SHA2(Hashes::SHA256SUM); SHA2.AddFD(fd.Fd()); - EXPECT_EQ(sha256.Value(), SHA2.Result().Value()); + EXPECT_EQ(sha256, SHA2.GetHashString(Hashes::SHA256SUM)); } fd.Seek(0); { - SHA512Summation SHA2; + Hashes SHA2(Hashes::SHA512SUM); SHA2.AddFD(fd.Fd()); - EXPECT_EQ(sha512.Value(), SHA2.Result().Value()); + EXPECT_EQ(sha512, SHA2.GetHashString(Hashes::SHA512SUM)); } fd.Close(); - HashString sha2file("SHA512", sha512.Value()); + HashString sha2file("SHA512", sha512.HashValue()); EXPECT_TRUE(sha2file.VerifyFile("/etc/os-release")); HashString sha2wrong("SHA512", "00000000000"); EXPECT_FALSE(sha2wrong.VerifyFile("/etc/os-release")); @@ -251,9 +171,9 @@ TEST(HashSumsTest, FileBased) EXPECT_NE(sha2file, sha2wrong); EXPECT_TRUE(sha2file != sha2wrong); - HashString sha2big("SHA256", sha256.Value()); + HashString sha2big("SHA256", sha256.HashValue()); EXPECT_TRUE(sha2big.VerifyFile("/etc/os-release")); - HashString sha2small("sha256:" + sha256.Value()); + HashString sha2small("sha256:" + sha256.HashValue()); EXPECT_TRUE(sha2small.VerifyFile("/etc/os-release")); EXPECT_EQ(sha2big, sha2small); EXPECT_TRUE(sha2big == sha2small); diff --git a/test/libapt/pattern_test.cc b/test/libapt/pattern_test.cc index de2fbceb9..bfcaf2093 100644 --- a/test/libapt/pattern_test.cc +++ b/test/libapt/pattern_test.cc @@ -14,21 +14,53 @@ using namespace APT::Internal; +#define EXPECT_EXCEPTION(exp, exc, msg) \ + caught = false; \ + try \ + { \ + exp; \ + } \ + catch (exc & e) \ + { \ + caught = true; \ + EXPECT_TRUE(e.message.find(msg) != std::string::npos) << msg << " not in " << e.message; \ + }; \ + EXPECT_TRUE(caught) << #exp "should have thrown an exception" + +TEST(TreeParserTest, ParseInvalid) +{ + bool caught = false; + + // Not a valid pattern: Reject + EXPECT_EXCEPTION(PatternTreeParser("?").parse(), PatternTreeParser::Error, "Pattern must have a term"); + EXPECT_EXCEPTION(PatternTreeParser("?AB?").parse(), PatternTreeParser::Error, "Pattern must have a term"); + EXPECT_EXCEPTION(PatternTreeParser("~").parse(), PatternTreeParser::Error, "Unknown short pattern"); + + // Not a pattern at all: Report nullptr + EXPECT_EQ(PatternTreeParser("A?").parse(), nullptr); +} + TEST(TreeParserTest, ParseWord) { - auto node = PatternTreeParser("word").parseTop(); - auto wordNode = dynamic_cast<PatternTreeParser::WordNode *>(node.get()); + auto node = PatternTreeParser("?word(word)").parseTop(); + auto patternNode = dynamic_cast<PatternTreeParser::PatternNode *>(node.get()); - EXPECT_EQ(node.get(), wordNode); + ASSERT_EQ(patternNode->arguments.size(), 1u); + auto wordNode = dynamic_cast<PatternTreeParser::WordNode *>(patternNode->arguments[0].get()); + + EXPECT_EQ(patternNode->arguments[0].get(), wordNode); EXPECT_EQ(wordNode->word, "word"); } TEST(TreeParserTest, ParseQuotedWord) { - auto node = PatternTreeParser("\"a word\"").parseTop(); - auto wordNode = dynamic_cast<PatternTreeParser::WordNode *>(node.get()); + auto node = PatternTreeParser("?word(\"a word\")").parseTop(); + auto patternNode = dynamic_cast<PatternTreeParser::PatternNode *>(node.get()); - EXPECT_EQ(node.get(), wordNode); + ASSERT_EQ(patternNode->arguments.size(), 1u); + auto wordNode = dynamic_cast<PatternTreeParser::WordNode *>(patternNode->arguments[0].get()); + + EXPECT_EQ(patternNode->arguments[0].get(), wordNode); EXPECT_EQ(wordNode->word, "a word"); } @@ -93,3 +125,98 @@ TEST(TreeParserTest, ParseWithManyArgsWithSpacesWithTrailingComma) EXPECT_EQ(patternNode->term, "?hello"); EXPECT_EQ(2u, patternNode->arguments.size()); } + +// Helper +static bool samePattern(const std::unique_ptr<PatternTreeParser::Node> &a, const std::unique_ptr<PatternTreeParser::Node> &b) +{ + auto pa = dynamic_cast<const PatternTreeParser::PatternNode *>(a.get()); + auto pb = dynamic_cast<const PatternTreeParser::PatternNode *>(b.get()); + + if (pa && pb) + { + if (pa->term != pb->term || pa->haveArgumentList != pb->haveArgumentList || pa->arguments.size() != pb->arguments.size()) + return false; + + for (size_t i = 0; i < pa->arguments.size(); i++) + { + if (!samePattern(pa->arguments[i], pb->arguments[i])) + return false; + } + return true; + } + + auto wa = dynamic_cast<const PatternTreeParser::WordNode *>(a.get()); + auto wb = dynamic_cast<const PatternTreeParser::WordNode *>(b.get()); + if (wa && wb) + return wa->word == wb->word && wa->quoted == wb->quoted; + + return false; +} + +#define EXPECT_PATTERN_EQ(shrt, lng) \ + EXPECT_TRUE(samePattern(PatternTreeParser(shrt).parseTop(), PatternTreeParser(lng).parseTop())) +#define EXPECT_PATTERN_EQ_ATOMIC(shrt, lng) \ + EXPECT_TRUE(PatternTreeParser(shrt).parseTop()); \ + caught = false; \ + try \ + { \ + PatternTreeParser(shrt "XXX").parseTop(); \ + } \ + catch (PatternTreeParser::Error & e) \ + { \ + caught = true; \ + }; \ + EXPECT_TRUE(caught) << shrt "XXX should have thrown an exception"; \ + EXPECT_PATTERN_EQ(shrt, lng) + +TEST(TreeParserTest, ParseShortPattern) +{ + bool caught; + EXPECT_PATTERN_EQ("~ramd64", "?architecture(amd64)"); + EXPECT_PATTERN_EQ("~AanArchive", "?archive(anArchive)"); + EXPECT_PATTERN_EQ_ATOMIC("~M", "?automatic"); + EXPECT_PATTERN_EQ_ATOMIC("~b", "?broken"); + EXPECT_PATTERN_EQ_ATOMIC("~c", "?config-files"); + EXPECT_PATTERN_EQ_ATOMIC("~E", "?essential"); + EXPECT_PATTERN_EQ_ATOMIC("~F", "?false"); + EXPECT_PATTERN_EQ_ATOMIC("~g", "?garbage"); + EXPECT_PATTERN_EQ_ATOMIC("~i", "?installed"); + EXPECT_PATTERN_EQ("~napt", "?name(apt)"); + EXPECT_PATTERN_EQ_ATOMIC("~o", "?obsolete"); + EXPECT_PATTERN_EQ("~Obar", "?origin(bar)"); + EXPECT_PATTERN_EQ("~sfoo", "?section(foo)"); + EXPECT_PATTERN_EQ("~esourcename", "?source-package(sourcename)"); + EXPECT_PATTERN_EQ_ATOMIC("~T", "?true"); + EXPECT_PATTERN_EQ_ATOMIC("~U", "?upgradable"); + EXPECT_PATTERN_EQ("~Vverstr", "?version(verstr)"); + EXPECT_PATTERN_EQ_ATOMIC("~v", "?virtual"); + EXPECT_PATTERN_EQ("!?foo", "?not(?foo)"); + + caught = false; + try + { + PatternTreeParser("!x").parseTop(); + } + catch (PatternTreeParser::Error &e) + { + caught = true; + }; + EXPECT_TRUE(caught) << "!X should have thrown an exception"; + + EXPECT_PATTERN_EQ("?a?b", "?and(?a, ?b)"); + EXPECT_PATTERN_EQ("~T~F", "?and(?true, ?false)"); + EXPECT_PATTERN_EQ("~T ~F", "?and(?true, ?false)"); + EXPECT_PATTERN_EQ("~T !~F", "?and(?true, ?not(?false))"); + EXPECT_PATTERN_EQ("!~F ~T", "?and(?not(?false), ?true)"); + EXPECT_PATTERN_EQ("!~F~T", "?and(?not(?false), ?true)"); + + EXPECT_PATTERN_EQ("!~F~T | ~T", "?or(?and(?not(?false), ?true), ?true)"); + EXPECT_PATTERN_EQ("~ramd64|~rall", "?or(?architecture(amd64), ?architecture(all))"); + EXPECT_PATTERN_EQ("~ramd64 | ~rall", "?or(?architecture(amd64), ?architecture(all))"); + EXPECT_PATTERN_EQ("~ramd64?name(foo)", "?and(?architecture(amd64), ?name(foo))"); + + EXPECT_PATTERN_EQ("(?A|?B)?C", "?and(?or(?A, ?B), ?C)"); + EXPECT_PATTERN_EQ("?A|?B?C", "?or(?A, ?and(?B, ?C))"); + EXPECT_PATTERN_EQ("?A|(?B?C)", "?or(?A, ?and(?B, ?C))"); + EXPECT_PATTERN_EQ("(?B?C)|?A", "?or(?and(?B, ?C), ?A)"); +} |