From f771e7ff2e5c3debe3423b0990b4f477c29cebf43f28248b73fa1b841e0f9dd9 Mon Sep 17 00:00:00 2001 From: Gary Ching-Pang Lin Date: Thu, 11 Aug 2016 04:10:05 +0000 Subject: [PATCH] Accepting request 418378 from home:gary_lin:branches:Base:System fix the argument list parsing OBS-URL: https://build.opensuse.org/request/show/418378 OBS-URL: https://build.opensuse.org/package/show/Base:System/pesign?expand=0&rev=39 --- pesign-fix-argument-list.patch | 65 ++++++++++++++++++++++++++++++++++ pesign.changes | 6 ++++ pesign.spec | 3 ++ 3 files changed, 74 insertions(+) create mode 100644 pesign-fix-argument-list.patch diff --git a/pesign-fix-argument-list.patch b/pesign-fix-argument-list.patch new file mode 100644 index 0000000..8d0c129 --- /dev/null +++ b/pesign-fix-argument-list.patch @@ -0,0 +1,65 @@ +commit 5be0515dee24308fd7e270bf2e0fb5e5a7a78f32 +Author: Julien Cristau +Date: Thu Jun 9 14:30:37 2016 +0200 + + Fix command line parsing + + The gettext translation domain should be passed as .arg, not .descrip, + otherwise popt won't process any of the command line options (it stops + looping over the struct poptOption array when an entry has unset + longName, shortName and arg). + + Signed-off-by: Julien Cristau + +diff --git a/src/client.c b/src/client.c +index 028419f..575c873 100644 +--- a/src/client.c ++++ b/src/client.c +@@ -555,7 +555,7 @@ main(int argc, char *argv[]) + + struct poptOption options[] = { + {.argInfo = POPT_ARG_INTL_DOMAIN, +- .descrip = "pesign" }, ++ .arg = "pesign" }, + {.longName = "token", + .shortName = 't', + .argInfo = POPT_ARG_STRING|POPT_ARGFLAG_SHOW_DEFAULT, +diff --git a/src/efikeygen.c b/src/efikeygen.c +index 6278849..8a515a5 100644 +--- a/src/efikeygen.c ++++ b/src/efikeygen.c +@@ -486,7 +486,7 @@ int main(int argc, char *argv[]) + poptContext optCon; + struct poptOption options[] = { + {.argInfo = POPT_ARG_INTL_DOMAIN, +- .descrip = "pesign" }, ++ .arg = "pesign" }, + /* global nss-ish things */ + {.longName = "dbdir", + .shortName = 'd', +diff --git a/src/efisiglist.c b/src/efisiglist.c +index cd3f1ae..40d6a93 100644 +--- a/src/efisiglist.c ++++ b/src/efisiglist.c +@@ -126,7 +126,7 @@ main(int argc, char *argv[]) + + struct poptOption options[] = { + {.argInfo = POPT_ARG_INTL_DOMAIN, +- .descrip = "pesign" }, ++ .arg = "pesign" }, + {.longName = "infile", + .shortName = 'i', + .argInfo = POPT_ARG_STRING, +diff --git a/src/pesigcheck.c b/src/pesigcheck.c +index 1328fe9..0d49c1a 100644 +--- a/src/pesigcheck.c ++++ b/src/pesigcheck.c +@@ -214,7 +214,7 @@ main(int argc, char *argv[]) + poptContext optCon; + struct poptOption options[] = { + {.argInfo = POPT_ARG_INTL_DOMAIN, +- .descrip = "pesign" }, ++ .arg = "pesign" }, + {.longName = "dbfile", + .shortName = 'D', + .argInfo = POPT_ARG_CALLBACK|POPT_CBFLAG_POST, diff --git a/pesign.changes b/pesign.changes index 07f5d6e..96a1acb 100644 --- a/pesign.changes +++ b/pesign.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu Aug 11 03:22:18 UTC 2016 - glin@suse.com + +- Add pesign-fix-argument-list.patch to fix the argument list + parsing + ------------------------------------------------------------------- Thu Apr 21 09:36:23 UTC 2016 - glin@suse.com diff --git a/pesign.spec b/pesign.spec index 0ec477f..1d288eb 100644 --- a/pesign.spec +++ b/pesign.spec @@ -34,6 +34,8 @@ Patch3: pesign-privkey_unneeded.diff Patch5: pesign-run.patch # PATCH-FIX-UPSTREAM pesign-fix-authvar-write-loop.patch glin@suse.com -- Fix the write loop in authvar Patch6: pesign-fix-authvar-write-loop.patch +# PATCH-FIX-UPSTREAM pesign-fix-argument-list.patch glin@suse.com -- Fix the argument list parsing +Patch7: pesign-fix-argument-list.patch BuildRequires: efivar-devel BuildRequires: libuuid-devel BuildRequires: mozilla-nss-devel @@ -55,6 +57,7 @@ with the PE and Authenticode specifications. %patch3 -p1 %patch5 -p1 %patch6 -p1 +%patch7 -p1 %build make %{?_smp_mflags} CFLAGS="$RPM_OPT_FLAGS"