diff options
author | Justus Winter <[email protected]> | 2015-11-24 17:31:14 +0000 |
---|---|---|
committer | Justus Winter <[email protected]> | 2015-11-25 11:19:50 +0000 |
commit | 03bf88f32c8d203d5b3bfbbc48cc45e6c08cc187 (patch) | |
tree | 30ad5c7a7377a62ed0b3522ba88fd6f8c67f71a9 /common/call-gpg.h | |
parent | common: Refactor the call-gpg code. (diff) | |
download | gnupg-03bf88f32c8d203d5b3bfbbc48cc45e6c08cc187.tar.gz gnupg-03bf88f32c8d203d5b3bfbbc48cc45e6c08cc187.zip |
common: Add stream interface to call-pgp.
* common/call-gpg.c (struct writer_thread_parms): Add field 'stream'.
(writer_thread_main): Support reading from a stream.
(start_writer): Add stream argument.
(struct reader_thread_parms): Add field 'stream'.
(reader_thread_main): Support writing to a stream.
(start_reader): Add stream argument.
(_gpg_encrypt): Add stream api.
(gpg_encrypt_blob): Adapt accordingly.
(gpg_encrypt_stream): New function.
(_gpg_decrypt): Add stream api.
(gpg_decrypt_blob): Adapt accordingly.
(gpg_decrypt_stream): New function.
* common/call-gpg.h (gpg_encrypt_stream): New prototype.
(gpg_decrypt_stream): Likewise.
Signed-off-by: Justus Winter <[email protected]>
Diffstat (limited to 'common/call-gpg.h')
-rw-r--r-- | common/call-gpg.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/common/call-gpg.h b/common/call-gpg.h index 606473d88..2c5854d61 100644 --- a/common/call-gpg.h +++ b/common/call-gpg.h @@ -20,6 +20,8 @@ #ifndef G13_CALL_GPG_H #define G13_CALL_GPG_H +#include <gpg-error.h> + #include "strlist.h" typedef struct server_control_s *ctrl_t; @@ -28,10 +30,18 @@ gpg_error_t gpg_encrypt_blob (ctrl_t ctrl, const char *gpg_program, const void *plain, size_t plainlen, strlist_t keys, void **r_ciph, size_t *r_ciphlen); + +gpg_error_t gpg_encrypt_stream (ctrl_t ctrl, const char *gpg_program, + estream_t plain_stream, + strlist_t keys, + estream_t cipher_stream); + gpg_error_t gpg_decrypt_blob (ctrl_t ctrl, const char *gpg_program, const void *ciph, size_t ciphlen, void **r_plain, size_t *r_plainlen); - +gpg_error_t gpg_decrypt_stream (ctrl_t ctrl, const char *gpg_program, + estream_t cipher_stream, + estream_t plain_stream); #endif /*G13_CALL_GPG_H*/ |