X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/3184b4cf2e8e2009ce62b8f66c666ae7da67e378..68be2fbb252a71303046e2ca7866cd659a91b585:/apt-pkg/deb/debrecords.cc diff --git a/apt-pkg/deb/debrecords.cc b/apt-pkg/deb/debrecords.cc index ec9e395ef..6063db5a8 100644 --- a/apt-pkg/deb/debrecords.cc +++ b/apt-pkg/deb/debrecords.cc @@ -8,18 +8,30 @@ ##################################################################### */ /*}}}*/ // Include Files /*{{{*/ +#include + #include #include -#include #include +#include +#include +#include +#include + +#include +#include +#include +#include #include /*}}}*/ +using std::string; + // RecordParser::debRecordParser - Constructor /*{{{*/ // --------------------------------------------------------------------- /* */ debRecordParser::debRecordParser(string FileName,pkgCache &Cache) : - File(FileName,FileFd::ReadOnlyGzip), + File(FileName,FileFd::ReadOnly, FileFd::Extension), Tags(&File, std::max(Cache.Head().MaxVerFileSize, Cache.Head().MaxDescFileSize) + 200) { @@ -77,7 +89,7 @@ string debRecordParser::SHA1Hash() return Section.FindS("SHA1"); } /*}}}*/ -// RecordParser::SHA1Hash - Return the archive hash /*{{{*/ +// RecordParser::SHA256Hash - Return the archive hash /*{{{*/ // --------------------------------------------------------------------- /* */ string debRecordParser::SHA256Hash() @@ -85,6 +97,14 @@ string debRecordParser::SHA256Hash() return Section.FindS("SHA256"); } /*}}}*/ +// RecordParser::SHA512Hash - Return the archive hash /*{{{*/ +// --------------------------------------------------------------------- +/* */ +string debRecordParser::SHA512Hash() +{ + return Section.FindS("SHA512"); +} + /*}}}*/ // RecordParser::Maintainer - Return the maintainer email /*{{{*/ // --------------------------------------------------------------------- /* */ @@ -93,6 +113,15 @@ string debRecordParser::Maintainer() return Section.FindS("Maintainer"); } /*}}}*/ +// RecordParser::RecordField - Return the value of an arbitrary field /*{{*/ +// --------------------------------------------------------------------- +/* */ +string debRecordParser::RecordField(const char *fieldName) +{ + return Section.FindS(fieldName); +} + + /*}}}*/ // RecordParser::ShortDesc - Return a 1 line description /*{{{*/ // --------------------------------------------------------------------- /* */ @@ -116,9 +145,9 @@ string debRecordParser::LongDesc() orig = Section.FindS("Description").c_str(); else { - vector const lang = APT::Configuration::getLanguages(); - for (vector::const_iterator l = lang.begin(); - orig.empty() && l != lang.end(); l++) + std::vector const lang = APT::Configuration::getLanguages(); + for (std::vector::const_iterator l = lang.begin(); + orig.empty() && l != lang.end(); ++l) orig = Section.FindS(string("Description-").append(*l).c_str()); }