gpgme.git
22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de> gpgme-0-3-9
Marcus Brinkmann [Wed, 21 Aug 2002 00:09:52 +0000 (00:09 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

Released 0.3.9.

* NEWS: Update for 0.3.9 release.
* Makefile.am (EXTRA_DIST): Add gpgme.spec.in.

22 years agoUse gpgme_op_import_ext() instead of gpgme_op_import()
Steffen Hansen [Tue, 20 Aug 2002 23:37:43 +0000 (23:37 +0000)]
Use gpgme_op_import_ext() instead of gpgme_op_import()

22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 20 Aug 2002 23:25:49 +0000 (23:25 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Header): Document name space.

22 years agoRemove item about namespace, we are clean now.
Marcus Brinkmann [Tue, 20 Aug 2002 23:19:28 +0000 (23:19 +0000)]
Remove item about namespace, we are clean now.

22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 20 Aug 2002 23:15:03 +0000 (23:15 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* ath.h: Update list of symbols that get a prefix: Rename the
ath_mutex_*_available symbols to ath_*_available.

22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 20 Aug 2002 22:53:13 +0000 (22:53 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* jnlib/argparse.c, jnlib/argparse.h, jnlib/ChangeLog,
jnlib/dotlock.c, jnlib/dotlock.h, jnlib/libjnlib-config.h,
jnlib/logging.c, jnlib/logging.h,jnlib/Makefile.am,
jnlib/mischelp.h, jnlib/README, jnlib/stringhelp.c,
jnlib/stringhelp.h, jnlib/strlist.c, jnlib/strlist.h,
jnlib/types.h, jnlib/xmalloc.c, jnlib/xmalloc.h: Remove files.

22 years ago2002-08-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 20 Aug 2002 22:42:48 +0000 (22:42 +0000)]
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* Makefile.am (SUBDIRS): Remove jnlib.
* configure.ac: Don't check for unsigned short or unsigned long.
Don't check for memicmp, strlwr, strtoul, memmove, stricmp.
Make stpcpy a replaced function.
Don't define HAVE_JNLIB_LOGGING.
Don't generate jnlib/Makefile.

gpgme/
2002-08-21  Marcus Brinkmann  <marcus@g10code.de>

* stpcpy.c: New file from gnulib.
* Makefile.am (assuan_libobjs): Remove jnlib.

22 years agoReplaced with a new and faster version. This does not anymore try to
Werner Koch [Tue, 20 Aug 2002 16:11:46 +0000 (16:11 +0000)]
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.

22 years ago2002-08-20 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 20 Aug 2002 15:44:48 +0000 (15:44 +0000)]
2002-08-20  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Importing Keys): Undocument EOF.

22 years agodoc/
Marcus Brinkmann [Tue, 20 Aug 2002 13:38:40 +0000 (13:38 +0000)]
doc/
2002-08-20  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Importing Keys): Document gpgme_op_import_ext.

gpgme/
2002-08-20  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.h: Add prototype for gpgme_op_import_ext.
* import.c (struct import_result_s): New member `nr_considered'.
Rename `any_imported' to `nr_imported'.
(import_status_handler): Increment nr_imported.  Set nr_considered
if appropriate.
(gpgme_op_import_ext): New function.
(gpgme_op_import): Implement in terms of gpgme_op_import_ext.

22 years ago* vasprintf.c (int_vasprintf): Hack to handle NULL passed for %s.
Werner Koch [Tue, 20 Aug 2002 11:59:38 +0000 (11:59 +0000)]
* vasprintf.c (int_vasprintf): Hack to handle NULL passed for %s.

22 years agoAdded some feature requests.
Werner Koch [Tue, 20 Aug 2002 11:59:24 +0000 (11:59 +0000)]
Added some feature requests.

22 years ago2002-08-20 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 20 Aug 2002 11:01:43 +0000 (11:01 +0000)]
2002-08-20  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.c (_gpgme_set_op_info): Append data on subsequent calls.
* encrypt-sign.c (encrypt_sign_status_handler): Remove op_info
handling.

22 years ago* decrypt.c (is_token,skip_token): Duplicated from verify.c
Werner Koch [Mon, 19 Aug 2002 16:55:08 +0000 (16:55 +0000)]
* decrypt.c (is_token,skip_token): Duplicated from verify.c
(gpgme_op_decrypt): Hack to properly return Decryption_Failed..
(_gpgme_decrypt_status_handler): Create an operation info.

22 years ago* key.h (struct certsig_s): New. Use it in gpgme_key_s.
Werner Koch [Wed, 14 Aug 2002 14:01:09 +0000 (14:01 +0000)]
* key.h (struct certsig_s): New.  Use it in gpgme_key_s.
* key.c (gpgme_key_release): Release it. We need to add more code
of course.
(_gpgme_key_append_name): Use memset to intialize the struct.
* 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.

* keylist.c (keylist_colon_handler): Include 1 in the check for
valid algorithms so that RSA is usable.  Store the issuer name and
serial number also for "crs" records.  Parse the expire date for
subkeys.
(set_userid_flags): Put them onto the last appended key.

22 years ago* gpgme.texi (Information About Keys): Changed GPGME_ATTR_TYPE.
Werner Koch [Wed, 14 Aug 2002 13:57:59 +0000 (13:57 +0000)]
* gpgme.texi (Information About Keys): Changed GPGME_ATTR_TYPE.

22 years agoFixed a missing update in the fix to the update conflict ;)
Marcus Brinkmann [Fri, 2 Aug 2002 10:43:58 +0000 (10:43 +0000)]
Fixed a missing update in the fix to the update conflict ;)
(STATUS_EOF -> GPGME_STATUS_EOF).

22 years agoCorrect path to test programs.
Marcus Brinkmann [Thu, 1 Aug 2002 17:40:38 +0000 (17:40 +0000)]
Correct path to test programs.

22 years ago2002-08-01 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 1 Aug 2002 16:02:19 +0000 (16:02 +0000)]
2002-08-01  Marcus Brinkmann  <marcus@g10code.de>

* gpg/t-edit.c: Also add a test for the expire command (testing
the passphrase callback).

22 years agoFixed an update conflict.
Werner Koch [Thu, 1 Aug 2002 10:16:21 +0000 (10:16 +0000)]
Fixed an update conflict.

22 years agonew cryptplug function importCertificateFromMem()
Steffen Hansen [Wed, 31 Jul 2002 12:37:34 +0000 (12:37 +0000)]
new cryptplug function importCertificateFromMem()

22 years ago2002-07-29 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Mon, 29 Jul 2002 11:01:53 +0000 (11:01 +0000)]
2002-07-29  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.c (_gpgme_gpg_op_edit): Use --with-colons.

22 years agoAdd items about the edit key operation.
Marcus Brinkmann [Sun, 28 Jul 2002 18:45:52 +0000 (18:45 +0000)]
Add items about the edit key operation.

22 years ago2002-07-28 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sun, 28 Jul 2002 18:43:48 +0000 (18:43 +0000)]
2002-07-28  Marcus Brinkmann  <marcus@g10code.de>

* gpg/t-edit.c: New file.
* gpg/Makefile (TESTS): Add t-edit.

22 years ago2002-07-28 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sun, 28 Jul 2002 18:41:02 +0000 (18:41 +0000)]
2002-07-28  Marcus Brinkmann  <marcus@g10code.de>

* data.c (gpgme_data_read): For GPGME_DATA_TYPE_NONE, return EOF
instead an error.

The following changes make it possible to flush an inbound data
pipe before invoking a command handler:

* posix-io.c (_gpgme_io_select): Accept new argument NONBLOCK to
_gpgme_io_select.  Set timeout of 0 if this is set.
* w32-io.c (_gpgme_io_select): Likewise.
* io.h: Add new argument NONBLOCK to _gpgme_io_select prototype.
* wait.c (do_select): Add new argument to _gpgme_io_select
invocation.
* rungpg.h (_gpgme_gpg_set_command_handler): Add new argument
linked_data to prototype.
* engine.h (_gpgme_engine_set_command_handler): Likewise.
* engine.c (_gpgme_engine_set_command_handler): Likewise.
* passphrase.c (_gpgme_passphrase_start): Pass NULL as linked_data
argument to _gpgme_engine_set_command_handler.
* rungpg.c (struct gpg_object_s): New members linked_data and
linked_idx in CMD.
(_gpgme_gpg_new): Initialize those new members.
(_gpgme_gpg_set_command_handler): Accept new argument linked_data.
(build_argv): Handle linked_data in the same hack as cb_data.
(read_status): If linked_data is in use, flush the pipe before
activating the command handler.
* gpgme.h: Add prototypes for gpgme_op_edit_start and
gpgme_op_edit.

The next changes export the status codes to the user:

* decrypt.c (_gpgme_decrypt_status_handler): Likewise, also prefix
all STATUS_ with GPGME_.
* delete.c (delete_status_handler): Likewise.
* decrypt-verify.c (decrypt_verify_status_handler): Likewise.
* encrypt.c (_gpgme_encrypt_status_handler): Likewise.
(_gpgme_encrypt_sym_status_handler): Likewise.
* encrypt-sign.c (encrypt_sign_status_handler): Likewise.
* engine-gpgsm.c (parse_status): Likewise.
(gpgsm_status_handler): Likewise.
(gpgsm_set_recipients): Likewise.
* export.c (export_status_handler): Likewise.
* genkey.c (genkey_status_handler): Likewise.
* import.c (append_xml_impinfo): Likewise.
(import_status_handler): Likewise.
* keylist.c (keylist_status_handler): Likewise.
* passphrase.c (_gpgme_passphrase_status_handler): Likewise.
(command_handler): Likewise.
* progress.c (_gpgme_progress_status_handler): Likewise.
* sign.c (_gpgme_sign_status_handler): Likewise.
* trustlist.c (trustlist_status_handler): Likewise.
* verify.c (_gpgme_verify_status_handler): Likewise.
* gpgme.h (GpgmeEditCb): New type.
* rungpg.h (GpgStatusCode): Rename and move to ...
* gpgme.h (GpgmeStatusCode): ... this and here.
* Makefile.am (status-table.h): Run mkstatus on gpgme.h, not rungpg.h.
* mkstatus: Prefix STATUS with GPGME_.
* rungpg.h (GpgStatusHandler, GpgCommandHandler): Change type
accordingly.
* ops.h (_gpgme_verify_status_handler,
_gpgme_decrypt_status_handler, _gpgme_sign_status_handler,
_gpgme_encrypt_status_handler, _gpgme_passphrase_status_handler,
_gpgme_progress_status_handler): Likewise.
* 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.
* passphrase.c (command_handler): Make non-static and rename to ...
(_gpgme_passphrase_command_handler): ... this.
(_gpgme_passphrase_start): Use new name for command handler.
* types.h: Add EditResult type.
* gpgme.c (_gpgme_release_result): Release EDIT result.
* edit.c: New file.
* Makefile.am (libgpgme_la_SOURCES): Add edit.c.
(libgpgme_la_LDADD): Rename to libgpgme_la_LIBADD, and include
assuan_libobjs.
(assuan_libobjs): New variable, set this instead
libgpgme_la_LIBADD.
* engine.h (_gpgme_engine_op_edit): New prototype.
* engine.c (_gpgme_engine_op_edit): New function.
* rungpg.h (_gpgme_gpg_op_edit): New prototype.
* rungpg.c (_gpgme_gpg_op_edit): New function.

22 years agoUpdate the file.
Marcus Brinkmann [Sat, 27 Jul 2002 20:21:36 +0000 (20:21 +0000)]
Update the file.

22 years ago2002-07-27 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sat, 27 Jul 2002 14:24:07 +0000 (14:24 +0000)]
2002-07-27  Marcus Brinkmann  <marcus@g10code.de>

* delete.c (delete_problem): New case ambigious specification.
(delete_status_handler): Handle new case (poorly).

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 18:50:23 +0000 (18:50 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Deleting Keys): Say that secret keys might not be
deleted.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 18:44:57 +0000 (18:44 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* engine-gpgsm.c (_gpgme_gpgsm_op_delete): Implement this.

22 years agoUpdate version information.
Marcus Brinkmann [Thu, 25 Jul 2002 18:20:23 +0000 (18:20 +0000)]
Update version information.

22 years agoUpdate version requirement.
Marcus Brinkmann [Thu, 25 Jul 2002 18:15:52 +0000 (18:15 +0000)]
Update version requirement.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 18:15:11 +0000 (18:15 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* gpg/t-encrypt-sym.c (main): Change type of I to size_t and
rename to LEN.
* gpg/t-verify.c (main): Likewise.  Submitted by St�phane
Corth�sy.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 17:51:42 +0000 (17:51 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* Makefile.am (libgpgme_la_LDADD): Add @LIBOBJS@ for vasprintf and
fopencookie.
* vasprintf.c: Update to more recent libiberty version.
* debug.h: Replace #elsif with #elif.

Submitted by St�phane Corth�sy:
* util.h (vasprintf): Correct prototype.
* encrypt-sign.c: Include <stddef.h>.
(encrypt_sign_status_handler): Change type of ENCRYPT_INFO_LEN to
size_t.
* ath-pthread.c: Include <stdlib.h>, not <malloc.h>.
* ath-pth.c: Likewise.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 16:08:14 +0000 (16:08 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.c (_gpgme_gpg_new): Always set utf8 as charset.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 16:01:55 +0000 (16:01 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* key.c (gpgme_key_get_as_xml): Add OTRUST attribute.  Requested
by St�phane Corth�sy.
(gpgme_key_get_string_attr): Add GPGME_ATTR_SIG_SUMMARY case to
silence gcc warning.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 15:52:23 +0000 (15:52 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Manipulating Data Buffers): Mention that backend
tries to detect encoding automatically.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 15:50:46 +0000 (15:50 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Information About Keys): Document (badly) the new
key attributes.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 15:45:40 +0000 (15:45 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.c (_gpgme_gpg_op_keylist_ext): Skip empty string
patterns.  Reported by St�phane Corth�sy.

22 years ago2002-07-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Jul 2002 15:33:03 +0000 (15:33 +0000)]
2002-07-25  Marcus Brinkmann  <marcus@g10code.de>

* wait.c (fdt_global): Make static.  Reported by St�phane
Corth�sy.

22 years agoCRASH prevention fix: Memory was overwritten if there were more than 1 email address...
Karl-Heinz Zimmer [Thu, 4 Jul 2002 00:02:19 +0000 (00:02 +0000)]
CRASH prevention fix: Memory was overwritten if there were more than 1 email address in a signature certificate found in checkMessageSignature() function.

22 years agofixing bug #1154
Karl-Heinz Zimmer [Wed, 3 Jul 2002 15:43:41 +0000 (15:43 +0000)]
fixing bug #1154

22 years ago* gpgmeplug.c (nextCertificate): Actually free the entire array
Werner Koch [Wed, 3 Jul 2002 11:04:54 +0000 (11:04 +0000)]
* gpgmeplug.c (nextCertificate): Actually free the entire array
and don't loop over tmp_dn and double free the first item.
Spotted by Bernhard Herzog.

22 years ago2002-07-03 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 3 Jul 2002 02:22:38 +0000 (02:22 +0000)]
2002-07-03  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Run Control): Update this section.
(Waiting For Completion): Likewise for this subsection.
(Cancelling an Operation): Likewise for this subsection.
(Using External Event Loops): New subsection with several
subsubsections.

22 years ago2002-07-03 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 3 Jul 2002 02:18:43 +0000 (02:18 +0000)]
2002-07-03  Marcus Brinkmann  <marcus@g10code.de>

* gpg/t-eventloop.c: New file.
* gpg/Makefile (TESTS): Add t-eventloop.

22 years ago2002-07-03 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 3 Jul 2002 01:57:03 +0000 (01:57 +0000)]
2002-07-03  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.c (gpgme_set_io_cbs): Deal with CTX being NULL.

* gpgme.c (_gpgme_op_event_cb_user): New function.
* op-support.c (_gpgme_op_reset): Support a new mode of operation
for private or user event loop.  Use new user event callback
wrapper.
* trustlist.c (gpgme_op_trustlist_start): Use this new mode.
* keylist.c (gpgme_op_keylist_start): Likewise.

* rungpg.c (_gpgme_gpg_io_event): New function.
* rungpg.h (_gpgme_gpg_io_event): New prototype.
* engine-gpgsm.c (_gpgme_gpg_io_event): New function.
* engine-gpgsm.h (_gpgme_gpgsm_io_event): New prototype.
* engine.c (_gpgme_engine_io_event): New function.
* engine.h (_gpgme_engine_io_event): New prototype.
* keylist.c (finish_key): Call _gpgme_engine_io_event, and move
the real work for the default IO callback routines to ...
(_gpgme_op_keylist_event_cb): ... here.  New function.
* trustlist.c (trustlist_colon_handler): Signal
GPGME_EVENT_NEXT_TRUSTITEM.  Move queue manipulation to ...
(_gpgme_op_trustlist_event_cb): ... here.  New function.
* gpgme.c (_gpgme_op_event_cb): Call _gpgme_op_keylist_event_cb
and _gpgme_op_trustlist_event_cb when appropriate.
* ops.h (_gpgme_op_keylist_event_cb): New prototype.
(_gpgme_op_trustlist_event_cb): Likewise.
* op-support.c (_gpgme_op_reset): Add comment why we don't use the
user provided event handler directly.
* gpgme.h (GpgmeRegisterIOCb): Return GpgmeError value, and TAG in
a pointer argument.
* wait.c (_gpgme_add_io_cb): Likewise.
* wait.h (_gpgme_add_io_cb): Likewise for prototype.
* rungpg.c (_gpgme_gpg_add_io_cb): Call IO_CBS->add with new
argument.  Fix up error handling.
* engine-gpgsm.c (_gpgme_gpgsm_add_io_cb): Call IO_CBS->add with
new argument, fix up error handling.

22 years agoFix news item.
Marcus Brinkmann [Tue, 2 Jul 2002 20:43:25 +0000 (20:43 +0000)]
Fix news item.

22 years agomake sure key used for signing _can_ sign dd9jn_pre_test_20020702
Karl-Heinz Zimmer [Tue, 2 Jul 2002 16:32:29 +0000 (16:32 +0000)]
make sure key used for signing _can_ sign

22 years ago* configure.ac: Bumbed version number to 0.3.9; add a comment on
Werner Koch [Tue, 2 Jul 2002 09:08:21 +0000 (09:08 +0000)]
* configure.ac: Bumbed version number to 0.3.9; add a comment on
when to change it.

* gpgme.spec.in: New. Contributed by Wojciech Polak.
* Makefile.am (dist-hook): New.

* AUTHORS: Added Wojciech and bug reporting addresses.

22 years agoauto updated version number.
Werner Koch [Tue, 2 Jul 2002 09:07:52 +0000 (09:07 +0000)]
auto updated version number.

22 years agotypo fix in comment.
Werner Koch [Tue, 2 Jul 2002 08:53:31 +0000 (08:53 +0000)]
typo fix in comment.

22 years ago(xstrdup): Oops, obviously I calculated the length wrong when
Werner Koch [Mon, 1 Jul 2002 13:09:18 +0000 (13:09 +0000)]
(xstrdup): Oops, obviously I calculated the length wrong when
coded this.  Tsss, wrote xstrdup some hundreds times but missed it
this time.  Thanks to Steffen Hansen for noticing it.

22 years ago* gpgmeplug.c (findCertificates): Reintroduced a free which must
Werner Koch [Mon, 1 Jul 2002 13:01:51 +0000 (13:01 +0000)]
* gpgmeplug.c (findCertificates): Reintroduced a free which must
have been removed after my last fix.  This avoids a memory leak
when a fingerprint was not found.  Removed the double loop
increment in the code to release the arrays.
(make_fingerprint): Removed superfluous check on retrun value of
xmalloc.
(safe_free): Removed.  Changed all callers to use a regular free
and at appropriate palces set the free pointer to NULL.  That
safe_free stuff seems to have been copied verbatim from some
Mutt example code I posted.
(storeNewCharPtr): Use xmalloc instead of an unchecked
malloc. Removed superfluous string termination.
(parseAddress): Use xmalloc instead of an unchecked malloc.
(nextAddress): Ditto.
* gpgmeplug.c:  Moved a few helper functions more to the top.
Fixed comment syntax.  Merged a copyright notice somewhere in the
middle of the file with the one at the top.

22 years agoFixed memory corruption bug
Steffen Hansen [Mon, 1 Jul 2002 12:52:29 +0000 (12:52 +0000)]
Fixed memory corruption bug

22 years agoavoid another memory leak in checkMessageSignature()
Karl-Heinz Zimmer [Mon, 1 Jul 2002 12:08:24 +0000 (12:08 +0000)]
avoid another memory leak in checkMessageSignature()

22 years ago* gpgmeplug.c (findCertificates): Reintroduced a free which must
Werner Koch [Mon, 1 Jul 2002 11:36:48 +0000 (11:36 +0000)]
* gpgmeplug.c (findCertificates): Reintroduced a free which must
have been removed after my last fix.  This avoids a memory leak
when a fingerprint was not found.  Removed the double loop
increment in the code to release the arrays.

22 years agoreplace many comment lines by just one single comment
Karl-Heinz Zimmer [Fri, 28 Jun 2002 19:50:31 +0000 (19:50 +0000)]
replace many comment lines by just one single comment

22 years agoMake it compile. :-(
Karl-Heinz Zimmer [Fri, 28 Jun 2002 19:40:13 +0000 (19:40 +0000)]
Make it compile. :-(

22 years agoRemoved silly "free( dn )" statement forgotten during my last changes in findCertific...
Karl-Heinz Zimmer [Fri, 28 Jun 2002 19:37:06 +0000 (19:37 +0000)]
Removed silly "free( dn )" statement forgotten during my last changes in findCertificates().

22 years ago* gpgmeplug.c (xmalloc): New.
Werner Koch [Fri, 28 Jun 2002 18:30:23 +0000 (18:30 +0000)]
* gpgmeplug.c (xmalloc): New.
(safe_malloc): Removed this macro and replaced it at all places
without return values checks by xmalloc.
(xstrdup): New. Replaces funny named macro with different
semantics.  Changed all callers to the new semantic.
(findCertificates): Don't free duplicate free the FPR array
values.  Removed the unneeded initialization.  Replaces the
gcc-ish use dynamic allocation of automatic variables by repalce
maxCerts with a macro MAXCERTS.  Made some comments Real C (tm).
(startListCertificates): Removed uneeded cast from xmalloc.

22 years ago * gpgmeplug.c: new macro days_to_seconds().
Bernhard Reiter [Fri, 28 Jun 2002 14:51:12 +0000 (14:51 +0000)]
* gpgmeplug.c: new macro days_to_seconds().
this also fixes the dividing factor.
(signatureCertificateDaysLeftToExpiry)
        (preceiverCertificateDaysLeftToExpiry): using the new macro

(caCertificateDaysLeftToExpiry)
(rootCertificateDaysLeftToExpiry): using new macro in deactivated code.

22 years agointernal AEgypten bugfix #1131: get full list of emails stored in certificated used...
Karl-Heinz Zimmer [Fri, 28 Jun 2002 14:12:18 +0000 (14:12 +0000)]
internal AEgypten bugfix #1131: get full list of emails stored in certificated used for signing a received message

22 years ago2002-06-28 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Fri, 28 Jun 2002 12:02:43 +0000 (12:02 +0000)]
2002-06-28  Marcus Brinkmann  <marcus@g10code.de>

* keylist.c (gpgme_op_keylist_ext_start): Always use our own FD
table (eg use synchronous mode).

22 years ago2002-06-28 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Fri, 28 Jun 2002 01:14:41 +0000 (01:14 +0000)]
2002-06-28  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Multi Threading): Remove item about the need to
synchronize anything against gpgme_wait (except gpgme_wait
itself).

22 years ago2002-06-28 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Fri, 28 Jun 2002 01:11:20 +0000 (01:11 +0000)]
2002-06-28  Marcus Brinkmann  <marcus@g10code.de>

* ops.h (_gpgme_wait_on_condition): Remove HANG argument from
prototype and change return type to GpgmeError.
(_gpgme_wait_one): New prototype.
* wait.c (gpgme_wait): Replace with the meat from
_gpgme_wait_on_condition here, and remove the support for
conditions.
(_gpgme_wait_on_condition): Remove HANG argument from prototype
and change return type to GpgmeError.  Replace with meat from
_gpgme_wait_one and add support for conditions.
(_gpgme_wait_one): Just call _gpgme_wait_on_condition without
condition.
* keylist.c (gpgme_op_keylist_ext_start): Always use our own FD
table (eg use synchronous mode).
(gpgme_op_keylist_next): Remove HANG argument from
_gpgme_wait_on_condition.  Check its return value.
* trustlist.c (gpgme_op_trustlist_start): Always use our own FD
table (eg use synchronous mode).
(gpgme_op_trustlist_next): Remove HANG argument from
_gpgme_wait_on_condition.  Check its return value.

22 years agodoc/
Marcus Brinkmann [Thu, 27 Jun 2002 16:34:10 +0000 (16:34 +0000)]
doc/
2002-06-27  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Information About Keys): Fix documentation for IDX.
(Information About Trust Items): Likewise.

gpgme/
2002-06-27  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.h: Fix documentation of key attribute retrieval functions.

22 years agouse gpgme_op_keylist_ext_start
Steffen Hansen [Thu, 27 Jun 2002 16:26:15 +0000 (16:26 +0000)]
use gpgme_op_keylist_ext_start

22 years agohandle truncated data
Steffen Hansen [Thu, 27 Jun 2002 13:15:02 +0000 (13:15 +0000)]
handle truncated data

22 years agoMissing implementation bug fixed: Return both error id and error plain text from...
Karl-Heinz Zimmer [Thu, 27 Jun 2002 08:21:58 +0000 (08:21 +0000)]
Missing implementation bug fixed: Return both error id and error plain text from decryptMessage().

22 years agoBugfix: enable function receiverCertificateDaysLeftToExpiry().
Karl-Heinz Zimmer [Wed, 26 Jun 2002 15:16:32 +0000 (15:16 +0000)]
Bugfix: enable function receiverCertificateDaysLeftToExpiry().

22 years ago* gpgsm/t-import.c (print_op_info): New.
Werner Koch [Wed, 26 Jun 2002 12:49:59 +0000 (12:49 +0000)]
* gpgsm/t-import.c (print_op_info): New.
(main): Print operation info.

* engine-gpgsm.c (map_assuan_error): Map No_Data_Available to EOF.

* import.c (append_xml_impinfo): Kludge to print fingerprint
instead of keyid for use with gpgsm.
(import_status_handler): Set a flag to know whether any import
occured.
(gpgme_op_import): Reurn -1 if no certificate ewas imported.

* gpgme.texi (Importing Keys): Document the return value -1 of
gpgme_op_import.

22 years agoMake the signatureCertificateDaysLeftToExpiry() work as expected.
Karl-Heinz Zimmer [Wed, 26 Jun 2002 08:04:43 +0000 (08:04 +0000)]
Make the signatureCertificateDaysLeftToExpiry() work as expected.

22 years agoIMPORTANT BUGFIX: Avoid random crashes in findCertificates. (This also fixes bug...
Karl-Heinz Zimmer [Wed, 26 Jun 2002 04:44:58 +0000 (04:44 +0000)]
IMPORTANT BUGFIX: Avoid random crashes in findCertificates.   (This also fixes bug #1088.)

22 years agoOh pazzo mio! I forgot to *use* the nice dn string actually.
Karl-Heinz Zimmer [Wed, 26 Jun 2002 00:05:30 +0000 (00:05 +0000)]
Oh pazzo mio!  I forgot to *use* the nice dn string actually.

22 years agocert export/import bugfix
Steffen Hansen [Tue, 25 Jun 2002 20:24:29 +0000 (20:24 +0000)]
cert export/import bugfix

22 years agoPrepared for further development.
Werner Koch [Tue, 25 Jun 2002 19:22:12 +0000 (19:22 +0000)]
Prepared for further development.

22 years ago* gpgsm/Makefile.am (DISTCLEANFILES): new. gpgme-0-3-8
Werner Koch [Tue, 25 Jun 2002 19:04:40 +0000 (19:04 +0000)]
* gpgsm/Makefile.am (DISTCLEANFILES): new.

22 years ago* engine-gpgsm.c (_gpgme_gpgsm_set_io_cbs) [ENABLE_GPGSM]: Fixed
Werner Koch [Tue, 25 Jun 2002 18:50:23 +0000 (18:50 +0000)]
* engine-gpgsm.c (_gpgme_gpgsm_set_io_cbs) [ENABLE_GPGSM]: Fixed
function arguments.

22 years ago* configure.ac: Bumbed LT version to 9/3/0.
Werner Koch [Tue, 25 Jun 2002 18:32:20 +0000 (18:32 +0000)]
* configure.ac: Bumbed LT version to 9/3/0.
(NEED_GPGSM_VERSION): Need 0.3.8 due to fixed export command.

22 years agoimportCertificate( const char* fpr )
Steffen Hansen [Tue, 25 Jun 2002 17:42:21 +0000 (17:42 +0000)]
importCertificate( const char* fpr )

22 years agoHave additional secretOnly parameter at the findCertificates() function to allow...
Karl-Heinz Zimmer [Tue, 25 Jun 2002 15:05:59 +0000 (15:05 +0000)]
Have additional secretOnly parameter at the findCertificates() function to allow for searching only secret keys.

22 years ago2002-06-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 25 Jun 2002 12:12:25 +0000 (12:12 +0000)]
2002-06-25  Marcus Brinkmann  <marcus@g10code.de>

* gpgsm/Makefile.am (TESTS): Add t-export.
gpgsm/t-export.c: New file.

22 years ago2002-06-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 25 Jun 2002 12:10:27 +0000 (12:10 +0000)]
2002-06-25  Marcus Brinkmann  <marcus@g10code.de>

* engine-gpgsm.c (_gpgme_gpgsm_op_export): Only export the keys
listed in RECP.
* export.c (gpgme_op_export): If no data was returned, return
GPGME_No_Recipients.

22 years ago2002-06-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 25 Jun 2002 11:14:44 +0000 (11:14 +0000)]
2002-06-25  Marcus Brinkmann  <marcus@g10code.de>

* engine-gpgsm.c (_gpgme_gpgsm_op_export): Implement.

22 years agoDisable debug output
Karl-Heinz Zimmer [Mon, 24 Jun 2002 21:01:18 +0000 (21:01 +0000)]
Disable debug output

22 years agoUse fine DN parts reordering from within findCertificates() as well.
Karl-Heinz Zimmer [Mon, 24 Jun 2002 20:25:19 +0000 (20:25 +0000)]
Use fine DN parts reordering from within findCertificates() as well.

22 years ago2002-06-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Fri, 21 Jun 2002 19:16:16 +0000 (19:16 +0000)]
2002-06-21  Marcus Brinkmann  <marcus@g10code.de>

* engine-gpgsm.c (gpgsm_assuan_simple_command): Return ERR.
(parse_status): New function.
(gpgsm_status_handler): Use parse_status.
(gpgsm_assuan_simple_command): Accept new arguments STATUS_FNC and
STATUS_FNC_VALUE and process status messages.
(gpgsm_set_recipients): Pass new arugments to gpgsm_assuan_simple_command.
(gpgsm_set_fd): Likewise.
(_gpgme_gpgsm_op_keylist): Likewise.
(_gpgme_gpgsm_op_keylist_ext): Likewise.
(_gpgme_gpgsm_op_sign): Likewise.

22 years ago2002-06-21 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Fri, 21 Jun 2002 15:28:56 +0000 (15:28 +0000)]
2002-06-21  Marcus Brinkmann  <marcus@g10code.de>

* wait.c (_gpgme_remove_io_cb): Unlock FDT->lock.

22 years ago* gpgmeplug.c (reorder_dn): Added missing stdpart list terminator.
Werner Koch [Thu, 20 Jun 2002 16:48:37 +0000 (16:48 +0000)]
* gpgmeplug.c (reorder_dn): Added missing stdpart list terminator.

BTW, why did you change the sequence of the parts.  According to the
specs there is no standard but our implementation has to make sure
that it uses the same sequence everywhere.  Adding the extra parts is
useless because they are not defined in rfc2253 and thus can't occur.

22 years ago* gpgsm/t-sign.c (main): Also test a normal signature.
Werner Koch [Thu, 20 Jun 2002 13:47:24 +0000 (13:47 +0000)]
* gpgsm/t-sign.c (main): Also test a normal signature.

* gpg/Makefile (TESTS_ENVIRONMENT): Set GPG_AGENT_INFO empty.
* gpg/t-signers.c, gpg/t-sign.c, gpg/t-encrypt-sym.c
* gpg/t-encrypt-sign.c, gpg/t-decrypt.c
* gpg/t-decrypt-verify.c (main): Changed the GPG_AGENT_INFO check to
match the one in ../../gpgme/rungpg.c.

22 years ago* rungpg.c (build_argv): Ignore GPG_AGENT_INFO if set but empty.
Werner Koch [Thu, 20 Jun 2002 13:45:50 +0000 (13:45 +0000)]
* rungpg.c (build_argv): Ignore GPG_AGENT_INFO if set but empty.

22 years ago* verify.c (calc_sig_summary): Set bad policy for wrong key usage.
Werner Koch [Thu, 20 Jun 2002 12:13:44 +0000 (12:13 +0000)]
* verify.c (calc_sig_summary): Set bad policy for wrong key usage.
(skip_token): New.
(_gpgme_verify_status_handler): Watch out for wrong key usage.
(gpgme_get_sig_string_attr): Hack to return info on the key
usage.  Does now make use of the former RESERVED argument which
has been renamed to WHATIDX.
(gpgme_get_sig_ulong_attr): Renamed RESERVED to WHATIDX.

* gpgme.texi (Verify): Explain the new whatidx variable.

22 years agoadded some entries to DN normalization function
Karl-Heinz Zimmer [Thu, 20 Jun 2002 05:05:43 +0000 (05:05 +0000)]
added some entries to DN normalization function

22 years agoShow DN part names (CN=blah,O=blah...)
Steffen Hansen [Thu, 20 Jun 2002 00:44:00 +0000 (00:44 +0000)]
Show DN part names (CN=blah,O=blah...)

22 years agoBugfix #949: (a) call gpgme_check_version(NULL) during initialization and (b) provide...
Karl-Heinz Zimmer [Wed, 19 Jun 2002 12:56:43 +0000 (12:56 +0000)]
Bugfix #949: (a) call gpgme_check_version(NULL) during initialization and (b) provide additional function libVersion(void) to retrieve the library version used - this function has been added to the CryptPlug API as new *MUST* function for all implementations.

22 years agoUse gpgme_get_sig_ulong_attr(.., GPGME_ATTR_SIG_SUMMARY ) function to return extended...
Karl-Heinz Zimmer [Wed, 19 Jun 2002 10:22:49 +0000 (10:22 +0000)]
Use gpgme_get_sig_ulong_attr(.., GPGME_ATTR_SIG_SUMMARY ) function to return extended signature status information from the CryptPlug to the calling process after trying to verify a signature.

22 years ago2002-06-14 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Fri, 14 Jun 2002 20:06:35 +0000 (20:06 +0000)]
2002-06-14  Marcus Brinkmann  <marcus@g10code.de>

* wait.c (do_select): Return -1 on error, and 0 if nothing to run.
(_gpgme_wait_one): Only set HANG to zero if do_select returned an
error, or there are no more file descriptors to wait on.
(_gpgme_wait_on_condition): Ignore return value from do_select for
now.

22 years agoCosmetic fix.
Marcus Brinkmann [Fri, 14 Jun 2002 20:05:26 +0000 (20:05 +0000)]
Cosmetic fix.

22 years agoUpdate list.
Marcus Brinkmann [Fri, 14 Jun 2002 19:41:43 +0000 (19:41 +0000)]
Update list.

22 years agoAdd items about I/O callbacks.
Marcus Brinkmann [Fri, 14 Jun 2002 19:40:55 +0000 (19:40 +0000)]
Add items about I/O callbacks.

22 years ago* verify.c (gpgme_op_verify): Make sure that we never access an
Werner Koch [Thu, 13 Jun 2002 08:45:32 +0000 (08:45 +0000)]
* verify.c (gpgme_op_verify): Make sure that we never access an
unitialized result structure.