From 9c45d9ad13fdf439d44d7443ae75da15ea0223ed Mon Sep 17 00:00:00 2001 From: Sam Varshavchik Date: Mon, 19 Aug 2013 16:39:41 -0400 Subject: Initial checkin Imported from subversion report, converted to git. Updated all paths in scripts and makefiles, reflecting the new directory hierarchy. --- gpglib/mimegpgfork.h | 84 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 gpglib/mimegpgfork.h (limited to 'gpglib/mimegpgfork.h') diff --git a/gpglib/mimegpgfork.h b/gpglib/mimegpgfork.h new file mode 100644 index 0000000..cebee60 --- /dev/null +++ b/gpglib/mimegpgfork.h @@ -0,0 +1,84 @@ +#ifndef mimegpgfork_h +#define mimegpgfork_h + +/* +** Copyright 2001 Double Precision, Inc. See COPYING for +** distribution information. +*/ + + +#include "config.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct gpgmime_forkinfo { + int togpg_fd; + int fromgpg_fd; + int fromgpg_errfd; + + char gpg_writebuf[BUFSIZ]; + char gpg_errbuf[1024]; + + unsigned gpg_writecnt; + unsigned gpg_errcnt; + + int gpg_errflag; + pid_t gpg_pid; + + struct sigaction old_pipe_sig; + + int (*gpg_readhandler)(const char *, size_t, void *); + void *gpg_voidarg; +} ; + +int libmail_gpgmime_forksignencrypt(const char *, /* gpgdir */ + const char *, /* passphrase fd */ + int, /* Flags: */ + +#define GPG_SE_SIGN 1 +#define GPG_SE_ENCRYPT 2 + + int, char **, /* argc/argv */ + + int (*)(const char *, size_t, void *), + /* Encrypted output */ + void *, /* 3rd arg to encrypted output */ + + struct gpgmime_forkinfo * + /* Allocated struct */ + ); + +int libmail_gpgmime_forkchecksign(const char *, /* gpgdir */ + const char *, /* passphrase fd */ + const char *, /* content filename */ + const char *, /* signature filename */ + int, char **, /* argc/argv */ + struct gpgmime_forkinfo *); + /* Allocated struct */ + +int libmail_gpgmime_forkdecrypt(const char *, /* gpgdir */ + const char *, /* passphrase fd */ + int, char **, /* argc/argv */ + int (*)(const char *, size_t, void *), + /* Output callback function */ + void *, /* 3rd arg to callback function */ + + struct gpgmime_forkinfo *); + /* Allocated struct */ + +void libmail_gpgmime_write(struct gpgmime_forkinfo *, const char *, size_t); +int libmail_gpgmime_finish(struct gpgmime_forkinfo *); + +const char *libmail_gpgmime_getoutput(struct gpgmime_forkinfo *); +const char *libmail_gpgmime_getcharset(struct gpgmime_forkinfo *); + +#ifdef __cplusplus +} ; +#endif + +#endif -- cgit v1.2.3