Commit Graph

2881 Commits

Author SHA1 Message Date
Marcus Brinkmann
b4d7702369 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.
2002-07-25 15:45:40 +00:00
Marcus Brinkmann
4ef64980fb 2002-07-25 Marcus Brinkmann <marcus@g10code.de>
* wait.c (fdt_global): Make static.  Reported by St�phane
	Corth�sy.
2002-07-25 15:33:03 +00:00
Karl-Heinz Zimmer
07f4264a5e CRASH prevention fix: Memory was overwritten if there were more than 1 email address in a signature certificate found in checkMessageSignature() function. 2002-07-04 00:02:19 +00:00
Karl-Heinz Zimmer
e3e127d4a8 fixing bug #1154 2002-07-03 15:43:41 +00:00
Werner Koch
992c88991d * 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.
2002-07-03 11:04:54 +00:00
Marcus Brinkmann
ea0acccf2b 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.
2002-07-03 02:22:38 +00:00
Marcus Brinkmann
d7b78c0987 2002-07-03 Marcus Brinkmann <marcus@g10code.de>
* gpg/t-eventloop.c: New file.
	* gpg/Makefile (TESTS): Add t-eventloop.
2002-07-03 02:18:43 +00:00
Marcus Brinkmann
b92c8f057c 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.
2002-07-03 01:57:03 +00:00
Marcus Brinkmann
0cf2a8a51a Fix news item. 2002-07-02 20:43:25 +00:00
Karl-Heinz Zimmer
59c6205c78 make sure key used for signing _can_ sign 2002-07-02 16:32:29 +00:00
Werner Koch
abf4c3bb50 * 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.
2002-07-02 09:08:21 +00:00
Werner Koch
458a133794 auto updated version number. 2002-07-02 09:07:52 +00:00
Werner Koch
1caf8a12ab typo fix in comment. 2002-07-02 08:53:31 +00:00
Werner Koch
ca43df065f (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.
2002-07-01 13:09:18 +00:00
Werner Koch
3f7e65f9a9 * 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.
2002-07-01 13:01:51 +00:00
Steffen Hansen
7a826e3f35 Fixed memory corruption bug 2002-07-01 12:52:29 +00:00
Karl-Heinz Zimmer
a4b45557ea avoid another memory leak in checkMessageSignature() 2002-07-01 12:08:24 +00:00
Werner Koch
d73a0f3c41 * 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.
2002-07-01 11:36:48 +00:00
Karl-Heinz Zimmer
0fff553077 replace many comment lines by just one single comment 2002-06-28 19:50:31 +00:00
Karl-Heinz Zimmer
68f5d46094 Make it compile. :-( 2002-06-28 19:40:13 +00:00
Karl-Heinz Zimmer
054b78bdc0 Removed silly "free( dn )" statement forgotten during my last changes in findCertificates(). 2002-06-28 19:37:06 +00:00
Werner Koch
ee970fa57d * 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.
2002-06-28 18:30:23 +00:00
Bernhard Reiter
e866179ce6 * 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.
2002-06-28 14:51:12 +00:00
Karl-Heinz Zimmer
4114f4400d internal AEgypten bugfix #1131: get full list of emails stored in certificated used for signing a received message 2002-06-28 14:12:18 +00:00
Marcus Brinkmann
406ec04563 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).
2002-06-28 12:02:43 +00:00
Marcus Brinkmann
92386f4dd1 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).
2002-06-28 01:14:41 +00:00
Marcus Brinkmann
3ccd2790b3 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.
2002-06-28 01:11:20 +00:00
Marcus Brinkmann
e0d89a9a15 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.
2002-06-27 16:34:10 +00:00
Steffen Hansen
2ea796a1a0 use gpgme_op_keylist_ext_start 2002-06-27 16:26:15 +00:00
Steffen Hansen
bb19f16ec4 handle truncated data 2002-06-27 13:15:02 +00:00
Karl-Heinz Zimmer
095eef1792 Missing implementation bug fixed: Return both error id and error plain text from decryptMessage(). 2002-06-27 08:21:58 +00:00
Karl-Heinz Zimmer
71266fd6ea Bugfix: enable function receiverCertificateDaysLeftToExpiry(). 2002-06-26 15:16:32 +00:00
Werner Koch
06cd423a8b * 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.
2002-06-26 12:49:59 +00:00
Karl-Heinz Zimmer
73f47e40b1 Make the signatureCertificateDaysLeftToExpiry() work as expected. 2002-06-26 08:04:43 +00:00
Karl-Heinz Zimmer
f97a834df6 IMPORTANT BUGFIX: Avoid random crashes in findCertificates. (This also fixes bug #1088.) 2002-06-26 04:44:58 +00:00
Karl-Heinz Zimmer
0a4a00821d Oh pazzo mio! I forgot to *use* the nice dn string actually. 2002-06-26 00:05:30 +00:00
Steffen Hansen
4783cc23da cert export/import bugfix 2002-06-25 20:24:29 +00:00
Werner Koch
e37e5beb46 Prepared for further development. 2002-06-25 19:22:12 +00:00
Werner Koch
692d0e43f4 * gpgsm/Makefile.am (DISTCLEANFILES): new. 2002-06-25 19:04:40 +00:00
Werner Koch
5df644f5cc * engine-gpgsm.c (_gpgme_gpgsm_set_io_cbs) [ENABLE_GPGSM]: Fixed
function arguments.
2002-06-25 18:50:23 +00:00
Werner Koch
f93de93870 * configure.ac: Bumbed LT version to 9/3/0.
(NEED_GPGSM_VERSION): Need 0.3.8 due to fixed export command.
2002-06-25 18:32:20 +00:00
Steffen Hansen
3debbf008e importCertificate( const char* fpr ) 2002-06-25 17:42:21 +00:00
Karl-Heinz Zimmer
da40b7130f Have additional secretOnly parameter at the findCertificates() function to allow for searching only secret keys. 2002-06-25 15:05:59 +00:00
Marcus Brinkmann
7a32c607e3 2002-06-25 Marcus Brinkmann <marcus@g10code.de>
* gpgsm/Makefile.am (TESTS): Add t-export.
	gpgsm/t-export.c: New file.
2002-06-25 12:12:25 +00:00
Marcus Brinkmann
3ea78f5a20 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.
2002-06-25 12:10:27 +00:00
Marcus Brinkmann
ea042a1fa9 2002-06-25 Marcus Brinkmann <marcus@g10code.de>
* engine-gpgsm.c (_gpgme_gpgsm_op_export): Implement.
2002-06-25 11:14:44 +00:00
Karl-Heinz Zimmer
969ceb2e6e Disable debug output 2002-06-24 21:01:18 +00:00
Karl-Heinz Zimmer
b24b335b3b Use fine DN parts reordering from within findCertificates() as well. 2002-06-24 20:25:19 +00:00
Marcus Brinkmann
2ded628d4d 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.
2002-06-21 19:16:16 +00:00
Marcus Brinkmann
a8f087da34 2002-06-21 Marcus Brinkmann <marcus@g10code.de>
* wait.c (_gpgme_remove_io_cb): Unlock FDT->lock.
2002-06-21 15:28:56 +00:00