|
|
@@ -554,7 +554,7 @@ void pkgAcqMetaIndex::AuthDone(string Message)
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- if (!VerifyVendor())
|
|
|
+ if (!VerifyVendor(Message))
|
|
|
{
|
|
|
return;
|
|
|
}
|
|
|
@@ -612,7 +612,7 @@ void pkgAcqMetaIndex::QueueIndexes(bool verify)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-bool pkgAcqMetaIndex::VerifyVendor()
|
|
|
+bool pkgAcqMetaIndex::VerifyVendor(string Message)
|
|
|
{
|
|
|
// // Maybe this should be made available from above so we don't have
|
|
|
// // to read and parse it every time?
|
|
|
@@ -637,6 +637,22 @@ bool pkgAcqMetaIndex::VerifyVendor()
|
|
|
// break;
|
|
|
// }
|
|
|
// }
|
|
|
+ string::size_type pos;
|
|
|
+
|
|
|
+ // check for missing sigs (that where not fatal because otherwise we had
|
|
|
+ // bombed earlier)
|
|
|
+ string missingkeys;
|
|
|
+ string msg = _("There was no public key available for the "
|
|
|
+ "following key IDs:\n");
|
|
|
+ pos = Message.find("NO_PUBKEY ");
|
|
|
+ if (pos != std::string::npos)
|
|
|
+ {
|
|
|
+ string::size_type start = pos+strlen("NO_PUBKEY ");
|
|
|
+ string Fingerprint = Message.substr(start, Message.find("\n")-start);
|
|
|
+ missingkeys += (Fingerprint);
|
|
|
+ }
|
|
|
+ if(!missingkeys.empty())
|
|
|
+ _error->Warning("%s", string(msg+missingkeys).c_str());
|
|
|
|
|
|
string Transformed = MetaIndexParser->GetExpectedDist();
|
|
|
|
|
|
@@ -645,7 +661,7 @@ bool pkgAcqMetaIndex::VerifyVendor()
|
|
|
Transformed = "experimental";
|
|
|
}
|
|
|
|
|
|
- string::size_type pos = Transformed.rfind('/');
|
|
|
+ pos = Transformed.rfind('/');
|
|
|
if (pos != string::npos)
|
|
|
{
|
|
|
Transformed = Transformed.substr(0, pos);
|