gpgme.git
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 agoThis commit was manufactured by cvs2svn to create tag 'gpgme-0-3-8'.
Repo Admin [Tue, 25 Jun 2002 19:04:40 +0000 (19:04 +0000)]
This commit was manufactured by cvs2svn to create tag 'gpgme-0-3-8'.

22 years ago* gpgsm/Makefile.am (DISTCLEANFILES): new.
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.

22 years agobugfix + change to the nextCertificate() function prototype
Steffen Hansen [Thu, 13 Jun 2002 01:56:31 +0000 (01:56 +0000)]
bugfix + change to the nextCertificate() function prototype

22 years agotests/
Werner Koch [Wed, 12 Jun 2002 14:34:15 +0000 (14:34 +0000)]
tests/
* gpgsm/t-keylist.c (doit): Print operation info if available.
gpgme/
* keylist.c (struct keylist_result_s): New.
(_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.
* types.h: Declare the new type here.
* context.h (struct gpgme_context_s): Use it here.

22 years agoAdd Plugin configuration option to allow for sending of *opaque* signed messages...
Karl-Heinz Zimmer [Wed, 12 Jun 2002 11:05:42 +0000 (11:05 +0000)]
Add Plugin configuration option to allow for sending of *opaque* signed messages.  Unfortunately this is necessary for communication with some MS Outlook clients, e.g. TrustedMime is not able to understand Multipart/Signed messages.  <sigh>       NOTE: This breaks compabilitity with kdenetwork, so make sure to update the KDE sources as well...

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

* engine-gpgsm.c (_gpgme_gpgsm_release): Close status_cb.fd.
(_gpgme_gpgsm_new): Duplicate status file descriptor, so we can
use our own close notification mechanism without interfering with
assuan.

22 years ago* gpgme.h: Add GPGME_ATTR_SIG_SUMMARY and the GPGME_SIGSUM_
Werner Koch [Tue, 11 Jun 2002 15:33:08 +0000 (15:33 +0000)]
* gpgme.h: Add GPGME_ATTR_SIG_SUMMARY and the GPGME_SIGSUM_
constants.
* verify.c (calc_sig_summary): New.
(gpgme_get_sig_ulong_attr): And use it here.

22 years agosupport for listing of external certs (untested)
Steffen Hansen [Mon, 10 Jun 2002 18:37:11 +0000 (18:37 +0000)]
support for listing of external certs (untested)

22 years agoreorder issuer DN also
Steffen Hansen [Mon, 10 Jun 2002 17:53:04 +0000 (17:53 +0000)]
reorder issuer DN also

22 years agotypecast to make khz happy
Steffen Hansen [Mon, 10 Jun 2002 16:36:38 +0000 (16:36 +0000)]
typecast to make khz happy

22 years ago2002-06-10 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Mon, 10 Jun 2002 14:13:55 +0000 (14:13 +0000)]
2002-06-10  Marcus Brinkmann  <marcus@g10code.de>

* engine-gpgsm.c (_gpgme_gpgsm_start): Move the code that sets the
close notification for the status fd to ...
(_gpgme_gpgsm_new): ... here.
* wait.h: Include "sema.h".  Remove prototypes of
_gpgme_remove_proc_from_wait_queue and
_gpgme_register_pipe_handler.  Add prototypes of
_gpgme_fd_table_init, _gpgme_fd_table_deinit, _gpgme_fd_table_put,
_gpgme_add_io_cb, _gpgme_remove_io_cb, _gpgme_wait_event_cb and
_gpgme_wait_one..
* wait.c: Remove global variables PROC_QUEUE, PROC_QUEUE_LOCK,
FD_TABLE_SIZE, FD_TABLE, FD_TABLE_LOCK.  New global variables
FDT_GLOBAL, CTX_DONE_LIST, CTX_DONE_LIST_SIZE,
CTX_DONE_LIST_LENGTH and CTX_DONE_LIST_LOCK.  Remove struct
proc_s.  Replace struct wait_item_s.
(_gpgme_fd_table_init): New function.
(_gpgme_fd_table_deinit): Likewise.
(_gpgme_fd_table_put): Likewise.
(set_process_done): Remove function.
(do_select): Take argument FDT.  Use that to decide which fds to
select on.
(_gpgme_remove_proc_from_wait_queue): Remove function.
(_gpgme_wait_event_cb): New function.
(_gpgme_wait_one): Likewise.
(_gpgme_register_pipe_hanldler): Remove function.
(_gpgme_add_io_cb): New function.
(_gpgme_remove_io_cb): Likewise.
(_gpgme_freeze_fd): Remove function.
(_gpgme_thaw_fd): Remove function.
* rungpg.c (struct fd_data_map_s): Add new member TAG.
(struct gpg_object_s): Likewise for STATUS and COLON.  Add member
IDX to CMD.  Add new member IO_CBS.
(close_notify_handler): New variables POSSIBLY_DONE and NOT_DONE.
For each I/O callback, check if it should be unregistered.  If all
callbacks have been unregistered, trigger GPGME_EVENT_DONE.
Remove member RUNNING.
(_gpgme_gpg_new): Initialize new members.
(_gpgme_gpg_release): Check PID not RUNNING.  Don't call
_gpgme_remove_proc_from_wait_queue.  Close GPG->CMD.FD if set.
(build_argv): Store away the index instead the file descriptor for
CMD.
(_gpgme_gpg_add_io_cb): New function.
(_gpgme_gpg_spawn): Use _gpgme_gpg_add_io_cb to register IO
callbacks.
(gpg_status_handler): Change return type to void, remove PID
argument, close filedescriptor if EOF or error occurs.
(read_status): Use _gpgme_gpg_add_io_cb instead _gpgme_thaw_fd.
Use IO_CBS->remove instead _gpgme_freeze_fd.
(gpg_colon_line_handler): Change return type to void, remove PID
argument, close filedescriptor if EOF or error occurs.
(command_cb): Use IO_CBS->remove instead _gpgme_freeze_fd.
(_gpgme_gpg_set_io_cbs): New function.
* rungpg.h (_gpgme_gpg_set_io_cbs): Prototype for
_gpgme_gpg_set_io_cbs.
* gpgme.h (GpgmeIOCb): New type.
(GpgmeRegisterIOCb): Likewise.
(GpgmeRemoveIOCb): Likewise.
(GpgmeEventIO): Likewise.
(GpgmeEventIOCb): Likewise.
(struct GpgmeIOCbs): New structure to hold I/O callbacks.
(gpgme_set_op_io_cbs): New prototype.
(gpgme_get_op_io_cbs): Likewise.
* ops.h: New prototype for _gpgme_op_event_cb.  Remove prototypes
for _gpgme_freeze_fd and _gpgme_thaw_fd.  Remove PID argument from
_gpgme_data_inbound_handler and _gpgme_data_outbound_handler
prototype.  Add prototype for _gpgme_op_reset.
Add synchronous argument to _gpgme_decrypt_start prototype.
* io.h: Beautification.
* gpgme.c: Include "wait.h".
(gpgme_new): Initialize FDT.
(gpgme_set_io_cbs): New function.
(gpgme_get_io_cbs): Likewise.
(_gpgme_op_event_cb): Likewise.
* data.c (_gpgme_data_inbound_handler): Change return type to
void.  Drop PID argument.  Close FD on error and EOF.
(write_mem_data): Don't close FD here ...
(write_cb_data): ... or here ...
(_gpgme_data_outbound_handler): ... but here.  Change return type
to void.  Drop PID argument.
* context.h: Include "wait.h".
(struct gpgme_context_s): New members FDT and IO_CBS.
* op-support.c: New file.
* Makefile.am (libgpgme_la_SOURCES): Add op-support.c.
* ops.h: Add prototype for _gpgme_op_reset().
* decrypt.c (_gpgme_decrypt_start): New argument SYNCHRONOUS.  Use
_gpgme_op_reset.
(gpgme_op_decrypt_start): Add synchronous argument.
(gpgme_op_decrypt): Likewise.  Use _gpgme_wait_one instead
gpgme_wait.
* delete.c (gpgme_op_delete_start): Rename to ...
(_gpgme_op_delete_start): ... this.  New argument SYNCHRONOUS.
Use _gpgme_op_reset.  Make function static.
(gpgme_op_delete_start): Just a wrapper around
_gpgme_op_delete_start now.
(gpgme_op_delete): Add synchronous argument.  Use _gpgme_wait_one
instead gpgme_wait.
* encrypt.c: Include "wait.h".
(ggpgme_op_encrypt_start): Rename to ...
(_gpgme_op_encrypt_start): ... this.  New argument SYNCHRONOUS.
Use _gpgme_op_reset.  Make function static.
(gpgme_op_encrypt_start): Just a wrapper around
_gpgme_op_encrypt_start now.
(gpgme_op_encrypt): Add synchronous argument.  Use _gpgme_wait_one
instead gpgme_wait.
* encrypt_sign.c (gpgme_op_encrypt_sign_start): Rename to ...
(_gpgme_op_encrypt_sign_start): ... this.  New argument
SYNCHRONOUS.  Use _gpgme_op_reset.  Make function static.
(gpgme_op_encrypt_sign_start): Just a wrapper around
_gpgme_op_encrypt_sign_start now.
(gpgme_op_encrypt_sign): Add synchronous argument.  Use
_gpgme_wait_one instead gpgme_wait.
* export.c (gpgme_op_export_start): Rename to ...
(_gpgme_op_export_start): ... this.  New argument SYNCHRONOUS.
Use _gpgme_op_reset.  Make function static.
(gpgme_op_export_start): Just a wrapper around
_gpgme_op_export_start now.
(gpgme_op_export): Add synchronous argument.  Use _gpgme_wait_one
instead gpgme_wait.
* genkey.c (gpgme_op_genkey_start): Rename to ...
(_gpgme_op_genkey_start): ... this.  New argument SYNCHRONOUS.
Use _gpgme_op_reset.  Make function static.
(gpgme_op_genkey_start): Just a wrapper around
_gpgme_op_genkey_start now.
(gpgme_op_genkey): Add synchronous argument.  Use _gpgme_wait_one
instead gpgme_wait.
* import.c (gpgme_op_import_start): Rename to ...
(_gpgme_op_import_start): ... this.  New argument SYNCHRONOUS.
Use _gpgme_op_reset.  Make function static.
(gpgme_op_import_start): Just a wrapper around
_gpgme_op_import_start now.
(gpgme_op_import): Add synchronous argument.  Use _gpgme_wait_one
instead gpgme_wait.
* keylist.c (gpgme_op_keylist_start): Use _gpgme_op_reset.
(gpgme_op_keylist_ext_start): Likewise.
* sign.c (gpgme_op_sign_start): Rename to ...
(_gpgme_op_sign_start): ... this.  New argument SYNCHRONOUS.  Use
_gpgme_op_reset.  Make function static.
(gpgme_op_sign_start): Just a wrapper around _gpgme_op_sign_start
now.
(gpgme_op_sign): Add synchronous argument.  Use _gpgme_wait_one
instead gpgme_wait.
* trustlist.c (gpgme_op_trustlist_start): Use _gpgme_op_reset.
* verify.c (gpgme_op_verify_start): Rename to ...
(_gpgme_op_verify_start): ... this.  New argument SYNCHRONOUS.
Use _gpgme_op_reset.  Make function static.
(gpgme_op_verify_start): Just a wrapper around
_gpgme_op_verify_start now.
(gpgme_op_verify): Add synchronous argument.  Use _gpgme_wait_one
instead gpgme_wait.
* engine-gpgsm.c (iocb_data_t): New type.
(struct gpgsm_object_s): New member status_cb.  Replace input_fd
and input_data with input_cb.  Replace output_fd and output_data
with output_cb.  Replace message_fd and message_data with
message_cb.  New member io_cbs.
(_gpgme_gpgsm_new): Initialize all new members (and drop the old
ones).
(close_notify_handler): New variable POSSIBLY_DONE.  For each I/O
callback, check if it should be unregistered.  If all callbacks
have been unregistered, trigger GPGME_EVENT_DONE.
(_gpgme_gpgsm_release): Remove variable PID.  Use new variable
names to close the file descriptors.
(_gpgme_gpgsm_op_decrypt): Use new variable names,
(_gpgme_gpgsm_op_encrypt): Likewise.
(_gpgme_gpgsm_op_genkey): Likewise.
(_gpgme_gpgsm_op_import): Likewise.
(_gpgme_gpgsm_op_keylist): Likewise.
(_gpgme_gpgsm_op_keylist_ext): Likewise.
(_gpgme_gpgsm_op_sign): Likewise.
(_gpgme_gpgsm_op_verify): Likewise.
(gpgsm_status_handler): Drop argument PID.  Change return type to
void.  Close status pipe before returning because of EOF or error.
(_gpgme_gpgsm_add_io_cb): New function.
(_gpgme_gpgsm_start): Use _gpgme_gpgsm_add_io_cb to register
callback function.
(_gpgme_gpgsm_set_io_cbs): New function.
* engine-gpgsm.h: New prototype for _gpgme_gpgsm_set_io_cbs.
* engine.c (_gpgme_engine_set_io_cbs): New function.
* engine.h: New prototype for _gpgme_engine_set_io_cbs.

22 years agomore cert. info features
Steffen Hansen [Mon, 10 Jun 2002 11:24:39 +0000 (11:24 +0000)]
more cert. info features

22 years ago* gpgsm/t-encrypt.c (main): Add a simple option parser and allow
Werner Koch [Tue, 4 Jun 2002 14:01:11 +0000 (14:01 +0000)]
* gpgsm/t-encrypt.c (main): Add a simple option parser and allow
to specify an encryption key.

22 years agoPrepare everything for CVS hackery.
Marcus Brinkmann [Tue, 4 Jun 2002 12:28:17 +0000 (12:28 +0000)]
Prepare everything for CVS hackery.

22 years agoThis commit was manufactured by cvs2svn to create tag 'gpgme-0-3-7'.
Repo Admin [Tue, 4 Jun 2002 12:20:46 +0000 (12:20 +0000)]
This commit was manufactured by cvs2svn to create tag 'gpgme-0-3-7'.

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

Released 0.3.7.

* configure.ac (AC_INIT): Set version to 0.3.7.
(LIBGPGME_LT_REVISION): Add one.

* README: Document version requirement correctly.

22 years agoUpdates.
Marcus Brinkmann [Tue, 4 Jun 2002 12:19:00 +0000 (12:19 +0000)]
Updates.

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

* gpgme.texi (Multi Threading): Document new autodetection.

22 years ago2002-06-04 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 4 Jun 2002 10:56:33 +0000 (10:56 +0000)]
2002-06-04  Marcus Brinkmann  <marcus@g10code.de>

* Makefile.am (DISTCLEANFILES): New variable.

22 years ago2002-06-04 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Tue, 4 Jun 2002 10:40:34 +0000 (10:40 +0000)]
2002-06-04  Marcus Brinkmann  <marcus@g10code.de>

* Makefile.am (libgpgme_la_SOURCES): Remove mutex.h.

22 years ago2002-06-03 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sun, 2 Jun 2002 23:09:16 +0000 (23:09 +0000)]
2002-06-03  Marcus Brinkmann  <marcus@g10code.de>

* key.c: Include <ctype.h>.
(_gpgme_key_append_name): Skip one more char when
processing escaped char.  Submitted by Marc Mutz <mutz@kde.org>.
Handle hexadecimal encodings.  Also reported by Marc.  Thanks!

22 years ago2002-06-02 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sun, 2 Jun 2002 20:43:04 +0000 (20:43 +0000)]
2002-06-02  Marcus Brinkmann  <marcus@g10code.de>

* acinclude.m4: Fix Pth check so that it doesn't error out if pth
is not found.

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

* ath.h: Enable the _gpgme_ prefix.  Fix all those prefix macros.
* posix-sema.c: Use that prefix here.
* posix-io.c: Include "ath.h".
(_gpgme_io_read): Use _gpgme_ath_read instead read.
(_gpgme_io_write): Use _gpgme_ath_write instead write.
(_gpgme_io_waitpid): Use _gpgme_ath_waitpid instead waitpid.
(_gpgme_io_select): Use _gpgme_ath_select instead select.

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

* configure.ac: Add checks for Pth and pthreads.
* acinclude.m4: Add slightly hacked check for pth (seems to be an
autoconf version problem).

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

* Makefile.am (ath_components): New variable.
(ath_components_pthread): Likewise.
(ath_components_pth): Likewise.
(system_components): Add ath_componentes.

* ath.h: New file.
* ath.c: Likewise.
* ath-pthread.c: Likewise.
* ath-pth.c: Likewise.
* posix-sema.c (_gpgme_sema_cs_enter): Rework to use the ATH
interface.
* mutex.h: Remove file.

22 years agosync our cryptplug.h with the version in KDE/libkdenetwork/ that was corrected my...
Karl-Heinz Zimmer [Sat, 1 Jun 2002 15:35:07 +0000 (15:35 +0000)]
sync our cryptplug.h with the version in KDE/libkdenetwork/ that was corrected my Marc Mutz.

22 years agomore cert info
Steffen Hansen [Fri, 31 May 2002 15:34:39 +0000 (15:34 +0000)]
more cert info

22 years agoBugfix: use fingerprint as found in "fpr" only if no key was found by gpgme_get_sig_key()
Karl-Heinz Zimmer [Fri, 31 May 2002 12:00:18 +0000 (12:00 +0000)]
Bugfix: use fingerprint as found in "fpr" only if no key was found by gpgme_get_sig_key()

22 years agoMatze's patch for showing colored bars at S/MIME messages as well as at OpenPGP messages.
Karl-Heinz Zimmer [Fri, 31 May 2002 11:08:54 +0000 (11:08 +0000)]
Matze's patch for showing colored bars at S/MIME messages as well as at OpenPGP messages.

22 years agomore error handling
Karl-Heinz Zimmer [Fri, 31 May 2002 09:28:58 +0000 (09:28 +0000)]
more error handling

22 years agosmall fix
Steffen Hansen [Thu, 30 May 2002 17:19:11 +0000 (17:19 +0000)]
small fix

22 years ago* key.c (gpgme_key_get_string_attr): Return NULL when asking for
Werner Koch [Thu, 30 May 2002 09:06:45 +0000 (09:06 +0000)]
* key.c (gpgme_key_get_string_attr): Return NULL when asking for
an issuer with IDX > 0.  We don't support altIssuerNames for now.

22 years ago* cryptplug.h, gpgmeplug.c: Added certificate info listing functions.
Steffen Hansen [Thu, 30 May 2002 06:24:19 +0000 (06:24 +0000)]
* cryptplug.h, gpgmeplug.c: Added certificate info listing functions.
Not yet complete.
Converted more C99 style comments to "classic" style.

22 years ago2002-05-26 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sun, 26 May 2002 20:12:51 +0000 (20:12 +0000)]
2002-05-26  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi: Some typographical correctons throughout.

22 years ago2002-05-26 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sun, 26 May 2002 19:51:53 +0000 (19:51 +0000)]
2002-05-26  Marcus Brinkmann  <marcus@g10code.de>

* gpg/Makefile.am (all-local): Remove dependency on ./secring.gpg.
(./secring.gpg): Remove target, and move all rules for this target
to ...
(./pubring.gpg): ... here.  This was necessary because GnuPG 1.0.7
does create an empty secring.gpg file when importing public keys.

22 years ago* engine-gpgsm.c (_gpgme_gpgsm_op_keylist_ext): Aehmm, added
Werner Koch [Wed, 22 May 2002 06:35:07 +0000 (06:35 +0000)]
* engine-gpgsm.c (_gpgme_gpgsm_op_keylist_ext): Aehmm, added
missing variable definition.  Oohh - Marcus was faster.

22 years ago2002-05-22 Marcus Brinkmann <marcus@gnu.org>
Marcus Brinkmann [Wed, 22 May 2002 01:22:57 +0000 (01:22 +0000)]
2002-05-22  Marcus Brinkmann  <marcus@gnu.org>

* engine-gpgsm.c (_gpgme_gpgsm_op_keylist_ext): Fix last change.

22 years ago* engine-gpgsm.c (_gpgme_gpgsm_op_keylist)
Werner Koch [Tue, 21 May 2002 15:14:35 +0000 (15:14 +0000)]
* engine-gpgsm.c (_gpgme_gpgsm_op_keylist)
(_gpgme_gpgsm_op_keylist_ext):  Pass the keylist mode to gpgsm.

* configure.ac (NEED_GPGSM_VERSION): We need gpgsm 0.3.7.

22 years ago* key.h (gpgme_key_s): Add OTRUST.
Werner Koch [Fri, 10 May 2002 10:42:45 +0000 (10:42 +0000)]
* key.h (gpgme_key_s): Add OTRUST.
* keylist.c (set_ownertrust): New.
(keylist_colon_handler): Get the ownertrust value
* key.c (gpgme_key_get_string_attr,gpgme_key_get_ulong_attr):
Return that value.

22 years ago2002-05-09 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 9 May 2002 06:49:40 +0000 (06:49 +0000)]
2002-05-09  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Using Automake): New section.

22 years agoBump version numbers in requirements.
Marcus Brinkmann [Thu, 9 May 2002 06:49:09 +0000 (06:49 +0000)]
Bump version numbers in requirements.

22 years ago2002-05-09 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 9 May 2002 03:39:18 +0000 (03:39 +0000)]
2002-05-09  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Multi Threading): Escape { and }.

22 years agodoc/
Marcus Brinkmann [Thu, 9 May 2002 03:38:12 +0000 (03:38 +0000)]
doc/
2002-05-09  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Overview): Replace note about thread-safeness.
(Multi Threading): New section.

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

* w32-util.c: New static variable GET_PATH_LOCK.
(_gpgme_get_gpg_path): Remove superfluous NULL initializer.
Take lock while determining path.
(_gpgme_get_gpgsm_path): Likewise.
* version.c (do_subsystem_inits): Set DONE to 1 after
initialization.
(gpgme_get_engine_info): New variable ENGINE_INFO_LOCK.  Take lock
while determining engine info.
* rungpg.c (_gpgme_gpg_get_version): New variable
GPG_VERSION_LOCK.  Take the lock while determining the program
version.
* posix-io.c: Include "sema.h".
(_gpgme_io_spawn): New variable FIXED_SIGNALS_LOCK.  Take the lock
while fixing the signals.
(_gpgme_io_select): Make READFDS and WRITEFDS non-static.
* key.c: Include "sema.h".  New globals KEY_CACHE_LOCK and
KEY_REF_LOCK.
(capabilities_to_string): Make STRINGS very const.
(_gpgme_key_cache_add): Lock the key cache.
(_gpgme_key_cache_get): Likewise.
(gpgme_key_ref, gpgme_key_release): Lock the key_ref_lock.
* import.c (append_xml_impinfo): Make IMPORTED_FIELDS and
IMPORT_RES_FIELDS very const.  Make FIELD and FIELD_NAME a litle
const.
* engine.c (_gpgme_engine_get_info): New variable
ENGINE_INFO_LOCK.  Take lock while determining engine info.
* engine-gpgsm.c: Include "sema.h".
(_gpgme_gpgsm_get_version): New variable GPGSM_VERSION_LOCK.  Take
lock while getting program version.

22 years agorevoce the previous commit, this was done erroneously
Karl-Heinz Zimmer [Wed, 8 May 2002 12:14:13 +0000 (12:14 +0000)]
revoce the previous commit, this was done erroneously

22 years agoInclude the protocol parameter of multipart/.. content-type messages into double...
Karl-Heinz Zimmer [Wed, 8 May 2002 12:05:17 +0000 (12:05 +0000)]
Include the protocol parameter of multipart/.. content-type messages into double quotes to fullify requirements of the german government (see BSI document Technische Grundlagen - Tailoring MTTv2, page 60)

22 years agoAdd some items and comments.
Marcus Brinkmann [Wed, 8 May 2002 04:22:07 +0000 (04:22 +0000)]
Add some items and comments.

22 years ago2002-05-08 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 8 May 2002 04:04:12 +0000 (04:04 +0000)]
2002-05-08  Marcus Brinkmann  <marcus@g10code.de>

* debug.h: New file.
* Makefile.am (libgpgme_la_SOURCES): Add debug.h.
* util.h: Removed all prototypes and declarations related to
debugging.  Include "debug.h".

* debug.c (debug_level): Comment variable and remove superfluous
zero initializer.
(errfp): Likewise.
(_gpgme_debug_enabled): Function removed.
(struct debug_control_s): Definition removed.
(_gpgme_debug_level): Function removed.
(_gpgme_debug_begin): Rewritten to use vasprintf.  Accept a
pritnf-style format specification and a variable number of
arguments.
(_gpgme_debug_add): Rewritten using vasprintf.  Expect that format
starts out with "%s" for simplicity.
(_gpgme_debug_end): Rewritten using vasprintf.  Do not accept a
TEXT argument anymore.

* posix-io.c (_gpgme_io_select): Use new level argument for
DEBUG_BEGIN instead explicit if construct.

* debug.c (debug_init): Remove superfluous zero initializer,
remove volatile flag of INITIALIZED.  Do not use the
double-checked locking algorithm, it is fundamentally flawed and
will empty your fridge (on a more serious note, despite the
volatile flag it doesn't give you the guarantee you would expect,
for example on a DEC Alpha or an SMP machine.  The volatile only
serializes accesses to the volatile variable, but not to the other
variables).

22 years ago2002-05-08 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 8 May 2002 03:57:42 +0000 (03:57 +0000)]
2002-05-08  Marcus Brinkmann  <marcus@g10code.de>

* debug.h: New file.
* Makefile.am (libgpgme_la_SOURCES): Add debug.h.
* util.h: Removed all prototypes and declarations related to
debugging.  Include "debug.h".

* debug.c (debug_level): Comment variable and remove superfluous
zero initializer.
(errfp): Likewise.
(_gpgme_debug_enabled): Function removed.
(struct debug_control_s): Definition removed.
(_gpgme_debug_level): Function removed.
(_gpgme_debug_begin): Rewritten to use vasprintf.  Accept a
pritnf-style format specification and a variable number of
arguments.
(_gpgme_debug_add): Rewritten using vasprintf.  Expect that format
starts out with "%s" for simplicity.
(_gpgme_debug_end): Rewritten using vasprintf.  Do not accept a
TEXT argument anymore.

* posix-io.c (_gpgme_io_select): Use new level argument for
DEBUG_BEGIN instead explicit if construct.

* debug.c (debug_init): Remove superfluous zero initializer,
remove volatile flag of INITIALIZED.  Do not use the
double-checked locking algorithm, it is fundamentally flawed and
will empty your fridge (on a more serious note, despite the
volatile flag it doesn't give you the guarantee you would expect,
for example on a DEC Alpha or an SMP machine.  The volatile only
serializes accesses to the volatile variable, but not to the other
variables).

22 years ago2002-05-08 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 8 May 2002 03:06:16 +0000 (03:06 +0000)]
2002-05-08  Marcus Brinkmann  <marcus@g10code.de>

* gpgsm/t-verify.c (validity_string): New.
(print_sig_stat): Print expire time and validity.
(status_string): Add new exipred stati.

22 years agoBugfix don't use binary signatures for OpenPGP
Karl-Heinz Zimmer [Tue, 7 May 2002 10:40:48 +0000 (10:40 +0000)]
Bugfix don't use binary signatures for OpenPGP

22 years agoBumbed version number to *-cvs
Werner Koch [Fri, 3 May 2002 20:08:21 +0000 (20:08 +0000)]
Bumbed version number to *-cvs

22 years agoThis commit was manufactured by cvs2svn to create tag 'V0-3-6'.
Repo Admin [Fri, 3 May 2002 19:49:04 +0000 (19:49 +0000)]
This commit was manufactured by cvs2svn to create tag 'V0-3-6'.

22 years agoreleased 0.3.6
Werner Koch [Fri, 3 May 2002 19:49:04 +0000 (19:49 +0000)]
released 0.3.6

22 years ago* gpgme.texi (Manipulating Data Buffers): Changed some data types
Werner Koch [Fri, 3 May 2002 18:20:24 +0000 (18:20 +0000)]
* gpgme.texi (Manipulating Data Buffers): Changed some data types
to void*.
(Protocol Selection): Added gpgme_get_protocol.
(Verify): Updated to include the new attribute fucntions and
status codes.

22 years ago* engine-gpgsm.c (_gpgme_gpgsm_new): Redirect any gpgsm error
Werner Koch [Fri, 3 May 2002 18:20:06 +0000 (18:20 +0000)]
* engine-gpgsm.c (_gpgme_gpgsm_new): Redirect any gpgsm error
output to /dev/null.

* verify.c (gpgme_get_sig_key): Set the protocol of the listctx.
* gpgme.c (gpgme_get_protocol): New.

* data.c (gpgme_data_write): Changed type of BUFFER to void*.
(gpgme_data_read): Ditto.

* 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_ulong_attr): New.

* gpgme.h (GpgmeAttr): Added GPGME_ATTR_SIG_STATUS.

* 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

22 years ago* assuan-pipe-connect.c (assuan_pipe_connect2): New to extend
Werner Koch [Fri, 3 May 2002 18:19:44 +0000 (18:19 +0000)]
* assuan-pipe-connect.c (assuan_pipe_connect2): New to extend
assuan_pipe_connect with some flags.  Implemented a bitbucket for
stderr.

22 years ago* gpg/t-verify.c (validity_string): New.
Werner Koch [Fri, 3 May 2002 14:07:22 +0000 (14:07 +0000)]
* gpg/t-verify.c (validity_string): New.
(print_sig_stat): Print expire time and validity.
(status_string): Add new exipred stati.

22 years ago* verify.c (_gpgme_verify_status_handler): Handle TRUST_* status
Werner Koch [Fri, 3 May 2002 14:06:56 +0000 (14:06 +0000)]
* 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_ulong_attr): New.

* gpgme.h (GpgmeAttr): Added GPGME_ATTR_SIG_STATUS.

* rungpg.h: Add new status codes from gpg 1.0.7 and formatted the
list to align with the status.h file from gnupg.

* 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

22 years ago* gpgme.texi (Manipulating Data Buffers): New type GpgmeDataEncoding.
Werner Koch [Sat, 27 Apr 2002 12:17:56 +0000 (12:17 +0000)]
* gpgme.texi (Manipulating Data Buffers): New type GpgmeDataEncoding.

22 years ago* gpgme.h (GpgmeData_Encoding): New.
Werner Koch [Sat, 27 Apr 2002 12:16:48 +0000 (12:16 +0000)]
* gpgme.h (GpgmeData_Encoding): New.
* data.c (gpgme_data_get_encoding,gpgme_data_set_encoding): New.
* engine-gpgsm.c (map_input_enc): New. Use it in all local
functions where the INPUT command gets send.

22 years ago2002-04-27 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Sat, 27 Apr 2002 12:11:52 +0000 (12:11 +0000)]
2002-04-27  Marcus Brinkmann  <marcus@g10code.de>

* engine-gpgsm.c (_gpgme_gpgsm_op_verify): Close the output
descriptor only when we don't need it anymore.  Close the message
descriptor if we don't need it.

22 years agoallow checking of Opaque Signed message data
Karl-Heinz Zimmer [Sat, 27 Apr 2002 05:32:39 +0000 (05:32 +0000)]
allow checking of Opaque Signed message data

22 years ago* Makefile.am: Create libtool libraries.
Werner Koch [Fri, 26 Apr 2002 12:38:27 +0000 (12:38 +0000)]
* Makefile.am: Create libtool libraries.

* Makefile.am (libgpgme_la_LIBADD): Use libtool libraries.

* Makefile.am: Create libtool libraries

22 years ago2002-04-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Thu, 25 Apr 2002 00:36:03 +0000 (00:36 +0000)]
2002-04-25  Marcus Brinkmann  <marcus@g10code.de>

* rungpg.c (_gpgme_gpg_release): Call gpgme_data_release on
GPG->cmd.cb_data, not xfree.

22 years ago2002-04-25 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 24 Apr 2002 22:46:25 +0000 (22:46 +0000)]
2002-04-25  Marcus Brinkmann  <marcus@g10code.de>

* engine-gpgsm.c (_gpgme_gpgsm_new): Set the display, ttyname,
ttytype, lc_ctype and lc_messages options in the server.

22 years ago2002-04-24 Marcus Brinkmann <marcus@g10code.de>
Marcus Brinkmann [Wed, 24 Apr 2002 02:21:12 +0000 (02:21 +0000)]
2002-04-24  Marcus Brinkmann  <marcus@g10code.de>

* engine-gpgsm.c (map_assuan_error): Add new error codes.

22 years agoUpdate assuan and jnlib to 20020424 from newpg.
Marcus Brinkmann [Wed, 24 Apr 2002 01:55:58 +0000 (01:55 +0000)]
Update assuan and jnlib to 20020424 from newpg.

22 years ago* key.c (gpgme_key_get_ulong_attr): Swapped use of can_encrypt and
Werner Koch [Tue, 23 Apr 2002 09:06:22 +0000 (09:06 +0000)]
* key.c (gpgme_key_get_ulong_attr): Swapped use of can_encrypt and
can_certify to return the requested values.

22 years agodoc/
Marcus Brinkmann [Mon, 22 Apr 2002 22:06:09 +0000 (22:06 +0000)]
doc/
2002-04-23  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Passphrase Callback): Document that either return
argument can be NULL.
(Progress Meter Callback): Likewise.

gpgme/
2002-04-23  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.c (gpgme_get_progress_cb): Allow either return parameter
to be NULL.
(gpgme_get_passphrase_cb): Likewise.

22 years agodoc/
Marcus Brinkmann [Mon, 22 Apr 2002 21:58:26 +0000 (21:58 +0000)]
doc/
2002-04-22  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.texi (Passphrase Callback): Fix small typo.  Document the
new function gpgme_get_passphrase_cb.
(Progress Meter Callback): Document the new function
gpgme_get_progress_cb.

gpgme/
2002-04-22  Marcus Brinkmann  <marcus@g10code.de>

* gpgme.c (gpgme_get_passphrase_cb): New function.
(gpgme_get_progress_cb): New function.
* gpgme.h: Add new prototypes for gpgme_get_passphrase_cb and
gpgme_get_progress_cb.

22 years agoMore fixes for certificate generation
Matthias Kalle Dalheimer [Thu, 18 Apr 2002 19:26:03 +0000 (19:26 +0000)]
More fixes for certificate generation

22 years agoAdditional parameter for returning the cert length
Matthias Kalle Dalheimer [Thu, 18 Apr 2002 07:38:15 +0000 (07:38 +0000)]
Additional parameter for returning the cert length

22 years agoreport both the error-Id and the error-text to the calling program when signing or...
Karl-Heinz Zimmer [Wed, 17 Apr 2002 15:00:53 +0000 (15:00 +0000)]
report both the error-Id and the error-text to the calling program when signing or encrypting of mails could not be done

22 years agoImplemented requesting certs
Matthias Kalle Dalheimer [Wed, 17 Apr 2002 14:16:53 +0000 (14:16 +0000)]
Implemented requesting certs