diff options
author | Werner Koch <wk@gnupg.org> | 2017-01-18 10:01:55 +0100 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2017-01-18 10:07:53 +0100 |
commit | 2312248b2e3adffa52d8a3ac4f24fe2c88f0f569 (patch) | |
tree | f9c92f7333c1c7a6d7ac5fd445a62a9a6e218a08 /tools/gpgconf-comp.c | |
parent | gpg: Remove unused definitions. (diff) | |
download | gnupg2-2312248b2e3adffa52d8a3ac4f24fe2c88f0f569.tar.xz gnupg2-2312248b2e3adffa52d8a3ac4f24fe2c88f0f569.zip |
gpgconf: Allow "all" for --launch, --kill, and --reload.
* tools/gpgconf-comp.c (gc_component_launch): Allow -1 for COMPONENT.
(gc_component_kill): Ditto.
(gc_component_reload): For robustness change the condition to < 0.
* tools/gpgconf.c (main) <aLaunch, aKill, aReload>: Support argument
"all".
Signed-off-by: Werner Koch <wk@gnupg.org>
Diffstat (limited to 'tools/gpgconf-comp.c')
-rw-r--r-- | tools/gpgconf-comp.c | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/tools/gpgconf-comp.c b/tools/gpgconf-comp.c index 2dcf0758e..300f63da6 100644 --- a/tools/gpgconf-comp.c +++ b/tools/gpgconf-comp.c @@ -1263,6 +1263,14 @@ gc_component_launch (int component) int i; pid_t pid; + if (component < 0) + { + err = gc_component_launch (GC_COMPONENT_GPG_AGENT); + if (!err) + err = gc_component_launch (GC_COMPONENT_DIRMNGR); + return err; + } + if (!(component == GC_COMPONENT_GPG_AGENT || component == GC_COMPONENT_DIRMNGR)) { @@ -1304,7 +1312,16 @@ gc_component_kill (int component) for (backend = 0; backend < GC_BACKEND_NR; backend++) runtime[backend] = 0; - if (component >= 0) + if (component < 0) + { + for (component = 0; component < GC_COMPONENT_NR; component++) + { + option = gc_component[component].options; + for (; option && option->name; option++) + runtime[option->backend] = 1; + } + } + else { assert (component < GC_COMPONENT_NR); option = gc_component[component].options; @@ -1333,7 +1350,7 @@ gc_component_reload (int component) for (backend = 0; backend < GC_BACKEND_NR; backend++) runtime[backend] = 0; - if (component == -1) + if (component < 0) { for (component = 0; component < GC_COMPONENT_NR; component++) { |