aboutsummaryrefslogtreecommitdiffstats
path: root/src/engine-backend.h
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2009-01-26 10:21:10 +0000
committerWerner Koch <[email protected]>2009-01-26 10:21:10 +0000
commitd951cb713fdc3a1310534acdce84e3e005ad1d04 (patch)
tree1e99ea7abcee865b534f9caa1aea1ac096f0eea6 /src/engine-backend.h
parentRenamed rungpg.c to engine-gpg.c for conistency. (diff)
downloadgpgme-d951cb713fdc3a1310534acdce84e3e005ad1d04.tar.gz
gpgme-d951cb713fdc3a1310534acdce84e3e005ad1d04.zip
First take on the low-level assuan interface.
Diffstat (limited to 'src/engine-backend.h')
-rw-r--r--src/engine-backend.h25
1 files changed, 21 insertions, 4 deletions
diff --git a/src/engine-backend.h b/src/engine-backend.h
index 2e2ef5ec..d656d9d6 100644
--- a/src/engine-backend.h
+++ b/src/engine-backend.h
@@ -1,5 +1,5 @@
/* engine-backend.h - A crypto backend for the engine interface.
- Copyright (C) 2002, 2003, 2004 g10 Code GmbH
+ Copyright (C) 2002, 2003, 2004, 2009 g10 Code GmbH
This file is part of GPGME.
@@ -14,9 +14,8 @@
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
- License along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
- 02111-1307, USA. */
+ License along with this program; if not, see <http://www.gnu.org/licenses/>.
+ */
#ifndef ENGINE_BACKEND_H
#define ENGINE_BACKEND_H
@@ -35,6 +34,11 @@ struct engine_ops
/* Return the default file name for the binary of this engine. */
const char *(*get_file_name) (void);
+ /* Return the default home dir for the binary of this engine. If
+ this function pointer is not set, the standard default home dir
+ of the engine is used. */
+ const char *(*get_home_dir) (void);
+
/* Returns a malloced string containing the version of the engine
with the given binary file name (or the default if FILE_NAME is
NULL. */
@@ -96,6 +100,16 @@ struct engine_ops
gpgme_data_t plaintext);
gpgme_error_t (*getauditlog) (void *engine, gpgme_data_t output,
unsigned int flags);
+ gpgme_error_t (*opassuan_transact) (void *engine,
+ const char *command,
+ engine_assuan_result_cb_t result_cb,
+ void *result_cb_value,
+ gpgme_assuan_data_cb_t data_cb,
+ void *data_cb_value,
+ gpgme_assuan_inquire_cb_t inq_cb,
+ void *inq_cb_value,
+ gpgme_assuan_status_cb_t status_cb,
+ void *status_cb_value);
gpgme_error_t (*conf_load) (void *engine, gpgme_conf_comp_t *conf_p);
gpgme_error_t (*conf_save) (void *engine, gpgme_conf_comp_t conf);
@@ -114,5 +128,8 @@ extern struct engine_ops _gpgme_engine_ops_gpgsm; /* CMS. */
#ifdef ENABLE_GPGCONF
extern struct engine_ops _gpgme_engine_ops_gpgconf; /* gpg-conf. */
#endif
+#ifdef ENABLE_GPGSM /* If this is enabled we also have assuan support. */
+extern struct engine_ops _gpgme_engine_ops_assuan; /* Low-level Assuan. */
+#endif
#endif /* ENGINE_BACKEND_H */