Implement per pkg RSA signatures and on-demand repository access.

This commit is contained in:
Juan RP
2013-12-24 10:43:55 +01:00
parent 3c0edd40c8
commit ec0d38c469
16 changed files with 703 additions and 697 deletions

View File

@@ -159,16 +159,12 @@ repo_list_uri_cb(struct xbps_repo *repo, void *arg _unused, bool *done _unused)
printf("%5zd %s",
repo->idx ? (ssize_t)xbps_dictionary_count(repo->idx) : -1,
repo->uri);
if (repo->is_remote) {
printf(" (RSA %s, %s)\n",
repo->is_signed ? "signed" : "unsigned",
repo->is_verified ? "verified" : "unverified");
if (repo->xhp->flags & XBPS_FLAG_VERBOSE) {
if (repo->signedby)
printf(" Signed-by: %s\n", repo->signedby);
if (repo->hexfp)
printf(" %u %s\n", repo->pubkey_size, repo->hexfp);
}
printf(" (RSA %s)\n", repo->is_signed ? "signed" : "unsigned");
if (repo->xhp->flags & XBPS_FLAG_VERBOSE) {
if (repo->signedby)
printf(" Signed-by: %s\n", repo->signedby);
if (repo->hexfp)
printf(" %u %s\n", repo->pubkey_size, repo->hexfp);
} else {
printf("\n");
}

View File

@@ -291,10 +291,14 @@ repo_show_pkg_info(struct xbps_handle *xhp,
{
xbps_dictionary_t pkgd;
if (((pkgd = xbps_rpool_get_pkg(xhp, pattern)) == NULL) &&
((pkgd = xbps_rpool_get_virtualpkg(xhp, pattern)) == NULL))
return errno;
pkgd = xbps_rpool_get_pkg_plist(xhp, pattern, "./props.plist");
if (pkgd == NULL) {
if (errno != ENOTSUP && errno != ENOENT) {
fprintf(stderr, "Unexpected error: %s\n",
strerror(errno));
return errno;
}
}
if (option)
show_pkg_info_one(pkgd, option);
else