core: Extend gpgme_get_dirinfo to return the gpg-wks-client name.
* src/dirinfo.c (WANT_GPG_WKS_CLIENT_NAME): New const. (struct dirinfo): New field 'gpg_wks_client_name'. (get_gpgconf_item): Build it on demand. (gpgme_get_dirinfo): New value "gpg-wks-client-name" for WHAT. Signed-off-by: Werner Koch <wk@gnupg.org>
This commit is contained in:
parent
fab8b1a166
commit
55ac5eed9f
@ -979,6 +979,9 @@ Return the file name of the CMS engine.
|
|||||||
@item g13-name
|
@item g13-name
|
||||||
Return the name of the file container encryption engine.
|
Return the name of the file container encryption engine.
|
||||||
|
|
||||||
|
@item gpg-wks-client-name
|
||||||
|
Return the name of the Web Key Service tool.
|
||||||
|
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@end deftypefun
|
@end deftypefun
|
||||||
|
@ -51,6 +51,7 @@ enum
|
|||||||
WANT_GPG_NAME,
|
WANT_GPG_NAME,
|
||||||
WANT_GPGSM_NAME,
|
WANT_GPGSM_NAME,
|
||||||
WANT_G13_NAME,
|
WANT_G13_NAME,
|
||||||
|
WANT_GPG_WKS_CLIENT_NAME,
|
||||||
WANT_GPG_ONE_MODE
|
WANT_GPG_ONE_MODE
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -73,6 +74,7 @@ static struct {
|
|||||||
char *gpg_name;
|
char *gpg_name;
|
||||||
char *gpgsm_name;
|
char *gpgsm_name;
|
||||||
char *g13_name;
|
char *g13_name;
|
||||||
|
char *gpg_wks_client_name;
|
||||||
int gpg_one_mode; /* System is in gpg1 mode. */
|
int gpg_one_mode; /* System is in gpg1 mode. */
|
||||||
} dirinfo;
|
} dirinfo;
|
||||||
|
|
||||||
@ -333,6 +335,14 @@ get_gpgconf_item (int what)
|
|||||||
case WANT_G13_NAME: result = dirinfo.g13_name; break;
|
case WANT_G13_NAME: result = dirinfo.g13_name; break;
|
||||||
case WANT_UISRV_SOCKET: result = dirinfo.uisrv_socket; break;
|
case WANT_UISRV_SOCKET: result = dirinfo.uisrv_socket; break;
|
||||||
case WANT_GPG_ONE_MODE: result = dirinfo.gpg_one_mode? "1":NULL; break;
|
case WANT_GPG_ONE_MODE: result = dirinfo.gpg_one_mode? "1":NULL; break;
|
||||||
|
case WANT_GPG_WKS_CLIENT_NAME:
|
||||||
|
if (!dirinfo.gpg_wks_client_name && dirinfo.libexecdir)
|
||||||
|
dirinfo.gpg_wks_client_name = _gpgme_strconcat (dirinfo.libexecdir,
|
||||||
|
"/",
|
||||||
|
"gpg-wks-client",
|
||||||
|
NULL);
|
||||||
|
result = dirinfo.gpg_wks_client_name;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
UNLOCK (dirinfo_lock);
|
UNLOCK (dirinfo_lock);
|
||||||
return result;
|
return result;
|
||||||
@ -438,6 +448,8 @@ gpgme_get_dirinfo (const char *what)
|
|||||||
return get_gpgconf_item (WANT_GPGSM_NAME);
|
return get_gpgconf_item (WANT_GPGSM_NAME);
|
||||||
else if (!strcmp (what, "g13-name"))
|
else if (!strcmp (what, "g13-name"))
|
||||||
return get_gpgconf_item (WANT_G13_NAME);
|
return get_gpgconf_item (WANT_G13_NAME);
|
||||||
|
else if (!strcmp (what, "gpg-wks-client-name"))
|
||||||
|
return get_gpgconf_item (WANT_GPG_WKS_CLIENT_NAME);
|
||||||
else if (!strcmp (what, "agent-ssh-socket"))
|
else if (!strcmp (what, "agent-ssh-socket"))
|
||||||
return get_gpgconf_item (WANT_AGENT_SSH_SOCKET);
|
return get_gpgconf_item (WANT_AGENT_SSH_SOCKET);
|
||||||
else if (!strcmp (what, "dirmngr-socket"))
|
else if (!strcmp (what, "dirmngr-socket"))
|
||||||
|
@ -125,7 +125,9 @@ main (int argc, char **argv )
|
|||||||
"gpgconf-name",
|
"gpgconf-name",
|
||||||
"gpg-name",
|
"gpg-name",
|
||||||
"gpgsm-name",
|
"gpgsm-name",
|
||||||
"g13-name", NULL };
|
"g13-name",
|
||||||
|
"gpg-wks-client-name",
|
||||||
|
NULL };
|
||||||
const char *s;
|
const char *s;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user