From 77931a9a1468b0cfbaafd4153867d90764a6d258 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Thu, 10 Apr 2014 11:47:19 +0200 Subject: Add gpgme_get_dirinfo. * src/dirinfo.c (gpgme_get_dirinfo): New. * tests/t-engine-info.c (main): Print results from that function. --- src/dirinfo.c | 25 +++++++++++++++++++++++++ src/gpgme.def | 2 ++ src/gpgme.h.in | 3 +++ src/libgpgme.vers | 2 ++ 4 files changed, 32 insertions(+) (limited to 'src') diff --git a/src/dirinfo.c b/src/dirinfo.c index 845bc489..8824c9a4 100644 --- a/src/dirinfo.c +++ b/src/dirinfo.c @@ -357,3 +357,28 @@ _gpgme_get_basename (const char *name) return s+1; return name; } + + +/* Return default values for various directories and file names. */ +const char * +gpgme_get_dirinfo (const char *what) +{ + if (!what) + return NULL; + else if (!strcmp (what, "homedir")) + return get_gpgconf_item (WANT_HOMEDIR); + else if (!strcmp (what, "agent-socket")) + return get_gpgconf_item (WANT_AGENT_SOCKET); + else if (!strcmp (what, "uiserver-socket")) + return get_gpgconf_item (WANT_UISRV_SOCKET); + else if (!strcmp (what, "gpgconf-name")) + return get_gpgconf_item (WANT_GPGCONF_NAME); + else if (!strcmp (what, "gpg-name")) + return get_gpgconf_item (WANT_GPG_NAME); + else if (!strcmp (what, "gpgsm-name")) + return get_gpgconf_item (WANT_GPGSM_NAME); + else if (!strcmp (what, "g13-name")) + return get_gpgconf_item (WANT_G13_NAME); + else + return NULL; +} diff --git a/src/gpgme.def b/src/gpgme.def index 0478cb62..ee0c42e2 100644 --- a/src/gpgme.def +++ b/src/gpgme.def @@ -213,5 +213,7 @@ EXPORTS gpgme_data_identify @161 + gpgme_get_dirinfo @162 + ; END diff --git a/src/gpgme.h.in b/src/gpgme.h.in index 5c4de6be..050051a4 100644 --- a/src/gpgme.h.in +++ b/src/gpgme.h.in @@ -2090,6 +2090,9 @@ const char *gpgme_check_version_internal (const char *req_version, gpgme_check_version_internal (req_version, \ offsetof (struct _gpgme_signature, validity)) +/* Return the default values for various directories. */ +const char *gpgme_get_dirinfo (const char *what); + /* Get the information about the configured and installed engines. A pointer to the first engine in the statically allocated linked list is returned in *INFO. If an error occurs, it is returned. The diff --git a/src/libgpgme.vers b/src/libgpgme.vers index fe18e6a5..4db1d408 100644 --- a/src/libgpgme.vers +++ b/src/libgpgme.vers @@ -87,6 +87,8 @@ GPGME_1.1 { gpgme_set_pinentry_mode; gpgme_get_pinentry_mode; + + gpgme_get_dirinfo; }; -- cgit v1.2.3