diff options
| author | Werner Koch <[email protected]> | 2014-01-06 16:16:52 +0000 | 
|---|---|---|
| committer | Werner Koch <[email protected]> | 2014-01-06 16:16:52 +0000 | 
| commit | 6564e5e78e8c6e5a120675a5699b5b75248cfbc7 (patch) | |
| tree | f60419297debdcd94c12f9c05dc7918b759c2200 /tests/t-engine-info.c | |
| parent | Locate engine names only at runtime and prefer GnuPG-2. (diff) | |
| download | gpgme-6564e5e78e8c6e5a120675a5699b5b75248cfbc7.tar.gz gpgme-6564e5e78e8c6e5a120675a5699b5b75248cfbc7.zip | |
Add global flags disable-gpgconf, gpgconf-name, and gpg-name.
* src/gpgme.c (gpgme_set_global_flag): Add names "disable-gpgconf",
"gpgconf-name", and "gpg-name".
* src/dirinfo.c (_gpgme_dirinfo_disable_gpgconf): New.
(get_gpgconf_item): Minor debug info change.
* src/posix-util.c (default_gpg_name, default_gpgconf_name): Add vars.
(_gpgme_set_default_gpg_name): New.
(_gpgme_set_default_gpgconf_name): New.
(_gpgme_get_gpg_path, _gpgme_get_gpgconf_path): Use new vars.
(walk_path): Add debug output on failure.
* src/w32-util.c (default_gpg_name, default_gpgconf_name): Add vars.
(replace_slashes): New.
(get_basename): New.
(_gpgme_set_default_gpg_name): New.
(_gpgme_set_default_gpgconf_name): New.
(_gpgme_get_gpg_path, _gpgme_get_gpgconf_path): Use new vars.
* tests/t-engine-info.c (main): Add --verbose and --set-global-flag
options.
--
Note that the Windows part has not been tested.
Diffstat (limited to 'tests/t-engine-info.c')
| -rw-r--r-- | tests/t-engine-info.c | 61 | 
1 files changed, 60 insertions, 1 deletions
| diff --git a/tests/t-engine-info.c b/tests/t-engine-info.c index 43acd3d2..11fe4a4e 100644 --- a/tests/t-engine-info.c +++ b/tests/t-engine-info.c @@ -28,6 +28,12 @@  #include <gpgme.h> +#define PGM "t-engine-info" + +static int verbose; + + +  #define fail_if_err(err)					\    do								\ @@ -42,13 +48,66 @@    while (0) -  int  main (int argc, char **argv )  { +  int last_argc = -1;    gpgme_engine_info_t info;    gpgme_error_t err; +  if (argc) +    { argc--; argv++; } + +  while (argc && last_argc != argc ) +    { +      last_argc = argc; +      if (!strcmp (*argv, "--")) +        { +          argc--; argv++; +          break; +        } +      else if (!strcmp (*argv, "--help")) +        { +          fputs ("usage: " PGM " [options]\n" +                 "Options:\n" +                 "  --set-global-flag KEY VALUE\n", +                 stdout); +          exit (0); +        } +      else if (!strcmp (*argv, "--verbose")) +        { +          verbose++; +          argc--; argv++; +        } +      else if (!strcmp (*argv, "--set-global-flag")) +        { +          argc--; argv++; +          if (argc < 2) +            { +              fprintf (stderr, PGM ": not enough arguments for option\n"); +              exit (1); +            } +          if (gpgme_set_global_flag (argv[0], argv[1])) +            { +              fprintf (stderr, PGM ": gpgme_set_global_flag failed\n"); +              exit (1); +            } +          argc--; argv++; +          argc--; argv++; +        } +      else if (!strncmp (*argv, "--", 2)) +        { +          fprintf (stderr, PGM ": unknown option '%s'\n", *argv); +          exit (1); +        } +    } + +  if (argc) +    { +      fprintf (stderr, PGM ": unexpected arguments\n"); +      exit (1); +    } +    gpgme_check_version (NULL);    err = gpgme_get_engine_info (&info);    fail_if_err (err); | 
