aboutsummaryrefslogtreecommitdiffstats
path: root/src/engine-uiserver.c
diff options
context:
space:
mode:
authorMarcus Brinkmann <[email protected]>2012-02-14 12:03:46 +0000
committerMarcus Brinkmann <[email protected]>2012-02-14 12:34:44 +0000
commit885243e05467e79e2375b3febe7904053ab45dfc (patch)
tree2eb90674c28bf54126beb7c4e1e1d11f016066c9 /src/engine-uiserver.c
parentUse gpgme interface for error handling to avoid linking with gpg-error. (diff)
downloadgpgme-885243e05467e79e2375b3febe7904053ab45dfc.tar.gz
gpgme-885243e05467e79e2375b3febe7904053ab45dfc.zip
Rework status table to be less dynamically generated.
* src/Makefile.am (EXTRA_DIST): Remove mkstatus. (BUILT_SOURCE, MOSTLYCLEANFILES): Remove. (main_sources): Remove status-table.h, extra-stati.h. Add status-table.c. (status-table.h): Remove rules for built source. * src/decrypt.c: Don't include extra-stati.h. * src/engine-gpg.c: Don't include status-table.h. (status_cmp): Remove function. (read_status): Use _gpgme_parse_status. * src/engine-gpgsm.c: Don't include status-table.h. (status_cmp, parse_status): Remove function. (gpgsm_assuan_simple_command, status_handler): Use _gpgme_parse_status. * src/engine-uiserver.c: Don't include status-table.h. (status_cmp, parse_status): Remove function. (uiserver_assuan_simple_command, status_handler): Use _gpgme_parse_status. * src/gpgme.h.in (gpgme_status_code_t): Add GPGME_STATUS_DECRYPTION_INFO. * src/util.h (_gpgme_status_init,_gpgme_parse_status): New declaration. * src/status-table.c: New file. * src/extra-stati.h, src/mkstatus: Files removed. * version.c (do_subsystem_inits): Call _gpgme_status_init.
Diffstat (limited to '')
-rw-r--r--src/engine-uiserver.c28
1 files changed, 2 insertions, 26 deletions
diff --git a/src/engine-uiserver.c b/src/engine-uiserver.c
index 92f75363..c705a4b6 100644
--- a/src/engine-uiserver.c
+++ b/src/engine-uiserver.c
@@ -453,9 +453,6 @@ uiserver_set_protocol (void *engine, gpgme_protocol_t protocol)
}
-/* Forward declaration. */
-static gpgme_status_code_t parse_status (const char *name);
-
static gpgme_error_t
uiserver_assuan_simple_command (assuan_context_t ctx, char *cmd,
engine_status_handler_t status_fnc,
@@ -498,7 +495,7 @@ uiserver_assuan_simple_command (assuan_context_t ctx, char *cmd,
else
*(rest++) = 0;
- r = parse_status (line + 2);
+ r = _gpgme_parse_status (line + 2);
if (r >= 0 && status_fnc)
err = status_fnc (status_fnc_value, r, rest);
@@ -620,27 +617,6 @@ map_data_enc (gpgme_data_t d)
}
-static int
-status_cmp (const void *ap, const void *bp)
-{
- const struct status_table_s *a = ap;
- const struct status_table_s *b = bp;
-
- return strcmp (a->name, b->name);
-}
-
-
-static gpgme_status_code_t
-parse_status (const char *name)
-{
- struct status_table_s t, *r;
- t.name = name;
- r = bsearch (&t, status_table, DIM(status_table) - 1,
- sizeof t, status_cmp);
- return r ? r->code : -1;
-}
-
-
static gpgme_error_t
status_handler (void *opaque, int fd)
{
@@ -827,7 +803,7 @@ status_handler (void *opaque, int fd)
else
*(rest++) = 0;
- r = parse_status (line + 2);
+ r = _gpgme_parse_status (line + 2);
if (r >= 0)
{