Karl-Heinz Zimmer
0775304a91
changed specification of SignatureMetaData struct
2001-11-25 20:31:36 +00:00
Karl-Heinz Zimmer
2331d9df26
[Kalle] signature verification and decoding of encrypted mails
2001-11-25 15:23:21 +00:00
Karl-Heinz Zimmer
8c656febad
Now gpgmeplug.c can also create encrypted and signed+encrypted S/MIME mails.
2001-11-25 05:07:44 +00:00
Karl-Heinz Zimmer
a311c98821
adjusted 'encryptMessage' parameters: now also the addressee is given
2001-11-25 03:37:13 +00:00
Werner Koch
6617b3d090
Guess what.
2001-11-24 21:27:22 +00:00
Werner Koch
c8e29e5a23
Updated from canonical source location in GnuPG.
2001-11-24 21:22:18 +00:00
Marcus Brinkmann
a1d616ad30
2001-11-24 Marcus Brinkmann <marcus@g10code.de>
...
* engine-gpgsm.c (gpgsm_status_handler): Don't break if bsearch fails.
Deal with assuan read line returning more than one line (for now).
2001-11-24 19:31:26 +00:00
Marcus Brinkmann
326728e59d
2001-11-24 Marcus Brinkmann <marcus@g10code.de>
...
* Makefile.am (libgpgsmplug_la_SOURCES): Fix source file.
2001-11-24 17:11:15 +00:00
Karl-Heinz Zimmer
9395aecc38
signing now returns only the SIGNATURE - not the original text - since building of the S/MIME object is done in the calling program (the MUA...)
2001-11-24 10:51:55 +00:00
Marcus Brinkmann
14c4adf33e
2001-11-23 Marcus Brinkmann <marcus@g10code.de>
...
* engine-gpgsm.c (_gpgme_gpgsm_op_sign): Implement it according to
the current protocol definition.
2001-11-23 11:52:09 +00:00
Karl-Heinz Zimmer
2ed886f88b
signing of mail bodies is working now - buuuuut: I changed the behaviour of the 'signMessage()' function, it now returns *only* the signature part (with a trailing zero). This is neccessary to avoid confugion at the KMail side: otherwise KMail might try to convert the whole MIME block into quoted printable - of course this is only allowed for the body part but not for the signature part.
2001-11-23 02:08:53 +00:00
Marcus Brinkmann
4d8a8ff411
Explain more of the build system.
2001-11-23 01:12:04 +00:00
Marcus Brinkmann
ec60ba44b9
2001-11-23 Marcus Brinkmann <marcus@g10code.de>
...
* engine-gpgsm.c (_gpgme_gpgsm_new): Set CLOEXEC flag for parent
ends of the pipe.
2001-11-23 00:48:51 +00:00
Marcus Brinkmann
d021ec722b
2001-11-22 Marcus Brinkmann <marcus@g10code.de>
...
* engine-gpgsm.c: Include stdlib.h and string.h. Also include,
for now, rungpg.h and status-table.h.
(gpgsm_status_handler): Implement more of the status handler.
2001-11-22 21:27:41 +00:00
Marcus Brinkmann
4c6c8a0c5e
2001-11-22 Marcus Brinkmann <marcus@g10code.de>
...
* engine.c (_gpgme_engine_op_decrypt): Implement CMS case.
(_gpgme_engine_op_delete): Likewise.
(_gpgme_engine_op_encrypt): Likewise.
(_gpgme_engine_op_export): Likewise.
(_gpgme_engine_op_genkey): Likewise.
(_gpgme_engine_op_keylist): Likewise.
(_gpgme_engine_op_sign): Likewise.
(_gpgme_engine_op_trustlist): Likewise.
* engine-gpgsm.c (_gpgme_gpgsm_op_encrypt): New function.
(gpgsm_assuan_simple_command): Likewise.
(gpgsm_set_recipients): Likewise.
(gpgsm_set_fd): Reimplement using gpgsm_assuan_simple_command.
(_gpgme_gpgsm_op_delete): New function.
(_gpgme_gpgsm_op_export): Likewise.
(_gpgme_gpgsm_op_genkey): Likewise.
(_gpgme_gpgsm_op_sign): Likewise.
(_gpgme_gpgsm_op_keylist): Likewise.
(_gpgme_gpgsm_op_trustlist): Likewise.
(_gpgme_gpgsm_release): Release command.
(_gpgme_gpgsm_op_decrypt): Allocate command.
(_gpgme_gpgsm_op_import): Likewise.
(gpgsm_status_handler): Also treat `ERR' strings as EOF.
2001-11-22 20:48:37 +00:00
Marcus Brinkmann
20b4415d80
2001-11-22 Marcus Brinkmann <marcus@g10code.de>
...
* gpgme.h (gpgme_set_protocol): New prototype.
2001-11-22 Marcus Brinkmann <marcus@g10code.de>
* Makefile.am (libgpgsmplug_la_LIBADD): New variable.
(libgpgsmplug_la_LDFLAGS): Likewise.
(libgpgsmplug_la_SOURCES): Likewise.
(lib_LTLIBRARIES): Add libgpgsmplug.la.
(INCLUDES): Include the local gpgme.h.
* gpgmeplug.c (signMessage): Set protocol.
(GPGMEPLUG_PROTOCOL) [!GPGMEPLUG_PROTOCOL]: Set
GPGMEPLUG_PROTOCOL.
* gpgsmplug.c: New file.
2001-11-22 18:48:53 +00:00
Karl-Heinz Zimmer
56c3ac2dce
removed stupid C bug (malloc of strlen(..) instead of 1+strlen)
2001-11-22 17:32:21 +00:00
Marcus Brinkmann
7866a4ced1
2001-11-22 Marcus Brinkmann <marcus@g10code.de>
...
* engine-gpgsm.c (_gpgme_gpgsm_op_decrypt): New function.
(_gpgme_gpgsm_op_import): Likewise.
2001-11-22 15:22:27 +00:00
Marcus Brinkmann
b1f9171635
2001-11-22 Marcus Brinkmann <marcus@gnu.org>
...
* engine-gpgsm.c: Shuffle around header inclusion a bit, to still
keep them seperate.
(_gpgme_set_status_handler) [!ENABLE_GPGSM]: New function.
2001-11-22 13:47:46 +00:00
Werner Koch
e1057d2ddf
* engine-gpgsm.c: Include more headers so that NULL and mk_error
...
is defined even with an undefined GPGSM_PATH.
2001-11-22 10:29:52 +00:00
Karl-Heinz Zimmer
1195ae3fc1
Now send the signature back to the calling function (instead of just printing it to stdout)
2001-11-22 09:36:53 +00:00
Marcus Brinkmann
bb36f699e7
2001-11-22 Marcus Brinkmann <marcus@g10code.de>
...
* rungpg.c (gpg_inbound_handler, write_mem_data, write_cb_data,
gpg_outbound_handler): Moved to ...
* data.c (_gpgme_data_inbound_handler, write_mem_data,
write_cb_data, _gpgme_data_outbound_handler): ... here. Make the
_gpgme_* ones non-static.
* data.c: Include io.h.
* ops.h (_gpgme_data_inbound_handler): New prototype.
(_gpgme_data_outbound_handler): Likewise.
(_gpgme_gpg_spawn): Use these new functions.
* engine-gpgsm.h (_gpgme_gpgsm_op_decrypt, _gpgme_gpgsm_op_delete,
_gpgme_gpgsm_op_encrypt, _gpgme_gpgsm_op_export,
_gpgme_gpgsm_op_genkey, _gpgme_gpgsm_op_import,
_gpgme_gpgsm_op_keylist, _gpgme_gpgsm_op_sign,
_gpgme_gpgsm_op_trustlist, _gpgme_gpgsm_op_verify,
_gpgme_gpgsm_start, _gpgme_gpgsm_set_status_handler): New prototype.
Include <rungpg.h> for status handler function.
* engine-gpgsm.c (struct gpgsm_object_s): New members input_fd,
input_data, output_fd, output_data, message_fd, message_data, command
and status.
(_gpgme_gpgsm_new): Open input, output and message pipes before
connecting to the client. Close server's ends afterwards.
(_gpgme_gpgsm_release): Close open file descriptors. Remove
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.
2001-11-22 03:08:58 +00:00
Marcus Brinkmann
02bff2c62a
* assuan-connect.c (assuan_get_pid): New function.
...
* assuan.h: Prototype. Include sys/types.h for pid_t,
and stdio.h for FILE *.
2001-11-22 03:08:07 +00:00
Marcus Brinkmann
bc798f31e2
2001-11-22 Marcus Brinkmann <marcus@g10code.de>
...
* configure.ac (AC_CONFIG_FILES): Add tests/gpg/Makefile and
tests/gpgsm/Makefile.
2001-11-22 03:07:10 +00:00
Marcus Brinkmann
743cd52d8a
2001-11-22 Marcus Brinkmann <marcus@g10code.de>
...
* gpg/: New directory.
* Makefile.am, t-verify.c, t-encrypt.c, t-signers.c, t-trustlist.c,
t-sign.c, t-keylist.c, t-import.c, t-genkey.c, t-export.c,
t-decrypt-verify.c, t-decrypt.c, t-version.c, t-data.c, mkdemodirs.
cipher-1.asc, cipher-2.asc, geheim.txt, pubdemo.asc, pubkey-1.asc,
secdemo.asc, seckey-1.asc): Move to sub directory gpg/.
* gpg/Makefile.am (INCLUDES): Include gpgme/, not include/ and
intl/.
(LDD): Correct relative path to gpgme library.
(TESTS): Remove t-version and t-data.
* gpg/t-verify.c, gpg/t-encrypt.c, gpg/t-signers.c, gpg/t-trustlist.c,
gpg/t-sign.c, gpg/t-keylist.c, gpg/t-import.c, gpg/t-genkey.c,
gpg/t-export.c, gpg/t-decrypt-verify.c, gpg/t-decrypt.c,
t-version.c, t-data.c): Include gpgme.h, not "../gpgme/gpgme.h".
* Makefile.am: New file.
* gpgsm/: New directory.
* gpgsm/Makefile.am: New file.
2001-11-22 03:01:26 +00:00
Karl-Heinz Zimmer
47ea703ef7
corrected includes
2001-11-21 23:34:51 +00:00
Karl-Heinz Zimmer
5b3b345cdc
create signature (and write it to stdout for testing)
2001-11-21 23:23:24 +00:00
Karl-Heinz Zimmer
72f6f8b764
change Makefile to create shared lib
2001-11-21 23:20:49 +00:00
Marcus Brinkmann
c7b319504d
cosmetic change
2001-11-21 21:32:33 +00:00
Marcus Brinkmann
cf2dcf0634
2001-11-21 Marcus Brinkmann <marcus@g10code.de>
...
* Makefile.am (gpgmeplug): New variable, set to gpgmeplug if
[BUILD_GPGMEPLUG].
* configure.ac (AC_CONFIG_FILES): Add gpgmeplug/Makefile.
Support --enable-gpgmeplug.
2001-11-21 21:31:07 +00:00
Marcus Brinkmann
e690fff99d
.
2001-11-21 21:09:50 +00:00
Marcus Brinkmann
14e29ef7dc
2001-11-21 Marcus Brinkmann <marcus@g10code.de>
...
* gpgmeplug.c: Include config.h only if [HAVE_CONFIG_H]. Do not
include util.h.
(deinitialize): Use free, not _gpgme_free.
(setDirectoryServers): Use calloc, not xtrycalloc. Use free, not
_gpgme_free. Use malloc instead xtrymalloc.
(appendDirectoryServer): Use realloc, not xtryrealloc.
2001-11-21 21:08:02 +00:00
Marcus Brinkmann
2621acc724
2001-11-21 Marcus Brinkmann <marcus@g10code.de>
...
* autogen.sh: Tighten version dependencies.
2001-11-21 20:54:39 +00:00
Karl-Heinz Zimmer
0a615fa887
finished implementation of DirectoryServices storing/retrieving
2001-11-21 16:57:54 +00:00
Karl-Heinz Zimmer
d01ab1b40d
(security checkin) currently working on signing messages
2001-11-21 14:18:52 +00:00
Karl-Heinz Zimmer
b875177bcf
configure struct updated according to modified cryptplug.h
2001-11-21 10:55:02 +00:00
Karl-Heinz Zimmer
6e3b28453f
GPGME Plug-In initial checkin. Saving/restoring of configuration is working.
2001-11-21 09:42:08 +00:00
Werner Koch
c34cffd0e1
Added gpgmeplug/ for experiments
2001-11-21 09:21:56 +00:00
Marcus Brinkmann
3a25bf8a6e
correct history, har har
2001-11-21 03:45:20 +00:00
Marcus Brinkmann
687034beae
add some more items
2001-11-21 03:43:16 +00:00
Marcus Brinkmann
225dc3d396
2001-11-21 Marcus Brinkmann <marcus@g10code.de>
...
* context.h: Do not include rungpg.h, but engine.h.
(struct gpgme_context_s): Replace member gpg with engine.
* gpgme.c (gpgme_release): Release engine, not gpg.
* recipient.c (_gpgme_append_gpg_args_from_recifgpients): Function
moved ...
* rungpg.c (_gpgme_append_gpg_args_from_recipients): ... here.
Make static, change order of arguments, and return an error value.
* ops.h (_gpgme_append_gpg_args_from_recipients): Removed prototype.
* rungpg.h (_gpgme_gpg_op_verify): Add prototype.
(_gpgme_gpg_op_encrypt): Likewise.
(_gpgme_gpg_op_decrypt): Likewise.
(_gpgme_gpg_op_delete): Likewise.
(_gpgme_gpg_op_export): Likewise.
(_gpgme_gpg_op_genkey): Likewise.
(_gpgme_gpg_op_import): Likewise.
(_gpgme_gpg_op_keylist): Likewise.
(_gpgme_gpg_op_sign): Likewise.
(_gpgme_gpg_op_trustlist): Likewise.
* rungpg.c (_gpgme_gpg_op_verify): New function.
(_gpgme_gpg_op_encrypt): Likewise.
(_gpgme_gpg_op_decrypt): Likewise.
(_gpgme_gpg_op_delete): Likewise.
(_gpgme_gpg_op_export): Likewise.
(_gpgme_gpg_op_genkey): Likewise.
(_gpgme_gpg_op_import): Likewise.
(_gpgme_gpg_op_keylist): Likewise.
(_gpgme_gpg_op_sign): Likewise.
(_gpgme_gpg_op_trustlist): Likewise.
* engine.h (_gpgme_engine_set_status_handler): Add prototype.
(_gpgme_engine_set_command_handler): Likewise.
(_gpgme_engine_set_colon_line_handler): Likewise.
(_gpgme_engine_op_decrypt): Likewise.
(_gpgme_engine_op_delete): Likewise.
(_gpgme_engine_op_encrypt): Likewise.
(_gpgme_engine_op_export): Likewise.
(_gpgme_engine_op_genkey): Likewise.
(_gpgme_engine_op_import): Likewise.
(_gpgme_engine_op_keylist): Likewise.
(_gpgme_engine_op_sign): Likewise.
(_gpgme_engine_op_trustlist): Likewise.
(_gpgme_engine_op_verify): Likewise.
(_gpgme_engine_start): Likewise.
* engine.c (_gpgme_engine_set_status_handler): New function.
(_gpgme_engine_set_command_handler): Likewise.
(_gpgme_engine_set_colon_line_handler): Likewise.
(_gpgme_engine_op_decrypt): Likewise.
(_gpgme_engine_op_delete): Likewise.
(_gpgme_engine_op_encrypt): Likewise.
(_gpgme_engine_op_export): Likewise.
(_gpgme_engine_op_genkey): Likewise.
(_gpgme_engine_op_import): Likewise.
(_gpgme_engine_op_keylist): Likewise.
(_gpgme_engine_op_sign): Likewise.
(_gpgme_engine_op_trustlist): Likewise.
(_gpgme_engine_op_verify): Likewise.
(_gpgme_engine_start): Likewise.
* verify.c (gpgme_op_verify_start): Reimplement in terms of above
functions.
* encrypt.c (gpgme_op_encrypt_start): Likewise.
* decrypt.c (_gpgme_decrypt_start): Likewise.
* passphrase.c (_gpgme_passphrase_start): Likewise.
* keylist.c (gpgme_op_keylist_start): Likewise.
2001-11-21 03:40:17 +00:00
Marcus Brinkmann
97ba3bec40
2001-11-20 Marcus Brinkmann <marcus@g10code.de>
...
* types.h: Add types EngineObject and GpgsmObject.
* Makefile.am (libgpgme_la_SOURCES): Add engine-gpgsm.h,
engine-gpgsm.c, engine.h and engine.c.
* engine.h: New file.
* 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
_gpgme_gpg_check_version.
* version.c (compare_versions): Rename to ...
(_gpgme_compare_versions): ... this. Make non-static.
(gpgme_check_version): Use _gpgme_compare_versions rather than
compare_versions.
(gpgme_check_engine): Likewise.
* ops.h (_gpgme_get_program_version): Add prototype.
2001-11-20 06:04:15 +00:00
Marcus Brinkmann
01b5f56f83
remove some CVS conflict cruft
2001-11-20 06:03:02 +00:00
Marcus Brinkmann
8cd3685382
2001-11-20 Marcus Brinkmann <marcus@g10code.de>
...
* types.h: Add types EngineObject and GpgsmObject.
* Makefile.am (libgpgme_la_SOURCES): Add engine-gpgsm.h,
engine-gpgsm.c, engine.h and engine.c.
* engine.h: New file.
* 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
_gpgme_gpg_check_version.
* version.c (compare_versions): Rename to ...
(_gpgme_compare_versions): ... this. Make non-static.
(gpgme_check_version): Use _gpgme_compare_versions rather than
compare_versions.
(gpgme_check_engine): Likewise.
* ops.h (_gpgme_get_program_version): Add prototype.
2001-11-20 06:01:24 +00:00
Marcus Brinkmann
89e12fc020
2001-11-20 Marcus Brinkmann <marcus@g10code.de>
...
* Makefile.am (SUBDIRS): Support building the assuan library
(currently if GPGSM_PATH is set)..
* configure.ac: Support building the assuan library.
* assuan: New directory, populated with the Assuan library
(copied from the newpg repository).
gpgme/
2001-11-20 Marcus Brinkmann <marcus@g10code.de>
* Makefile.am (libgpgme_la_INCLUDES): Remove obsolete directive.
(AM_CPPFLAGS): New directive [BUILD_ASSUAN].
(libgpgme_la_LIBADD): Likewise.
2001-11-20 05:27:46 +00:00
Marcus Brinkmann
5b9b3edcac
2001-11-20 Marcus Brinkmann <marcus@g10code.de>
...
* configure.ac (NEED_GPGSM_VERSION): New variable. Treat it
similarly to NEED_GPGSM_VERSION.
* acconfig.h: Likewise.
2001-11-20 04:02:55 +00:00
Marcus Brinkmann
e9e8b03233
2001-11-20 Marcus Brinkmann <marcus@g10code.de>
...
* version.c: Remove global variables lineno and
tmp_engine_version.
(version_handler): Removed.
(_gpgme_get_program_version): New function.
(get_engine_info): Don't use context and version_handler,
but _gpgme_get_program_version.
* ops.h (_gpgme_get_program_version): Add prototype for
_gpgme_get_program_version (we expect to use it elsewhere soon).
2001-11-20 04:02:38 +00:00
Marcus Brinkmann
4537444412
2001-11-18 Marcus Brinkmann <marcus@g10code.de>
...
* configure.in: Renamed to ...
* configure.ac: ... this. Update to autoconf 2.52. Lots of small
changes in the transition. Support --with-gpg=PATH and
--with-gpgsm=PATH options. Check if test suites can be run.
* acconfig.h: Add GPGSM_PATH.
* Makefile.am: New variable `tests', set to `tests' if
RUN_GPG_TESTS.
(SUBDIRS): Replace string `tests' with variable `tests'.
gpgme/
2001-11-18 Marcus Brinkmann <marcus@g10code.de>
* configure.in: Renamed to ...
* configure.ac: ... this. Update to autoconf 2.52. Lots of small
changes in the transition. Support --with-gpg=PATH and
--with-gpgsm=PATH options. Check if test suites can be run.
* acconfig.h: Add GPGSM_PATH.
* Makefile.am: New variable `tests', set to `tests' if
RUN_GPG_TESTS.
(SUBDIRS): Replace string `tests' with variable `tests'.
2001-11-18 03:31:31 +00:00
Marcus Brinkmann
79da70c107
Fix small error.
2001-11-16 12:13:01 +00:00
Marcus Brinkmann
3e5fca5f16
* TODO: Remove obsolete items, categorize another.
...
* NEWS: Add new feature decrypt-verify.
2001-11-16 01:44:49 +00:00