diff options
author | Miroslav Lichvar <mlichvar@redhat.com> | 2011-04-18 18:19:36 +0200 |
---|---|---|
committer | Miroslav Lichvar <mlichvar@redhat.com> | 2011-04-19 12:42:58 +0200 |
commit | 759cf65b3f1927e08383c962faf2f7ff0613168d (patch) | |
tree | 2119d9babe27d371af578b22902627a156e4b860 /src | |
parent | 60077789ea177de931ab5d68418678e258459398 (diff) | |
download | abrt-759cf65b3f1927e08383c962faf2f7ff0613168d.tar.gz abrt-759cf65b3f1927e08383c962faf2f7ff0613168d.tar.xz abrt-759cf65b3f1927e08383c962faf2f7ff0613168d.zip |
Fix rpm signature check (trac#198)
Diffstat (limited to 'src')
-rw-r--r-- | src/daemon/abrt-action-save-package-data.c | 2 | ||||
-rw-r--r-- | src/daemon/rpm.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/daemon/abrt-action-save-package-data.c b/src/daemon/abrt-action-save-package-data.c index e58b4254..7249551d 100644 --- a/src/daemon/abrt-action-save-package-data.c +++ b/src/daemon/abrt-action-save-package-data.c @@ -198,7 +198,7 @@ static int SavePackageDescriptionToDebugDump(const char *dump_dir_name) if (g_settings_bOpenGPGCheck && !remote) { - if (rpm_chk_fingerprint(package_short_name)) + if (!rpm_chk_fingerprint(package_short_name)) { log("Package '%s' isn't signed with proper key", package_short_name); goto ret; /* return 1 (failure) */ diff --git a/src/daemon/rpm.c b/src/daemon/rpm.c index 1295211e..97b71e51 100644 --- a/src/daemon/rpm.c +++ b/src/daemon/rpm.c @@ -107,7 +107,7 @@ int rpm_chk_fingerprint(const char* pkg) if (!header) goto error; - pgpsig = headerFormat(header, "%{SIGGPG:pgpsig}", &errmsg); + pgpsig = headerFormat(header, "%|SIGGPG?{%{SIGGPG:pgpsig}}:{%{SIGPGP:pgpsig}}|", &errmsg); if (!pgpsig && errmsg) { VERB1 log("cannot get siggpg:pgpsig. reason: %s", errmsg); @@ -119,7 +119,7 @@ int rpm_chk_fingerprint(const char* pkg) if (pgpsig_tmp) { pgpsig_tmp += sizeof(" Key ID ") - 1; - ret = (g_list_find(list_fingerprints, pgpsig_tmp) != NULL); + ret = g_list_find_custom(list_fingerprints, pgpsig_tmp, (GCompareFunc)g_strcmp0) != NULL; } } |