mirror of
git://git.gnupg.org/gnupg.git
synced 2024-10-29 19:48:43 +01:00
451cd1b392
* common/gc-opt-flags.h (GC_OPT_FLAG_RUNTIME): Move to ... * tools/gpgconf-comp.c: here. (known_options_scdaemon): Remove "options". (known_options_dirmngr): Remove "options". (known_options_gpgsm): Remove "options". (known_options_gpg): Remove "options" and "keyserver". (struct gc_option_s): Rename active t gpgconf_list. (gc_component_list_options): Do not act upon active. (option_check_validity): Ditto. (is_known_option): Make it work correctly for unknown options. (retrieve_options_from_program): Use renamed flag gpgconf_list only to detect duplicated items from --gpgconf-list. Do not set runtime. Only e set the options if set by --gpgconf-list; never clear them. * agent/gpg-agent.c: Simplify the --gpgconf-list output. * dirmngr/dirmngr.c: Ditto. * g10/gpg.c: Ditto. * kbx/keyboxd.c: Ditto. * scd/scdaemon.c: Ditto. * sm/gpgsm.c: Ditto. * tests/openpgp/gpgconf.scm: Use "compliance" instead of "keyserver" for the string arg test. -- There is no need to read the list of options from the components unless they convey a default value. It is better to consult only the list we have in gpgconf-comp.c to decide on whether an option should be displayed. Right, this might mess up thing if a newer gpgconf version is used with an older component, but we already print warnings in this case and in general we do not want to support this anymore - the times of gpg 1.4. and 2.0 are long over now. GnuPG-bug-id: 4788 Signed-off-by: Werner Koch <wk@gnupg.org>
49 lines
1.6 KiB
Scheme
49 lines
1.6 KiB
Scheme
#!/usr/bin/env gpgscm
|
|
|
|
;; Copyright (C) 2017 g10 Code GmbH
|
|
;;
|
|
;; This file is part of GnuPG.
|
|
;;
|
|
;; GnuPG is free software; you can redistribute it and/or modify
|
|
;; it under the terms of the GNU General Public License as published by
|
|
;; the Free Software Foundation; either version 3 of the License, or
|
|
;; (at your option) any later version.
|
|
;;
|
|
;; GnuPG is distributed in the hope that it will be useful,
|
|
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
;; GNU General Public License for more details.
|
|
;;
|
|
;; You should have received a copy of the GNU General Public License
|
|
;; along with this program; if not, see <http://www.gnu.org/licenses/>.
|
|
|
|
(load (in-srcdir "tests" "openpgp" "defs.scm"))
|
|
(setup-environment)
|
|
|
|
(for-each-p'
|
|
"Checking reading and writing configuration via gpgconf... "
|
|
(lambda (name opt make-value)
|
|
(call-with-progress
|
|
""
|
|
(lambda (progress)
|
|
(do ((i 0 (+ 1 i))) ((> i 12) #t)
|
|
(let ((value (make-value i)))
|
|
(if value
|
|
(begin
|
|
(opt::update value)
|
|
(assert (equal? value (opt::value))))
|
|
(begin
|
|
(opt::clear)
|
|
(assert (or (not (opt::value)) (string=? "" (opt::value)))))))
|
|
(progress ".")))))
|
|
(lambda (name . rest) name)
|
|
(list "compliance" "verbose" "quiet")
|
|
(list (gpg-config 'gpg "compliance")
|
|
(gpg-config 'gpg "verbose")
|
|
(gpg-config 'gpg "quiet"))
|
|
(list (lambda (i) (if (even? i) "rfc4880bis" "rfc4880"))
|
|
;; gpgconf: argument for option verbose of type 0 (none) must
|
|
;; be positive
|
|
(lambda (i) (+ 1 i))
|
|
(lambda (i) (if (even? i) #f 1))))
|