You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
2.2 KiB
61 lines
2.2 KiB
diff --git a/lib/query.c b/lib/query.c |
|
index 6f2d593a7..8a2623241 100644 |
|
--- a/lib/query.c |
|
+++ b/lib/query.c |
|
@@ -150,8 +150,8 @@ int showQueryPackage(QVA_t qva, rpmts ts, Header h) |
|
if ((qva->qva_flags & QUERY_FOR_LICENSE) && !(fflags & RPMFILE_LICENSE)) |
|
continue; |
|
|
|
- /* If not querying %ghost, skip ghost files. */ |
|
- if ((qva->qva_fflags & RPMFILE_GHOST) && (fflags & RPMFILE_GHOST)) |
|
+ /* Skip on attributes (eg from --noghost) */ |
|
+ if (fflags & qva->qva_fflags) |
|
continue; |
|
|
|
if (qva->qva_flags & QUERY_FOR_STATE) { |
|
diff --git a/lib/verify.c b/lib/verify.c |
|
index eb6f2e15e..df17a7b01 100644 |
|
--- a/lib/verify.c |
|
+++ b/lib/verify.c |
|
@@ -378,10 +378,11 @@ static const char * stateStr(rpmfileState fstate) |
|
* @param ts transaction set |
|
* @param h header to verify |
|
* @param omitMask bits to disable verify checks |
|
- * @param ghosts should ghosts be verified? |
|
+ * @param skipAttr skip files with these attrs (eg %ghost) |
|
* @return 0 no problems, 1 problems found |
|
*/ |
|
-static int verifyHeader(rpmts ts, Header h, rpmVerifyAttrs omitMask, int ghosts) |
|
+static int verifyHeader(rpmts ts, Header h, rpmVerifyAttrs omitMask, |
|
+ rpmfileAttrs skipAttrs) |
|
{ |
|
rpmVerifyAttrs verifyResult = 0; |
|
int ec = 0; /* assume no problems */ |
|
@@ -398,8 +399,8 @@ static int verifyHeader(rpmts ts, Header h, rpmVerifyAttrs omitMask, int ghosts) |
|
char ac; |
|
int rc; |
|
|
|
- /* If not verifying %ghost, skip ghost files. */ |
|
- if ((fileAttrs & RPMFILE_GHOST) && !ghosts) |
|
+ /* Skip on attributes (eg from --noghost) */ |
|
+ if (skipAttrs & fileAttrs) |
|
continue; |
|
|
|
rc = rpmVerifyFile(ts, fi, &verifyResult, omitMask); |
|
@@ -494,7 +495,6 @@ static int verifyDependencies(rpmts ts, Header h) |
|
int showVerifyPackage(QVA_t qva, rpmts ts, Header h) |
|
{ |
|
rpmVerifyAttrs omitMask = ((qva->qva_flags & VERIFY_ATTRS) ^ VERIFY_ATTRS); |
|
- int ghosts = (qva->qva_fflags & RPMFILE_GHOST); |
|
int ec = 0; |
|
int rc; |
|
|
|
@@ -503,7 +503,7 @@ int showVerifyPackage(QVA_t qva, rpmts ts, Header h) |
|
ec = rc; |
|
} |
|
if (qva->qva_flags & VERIFY_FILES) { |
|
- if ((rc = verifyHeader(ts, h, omitMask, ghosts)) != 0) |
|
+ if ((rc = verifyHeader(ts, h, omitMask, qva->qva_fflags)) != 0) |
|
ec = rc; |
|
} |
|
if (qva->qva_flags & VERIFY_SCRIPT) {
|
|
|