aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog125
-rw-r--r--src/Makefile.am18
-rw-r--r--src/decrypt.c16
-rw-r--r--src/extra-stati.h29
-rwxr-xr-xsrc/mkstatus16
5 files changed, 125 insertions, 79 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index f891d980..9b1ef8d5 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,10 @@
+2011-02-03 Werner Koch <[email protected]>
+
+ * extra-stati.h: New.
+ * mkstatus: Extend to also process extra-stati.h
+ * Makefile.am (main_sources): Add extra-stati.h
+ (status-table.h): Depend on extra-stati.h and adjust rule.
+
2010-12-08 Werner Koch <[email protected]>
* gpgme-tool.c (strcpy_escaped_plus): New.
@@ -928,7 +935,7 @@
2009-06-16 Werner Koch <[email protected]>
- * version.c: Include stdlib.h.
+ * version.c: Include stdlib.h.
* gpgme.h.in (gpgme_data_encoding_t): Add GPGME_DATA_ENCODING_URL,
GPGME_DATA_ENCODING_URLESC, GPGME_DATA_ENCODING_URL0.
@@ -1007,7 +1014,7 @@
* gpgme.c: Include priv-io.h.
(gpgme_io_read, gpgme_io_write): New.
- * libgpgme.vers (GPGME_1.1): Add them.
+ * libgpgme.vers (GPGME_1.1): Add them.
* gpgme.def: Ditto.
* Makefile.am (main_sources): Remove gpgme.h.
@@ -1471,7 +1478,7 @@
(_gpgme_engine_ops_gpgsm): Insert new function.
(gpgsm_new): Try to enable audit log support.
* rungpg.c (_gpgme_engine_ops_gpg): Insert dummy entry.
-
+
2007-11-20 Werner Koch <[email protected]>
* op-support.c (_gpgme_parse_inv_recp): Add new reason code 11.
@@ -1668,7 +1675,7 @@
drops to 0.
(find_reader, find_writer, kill_reader, kill_writer): Beautify.
* priv-io.h (_gpgme_io_dup): New prototype.
- * posix-io.c (_gpgme_io_dup): New function.
+ * posix-io.c (_gpgme_io_dup): New function.
* w32-io.c (_gpgme_io_dup): Likewise.
* w32-glib-io.c (_gpgme_io_dup): Likewise.
* engine-gpgsm.c (start): Reverting to version 2007-07-10.
@@ -1686,7 +1693,7 @@
in case of error.
* w32-io.c (_gpgme_io_read): Return C->error_code in ERRNO.
(_gpgme_io_write): Likewise.
-
+
* priv-io.h (_gpgme_io_set_close_notify): Change type of HANDLER
to _gpgme_close_notify_handler.
(_gpgme_close_notify_handler): New type.
@@ -1723,7 +1730,7 @@
2007-07-10 Marcus Brinkmann <[email protected]>
* priv-io.h (_gpgme_io_dup): New prototype.
- * posix-io.c (_gpgme_io_dup): New function.
+ * posix-io.c (_gpgme_io_dup): New function.
* w32-io.c (_gpgme_io_dup): Likewise.
* w32-glib-io.c (_gpgme_io_dup): Likewise.
* engine-gpgsm.c (start): Use _gpgme_dup() instead of dup().
@@ -1766,7 +1773,7 @@
(fd_cbs): Add fd_get_fd.
* data-stream.c (stream_get_fd): New function.
(stream_cbs): Add stream_get_fd.
- * data-mem.c (mem_cbs): Add NULL for get_fd callback.
+ * data-mem.c (mem_cbs): Add NULL for get_fd callback.
* data-user.c (user_cbs): Likewise.
* engine-gpgsm.c (gpgsm_set_fd) [USE_DESCRIPTOR_PASSING]: Try to
short-cut by passing the data descriptor directly.
@@ -1811,7 +1818,7 @@
* engine-gpgsm.c (gpgsm_new): Move code to dup status_fd to ...
(start): ... here.
* posix-io.c (_gpgme_io_recvmsg, _gpgme_io_sendmsg): New functions.
-
+
* engine.h (_gpgme_engine_new): Remove arguments lc_ctype and
lc_messages from prototype.
(_gpgme_engine_set_locale): New prototype.
@@ -2058,7 +2065,7 @@
(libgpgme_pth_la_SOURCES): Add $(system_components_not_extra).
(libgpgme_glib_la_LDFLAGS, libgpgme_glib_la_DEPENDENCIES,
(libgpgme_glib_la_LIBADD, libgpgme_glib_la_CFLAGS)
- [BUILD_W32_GLIB]: New variables.
+ [BUILD_W32_GLIB]: New variables.
* gpgme-config.in (glib): New option.
* gpgme.m4 (AM_PATH_GPGME_GLIB): New macro.
@@ -2254,7 +2261,7 @@
* gpgme.def: New.
* versioninfo.rc.in: New.
* Makefile.am: Addes support for building a W32 DLL.
-
+
* ttyname_r.c (ttyname_r) [W32]: Return error.
* ath-compat.c [W32]: select and co are not yet supported; return
error.
@@ -2266,7 +2273,7 @@
(_gpgme_stpcpy): .. this and made inline. This avoids duplicate
definitions when linking statically.
* stpcpy.c: Removed.
-
+
2005-07-27 Marcus Brinkmann <[email protected]>
* gpgme.h (gpgme_status_code_t): Add GPGME_STATUS_PLAINTEXT.
@@ -2392,7 +2399,7 @@
* data.c, engine-gpgsm.c, posix-io.c, rungpg.c, version.c,
w32-io.c, wait-private.c, wait-global.c, wait-user.c, wait.c:
Change all includes of "io.h" to "priv-io.h"
-
+
2005-03-09 Werner Koch <[email protected]>
* w32-util.c (_gpgme_get_gpg_path, _gpgme_get_gpgsm_path): Do not
@@ -2408,7 +2415,7 @@
files.
2005-03-07 Timo Schulz <[email protected]>
-
+
* gpgme.h: [_WIN32] Removed ssize_t typedef.
* ath.h: [_WIN32] Added some (dummy) types.
* io.h: [_WIN32] include stdio.h.
@@ -2548,7 +2555,7 @@
* data.c (_gpgme_data_outbound_handler): Close the file descriptor
if we get an EPIPE.
-
+
* data-stream.c (stream_seek): Call ftello and return the current
offset.
* data.h (struct gpgme_data): Change type of data.mem.offset to
@@ -2711,7 +2718,7 @@
2004-02-17 Werner Koch <[email protected]>
- * gpgme.h: Add GPGME_KEYLIST_MODE_VALIDATE.
+ * gpgme.h: Add GPGME_KEYLIST_MODE_VALIDATE.
* engine-gpgsm.c (gpgsm_keylist): Send this to gpgsm.
2004-02-15 Werner Koch <[email protected]>
@@ -3114,7 +3121,7 @@
* engine.c: Rename EngineObject to engine_t in the file. Also
EngineStatusHandler to engine_status_handler_t,
EngineCommandHandler to engine_command_handler_t and
- EngineColonLineHandler to engine_colon_line_handler.
+ EngineColonLineHandler to engine_colon_line_handler.
* rungpg.c (start): Likewise.
* engine-gpgsm.c: Likewise.
* engine-backend.h (struct engine_ops): Likewise
@@ -3613,7 +3620,7 @@
(gpgme_op_sign): Likewise.
* encrypt-sign.c (_gpgme_op_encrypt_sign_start): Call
_gpgme_op_sign_init_result.
-
+
* delete.c: Include <errno.h> and "gpgme.h", but not "util.h" or
"key.h".
(enum delete_problem): Move into function delete_status_handler.
@@ -3699,7 +3706,7 @@
(_gpgme_data_inbound_handler): Expand _gpgme_data_append, because
it will go. Do not assert DH.
(_gpgme_data_outbound_handler): Do not assert DH.
-
+
* export.c: Do not include <stdlib.h>, "debug.h" and "util.h", but
"gpgme.h".
(export_status_handler): Change type of first argument to void *.
@@ -3716,7 +3723,7 @@
* key.c (gpgme_key_get_string_attr): Fix validity attribute.
2003-04-24 Marcus Brinkmann <[email protected]>
-
+
* gpgme.h (struct _gpgme_op_genkey_result): New structure.
(GpgmeGenKeyResult): New type.
(gpgme_op_genkey): Drop last argument.
@@ -4060,7 +4067,7 @@
* version.c (gpgme_get_engine_info): Rewritten.
* gpgme.h (gpgme_engine_info): New structure.
(GpgmeEngineInfo): New type.
-
+
2003-01-29 Marcus Brinkmann <[email protected]>
* types.h: Remove byte and ulong types.
@@ -4205,7 +4212,7 @@
* key.c (gpgme_key_sig_get_string_attr): Use validity_to_string
instead otrust_to_string to calculate validity.
-
+
2003-01-19 Miguel Coca <[email protected]>
* w32-io.c (_gpgme_io_select): Add missing argument in calls to
@@ -4250,8 +4257,8 @@
_gpgme_engine_start.
* delete.c (_gpgme_op_delete_start): Likewise.
* edit.c (_gpgme_op_edit_start): Likewise.
- * encrypt.c (_gpgme_op_encrypt_start):
- * encrypt-sign.c (_gpgme_op_encrypt_sign_start):
+ * encrypt.c (_gpgme_op_encrypt_start):
+ * encrypt-sign.c (_gpgme_op_encrypt_sign_start):
* export.c (_gpgme_op_export_start): Likewise.
* genkey.c (_gpgme_op_genkey_start): Likewise.
* import.c (_gpgme_op_import_start): Likewise.
@@ -4323,7 +4330,7 @@
(mem_release): Change return type to void.
* data-user.c (user_read): Change return type to ssize_t.
(user_release): Change return type to void.
- * data-compat.c (old_user_read): Change return type to ssize_t.
+ * data-compat.c (old_user_read): Change return type to ssize_t.
* gpgme.h (GpgmeDataReadCb): Likewise.
(gpgme_data_read): Likewise.
(GpgmeDataSeekCb): Change return type to off_t.
@@ -4436,7 +4443,7 @@
_gpgme_data_append_string_for_xml rather than
_gpgme_data_append_string for the field content.
Submitted by Miguel Coca <[email protected]>.
-
+
2002-10-10 Marcus Brinkmann <[email protected]>
* rungpg.h, engine-gpgsm.h: File removed.
@@ -4798,7 +4805,7 @@
* import.c (_gpgme_op_import_start): Likewise.
* sign.c (_gpgme_op_sign_start): Likewise.
* verify.c (_gpgme_op_verify_start): Likewise.
-
+
* encrypt.c (gpgme_op_encrypt): Remove hack that returns invalid
no recipient if no data was returned.
* encrypt-sign.c (gpgme_op_encrypt_sign): Remove hack that returns
@@ -4833,7 +4840,7 @@
(build_argv): Use new member INBOUND to determine direction of
file descriptor. Don't check the data type.
* rungpg.h (_gpgme_gpg_add_data): Add new argument to prototype.
-
+
* gpgme.c (gpgme_get_op_info): Don't call
_gpgme_data_get_as_string if CTX->op_info is NULL.
@@ -4968,7 +4975,7 @@
2002-08-23 Werner Koch <[email protected]>
- * gpgme-config.in: Made --prefix work for --libs.
+ * gpgme-config.in: Made --prefix work for --libs.
2002-08-21 Marcus Brinkmann <[email protected]>
@@ -4994,7 +5001,7 @@
* gpgme.m4: Replaced with a new and faster version. This does not
anymore try to build test programs. If we really need test
- programs, we should add an option to gpgme-config to do so.
+ programs, we should add an option to gpgme-config to do so.
* vasprintf.c (int_vasprintf): Hack to handle NULL passed for %s.
@@ -5019,7 +5026,7 @@
* gpgme.h (GPGME_KEYLIST_MODE_SIGS): New.
* rungpg.c (_gpgme_gpg_op_keylist): Include sigs in listing depending
non the list mode.
-
+
* key.c (gpgme_key_get_string_attr): Use GPGME_ATTR_TYPE to return
information about the key type (PGP or X.509).
(gpgme_key_get_ulong_attr): Likewise.
@@ -5101,7 +5108,7 @@
* rungpg.c (struct gpg_object_s): Likewise for CMD.code.
These changes add an edit operation to GPGME:
-
+
* context.h (struct gpgme_context_s): New member RESULT.edit. *
ops.h: Add prototype for _gpgme_release_edit_result and
_gpgme_passphrase_command_handler.
@@ -5232,7 +5239,7 @@
table (eg use synchronous mode).
(gpgme_op_trustlist_next): Remove HANG argument from
_gpgme_wait_on_condition. Check its return value.
-
+
2002-06-27 Marcus Brinkmann <[email protected]>
* gpgme.h: Fix documentation of key attribute retrieval functions.
@@ -5308,7 +5315,7 @@
2002-06-12 Werner Koch <[email protected]>
* keylist.c (struct keylist_result_s): New.
- (_gpgme_release_keylist_result): Release it here
+ (_gpgme_release_keylist_result): Release it here
(keylist_status_handler): Handle truncated.
(append_xml_keylistinfo): New.
* gpgme.c (_gpgme_release_result): and use it here.
@@ -5661,7 +5668,7 @@
* verify.c (_gpgme_verify_status_handler): Handle TRUST_* status
lines so that a claim can be made without looking up the key.
- (gpgme_get_sig_string_attr): New.
+ (gpgme_get_sig_string_attr): New.
(gpgme_get_sig_ulong_attr): New.
* gpgme.h (GpgmeAttr): Added GPGME_ATTR_SIG_STATUS.
@@ -5671,7 +5678,7 @@
* gpgme.h (GpgmeSigStat): Add _GOOD_EXP and _GOOD_EXPKEY.
* verify.c (_gpgme_verify_status_handler, finish_sig): Handle
- these new status codes. Store the expiration time
+ these new status codes. Store the expiration time
2002-04-27 Werner Koch <[email protected]>
@@ -5845,7 +5852,7 @@
* rungpg.c (_gpgme_append_gpg_args_from_signers): New function.
(_gpgme_gpg_op_sign): Use that new function.
(_gpgme_gpg_op_encrypt_sign): New function.
- * rungpg.h (_gpgme_gpg_op_encrypt_sign): New prototype.
+ * rungpg.h (_gpgme_gpg_op_encrypt_sign): New prototype.
* gpgme.h (gpgme_op_encrypt_sign_start): New prototype.
(gpgme_op_encrypt_sign): Likewise.
* Makefile.am (libgpgme_la_SOURCES): Add encrypt-sign.c.
@@ -5857,7 +5864,7 @@
(_gpgme_encrypt_status_handler): ... this and make non-static.
* encrypt.c (gpgme_op_encrypt_start): Use new status handler name.
* sign.c (gpgme_op_sign_start): Likewise.
-
+
2002-02-25 Marcus Brinkmann <[email protected]>
* verify.c (_gpgme_verify_status_handler): Parse the args line to
@@ -6460,7 +6467,7 @@
server process from wait queue.
(_gpgme_gpgsm_op_verify, _gpgme_gpgsm_start,
_gpgme_gpgsm_set_status_handler, gpgms_status_handler): New function.
-
+
* engine.c (_gpgme_engine_start): Implement for GPGME_PROTOCOL_CMS.
(_gpgme_engine_set_status_handler): Likewise.
(_gpgme_engine_op_verify): Likewise.
@@ -6544,7 +6551,7 @@
* engine.c: Likewise.
* engine-gpgsm.h: Likewise.
* engine-gpgsm.c: Likewise.
-
+
* rungpg.c (_gpgme_gpg_get_version): New function.
(_gpgme_gpg_check_version): Likewise.
* rungpg.h: Add prototypes for _gpgme_gpg_get_version and
@@ -6739,7 +6746,7 @@
* keylist.c (finish_key): Shortcut for no tmp_key. Changed all
callers to use this function without a check for tmp_key.
-
+
* keylist.c (gpgme_op_keylist_next): Reset the key_cond after
emptying the queue. Bug reported by Stéphane Corthésy.
@@ -6771,12 +6778,12 @@
* keylist.c (keylist_colon_handler): Do a finish key if we receive
an EOF here. This is probably the reason for a lot of bugs
related to keylisting. It is so obvious. Kudos to Enno Cramer
- for pointing that out.
+ for pointing that out.
2001-08-28 Werner Koch <[email protected]>
* gpgme.c, gpgme.h (gpgme_get_op_info): New.
- (_gpgme_set_op_info): New.
+ (_gpgme_set_op_info): New.
(_gpgme_release_result): Reset the op_info here.
* sign.c (append_xml_siginfo): New.
(sign_status_handler): Store the sig create information.
@@ -6826,12 +6833,12 @@
2001-05-01 José Carlos García Sogo <[email protected]>
* encrypt.c (gpgme_op_encrypt_start): Deleted the assert ( !c->gpg )
- line, because it gave an error if another operation had been made
+ line, because it gave an error if another operation had been made
before using the same context.
-
- * decrypt.c (gpgme_op_decrypt_start): The same as above. Also added
+
+ * decrypt.c (gpgme_op_decrypt_start): The same as above. Also added
one line to release the gpg object in the context (if any).
-
+
2001-04-26 Werner Koch <[email protected]>
* key.c, key.h (_gpgme_key_cache_init): New.
@@ -6854,14 +6861,14 @@
* w32-io.c (_gpgme_io_select): Don't select on the writer if there
are still bytes pending. Timo found this not easy to track down
- race condition.
+ race condition.
2001-04-02 Werner Koch <[email protected]>
* gpgme.h: Add GPGME_ATTR_KEY_{EXPIRED,DISABLED}.
* key.c (gpgme_key_get_ulong_attr): And return those attribs.
- * verify.c (gpgme_get_sig_key): Set keyliosting mode depending on
+ * verify.c (gpgme_get_sig_key): Set keyliosting mode depending on
the mode set in the current context. Suggested by Timo.
* key.c (gpgme_key_get_ulong_attr): Return can_certify and not
@@ -6889,7 +6896,7 @@
2001-03-14 Werner Koch <[email protected]>
- * w32-io.c (destroy_reader,destroy_writer): Fixed syntax error.
+ * w32-io.c (destroy_reader,destroy_writer): Fixed syntax error.
Thanks to Jan Oliver Wagner.
2001-03-13 Werner Koch <[email protected]>
@@ -6897,7 +6904,7 @@
* context.h: Add invalid and revoke flags to user_id structure.
* keylist.c (gpgme_op_keylist_start): Use --fixed-list-mode.
(keylist_colon_handler): Adjust for that.
- (set_userid_flags): New.
+ (set_userid_flags): New.
(set_mainkey_trust_info): Handle new key invalid flag
(set_subkey_trust_info): Ditto.
* gpgme.h: Add new attributes for key and user ID flags.
@@ -6919,11 +6926,11 @@
2001-02-20 Werner Koch <[email protected]>
- * w32-io.c (destroy_reader,kill_reader): New.
+ * w32-io.c (destroy_reader,kill_reader): New.
(create_reader, reader): Add a new event to stop the thread.
(_gpgme_io_close): Kill the reader thread.
- * posix-io.c (_gpgme_io_select): Handle frozen fds here.
+ * posix-io.c (_gpgme_io_select): Handle frozen fds here.
* 32-io.c (_gpgme_io_select): Ditto. Removed a bunch of unused code.
* wait.c: Reworked the whole thing.
@@ -6947,7 +6954,7 @@
* posix-io.c (_gpgme_io_set_close_notify): New.
(_gpgme_io_close): Do the notification.
- * rungpg.c (close_notify_handler): New.
+ * rungpg.c (close_notify_handler): New.
(_gpgme_gpg_new): Register a callback for the fd.
(_gpgme_gpg_set_colon_line_handler): Ditto.
(build_argv): Ditto
@@ -6965,19 +6972,19 @@
* keylist.c (gpgme_op_keylist_start): Cancel a pending request.
- * posix-io.c (_gpgme_io_read): Add some debug output.
+ * posix-io.c (_gpgme_io_read): Add some debug output.
(_gpgme_io_write): Ditto.
(_gpgme_io_select): Increased the timeout.
2001-02-12 Werner Koch <[email protected]>
Enhanced the signature verification, so that it can how handle
- more than one signature and is able to return more information on
+ more than one signature and is able to return more information on
the signatures.
* verify.c (gpgme_get_sig_key): New.
(gpgme_get_sig_status): New.
- * gpgme.h: Add stdio.h.
+ * gpgme.h: Add stdio.h.
(GpgmeSigStat): New status DIFF.
2001-02-01 Werner Koch <[email protected]>
@@ -6992,8 +6999,8 @@
* wait.c (_gpgme_wait_on_condition): Removed all exit code processing.
(propagate_term_results,clear_active_fds): Removed.
- (count_active_fds): Renamed to ..
- (count_active_and_thawed_fds): .. this and count only thawed fds.
+ (count_active_fds): Renamed to ..
+ (count_active_and_thawed_fds): .. this and count only thawed fds.
* rungpg.c (gpg_colon_line_handler): Return colon.eof and not
status.eof ;-)
@@ -7014,7 +7021,7 @@
test his fix :-)
* w32-io.c: Does now use reader threads, so that we can use
- WaitForMultipleObjects.
+ WaitForMultipleObjects.
* sema.h, posix-sema.c, w32-sema.c: Support for Critcial sections.
Does currently only work for W32.
diff --git a/src/Makefile.am b/src/Makefile.am
index 0065c073..18c8b3b3 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,18 +1,18 @@
# Copyright (C) 2000 Werner Koch (dd9jn)
# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007 g10 Code GmbH
-#
+#
# This file is part of GPGME.
-#
+#
# GPGME is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; either version 2.1 of the
# License, or (at your option) any later version.
-#
+#
# GPGME 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 Lesser General
# Public License for more details.
-#
+#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, see <http://www.gnu.org/licenses/>.
@@ -99,7 +99,7 @@ endif
if HAVE_UISERVER
uiserver_components = engine-uiserver.c
else
-uiserver_components =
+uiserver_components =
endif
# These are the source files common to all library versions. We used
@@ -120,6 +120,7 @@ main_sources = \
import.c export.c genkey.c delete.c edit.c getauditlog.c \
opassuan.c passwd.c \
engine.h engine-backend.h engine.c engine-gpg.c status-table.h \
+ extra-stati.h \
$(gpgsm_components) $(assuan_components) $(gpgconf_components) \
$(uiserver_components) \
$(g13_components) vfs-mount.c vfs-create.c \
@@ -128,7 +129,7 @@ main_sources = \
debug.c debug.h gpgme.c version.c error.c
libgpgme_la_SOURCES = $(main_sources) \
- ath.h ath.c $(system_components_not_extra)
+ ath.h ath.c $(system_components_not_extra)
libgpgme_pthread_la_SOURCES = $(main_sources) \
ath.h ath-pthread.c $(system_components_not_extra)
libgpgme_pth_la_SOURCES = $(main_sources) \
@@ -241,8 +242,9 @@ endif
noinst_PROGRAMS = gpgme-tool
gpgme_tool_LDADD = libgpgme.la
-status-table.h : gpgme.h
- $(srcdir)/mkstatus < $(builddir)/gpgme.h > status-table.h
+status-table.h : gpgme.h extra-stati.h
+ cat $(builddir)/gpgme.h $(srcdir)extra-stati.h \
+ | $(srcdir)/mkstatus > status-table.h
install-data-local: install-def-file
diff --git a/src/decrypt.c b/src/decrypt.c
index 87ae4601..c017b907 100644
--- a/src/decrypt.c
+++ b/src/decrypt.c
@@ -3,17 +3,17 @@
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
This file is part of GPGME.
-
+
GPGME is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as
published by the Free Software Foundation; either version 2.1 of
the License, or (at your option) any later version.
-
+
GPGME 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
Lesser General Public License for more details.
-
+
You should have received a copy of the GNU Lesser General Public
License along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
@@ -31,6 +31,8 @@
#include "util.h"
#include "context.h"
#include "ops.h"
+#include "extra-stati.h"
+
typedef struct
@@ -39,7 +41,7 @@ typedef struct
int okay;
int failed;
-
+
/* A pointer to the next pointer of the last recipient in the list.
This makes appending new invalid signers painless while
preserving the order. */
@@ -200,6 +202,10 @@ _gpgme_decrypt_status_handler (void *priv, gpgme_status_code_t code,
return gpg_error (GPG_ERR_NO_DATA);
break;
+ case GPGME_STATUS_DECRYPTION_INFO:
+ /* Fixme: Provide a way to return the used symmetric algorithm. */
+ break;
+
case GPGME_STATUS_DECRYPTION_OKAY:
opd->okay = 1;
break;
@@ -286,7 +292,7 @@ _gpgme_decrypt_status_handler (void *priv, gpgme_status_code_t code,
err = _gpgme_parse_plaintext (args, &opd->result.file_name);
if (err)
return err;
-
+
default:
break;
}
diff --git a/src/extra-stati.h b/src/extra-stati.h
new file mode 100644
index 00000000..59cccf98
--- /dev/null
+++ b/src/extra-stati.h
@@ -0,0 +1,29 @@
+/* extra-stati.lst - Extra GnuPG status codes.
+ Copyright 2011 g10 Code GmbH
+
+ This file is free software; as a special exception the author gives
+ unlimited permission to copy and/or distribute it, with or without
+ modifications, as long as this notice is preserved.
+
+ This file is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY, to the extent permitted by law; without even
+ the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. */
+
+/* A list of internal status code to be processed by mkstatus. Those
+ * status codes are not part of the API but internally required by
+ * gpgme. We use a second enum type here but make sure that the
+ * values don't clash with those of gpgme_status_code_t.
+ */
+
+enum
+ {
+ /* This value is the first used one. It needs to be larger than
+ the last value of gpgme_status_code_t. There is no need to
+ explictly list the values because they are internal only. */
+ _GPGME_STATUS_FIRST_EXTRA = 192,
+
+ GPGME_STATUS_DECRYPTION_INFO,
+
+ _GPGME_STATUS_LAST_EXTRA
+ };
diff --git a/src/mkstatus b/src/mkstatus
index e64ab194..3fbfbf9e 100755
--- a/src/mkstatus
+++ b/src/mkstatus
@@ -10,12 +10,12 @@
# under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; either version 2.1 of the
# License, or (at your option) any later version.
-#
+#
# GPGME 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 Lesser General
# Public License for more details.
-#
+#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
@@ -34,16 +34,18 @@ struct status_table_s {
gpgme_status_code_t code;
};
-static struct status_table_s status_table[] =
+static struct status_table_s status_table[] =
{
EOF
awk '
-/GPGME_STATUS_ENTER/ { okay = 1 }
-!okay { next }
-/}/ { exit 0 }
+okay == 0 && /GPGME_STATUS_ENTER/ { okay = 1 }
+okay == 2 && /_GPGME_STATUS_FIRST_EXTRA/ { okay = 1; next }
+okay != 1 { next }
+/}/ { okay = 2 }
+/_GPGME_STATUS_LAST_EXTRA/ { exit 0 }
/GPGME_STATUS_[A-Za-z_]*/ { sub (/,/, "", $1); printf " { \"%s\", %s },\n", substr($1,14), $1 }
-' | sort
+' | sort
cat <<EOF
{NULL, 0}