50 lines
1.4 KiB
Diff
50 lines
1.4 KiB
Diff
|
From 2ec0832287bd1443ebf336f8a98293f30bfa2036 Mon Sep 17 00:00:00 2001
|
||
|
Message-Id: <2ec0832287bd1443ebf336f8a98293f30bfa2036.1554983205.git.pmatilai@redhat.com>
|
||
|
From: Panu Matilainen <pmatilai@redhat.com>
|
||
|
Date: Mon, 18 Mar 2019 15:24:54 +0200
|
||
|
Subject: [PATCH 1/3] Make rpmsign exit values more consistent with our other
|
||
|
tools
|
||
|
|
||
|
rpmPkgSign*() return -1 for failure, which is not that helpful when
|
||
|
returned to shell and the way it was counted could easily wrap around
|
||
|
when signing multiple packages. Return number of failures similarly to
|
||
|
how rpm -q and frieds does, avoid overflows and xargs special value 255.
|
||
|
---
|
||
|
rpmsign.c | 8 +++++---
|
||
|
1 file changed, 5 insertions(+), 3 deletions(-)
|
||
|
|
||
|
diff --git a/rpmsign.c b/rpmsign.c
|
||
|
index ae86f666d..1a5cd59c2 100644
|
||
|
--- a/rpmsign.c
|
||
|
+++ b/rpmsign.c
|
||
|
@@ -134,7 +134,8 @@ static int doSign(poptContext optCon, struct rpmSignArgs *sargs)
|
||
|
const char *arg;
|
||
|
rc = 0;
|
||
|
while ((arg = poptGetArg(optCon)) != NULL) {
|
||
|
- rc += rpmPkgSign(arg, sargs);
|
||
|
+ if (rpmPkgSign(arg, sargs) < 0)
|
||
|
+ rc++;
|
||
|
}
|
||
|
|
||
|
exit:
|
||
|
@@ -175,7 +176,8 @@ int main(int argc, char *argv[])
|
||
|
case MODE_DELSIGN:
|
||
|
ec = 0;
|
||
|
while ((arg = poptGetArg(optCon)) != NULL) {
|
||
|
- ec += rpmPkgDelSign(arg, &sargs);
|
||
|
+ if (rpmPkgDelSign(arg, &sargs) < 0)
|
||
|
+ ec++;
|
||
|
}
|
||
|
break;
|
||
|
case MODE_NONE:
|
||
|
@@ -188,5 +190,5 @@ int main(int argc, char *argv[])
|
||
|
|
||
|
exit:
|
||
|
rpmcliFini(optCon);
|
||
|
- return ec;
|
||
|
+ return RETVAL(ec);
|
||
|
}
|
||
|
--
|
||
|
2.20.1
|
||
|
|