diff options
Diffstat (limited to '')
| -rw-r--r-- | gpgme/ChangeLog | 5 | ||||
| -rw-r--r-- | gpgme/engine-gpgsm.c | 7 | 
2 files changed, 11 insertions, 1 deletions
| diff --git a/gpgme/ChangeLog b/gpgme/ChangeLog index 38846b0d..9da7d708 100644 --- a/gpgme/ChangeLog +++ b/gpgme/ChangeLog @@ -1,3 +1,8 @@ +2001-12-19  Marcus Brinkmann  <[email protected]> + +	* engine-gpgsm.c (_gpgme_gpgsm_new): New variable CHILD_FDS. +	Fill it with the servers fds, and pass it to assuan_pipe_connect. +  2001-12-18  Marcus Brinkmann  <[email protected]>  	* keylist.c (gpgme_op_keylist_end): New function. diff --git a/gpgme/engine-gpgsm.c b/gpgme/engine-gpgsm.c index 9ecac07c..1eb1d81c 100644 --- a/gpgme/engine-gpgsm.c +++ b/gpgme/engine-gpgsm.c @@ -133,6 +133,7 @@ _gpgme_gpgsm_new (GpgsmObject *r_gpgsm)    GpgsmObject gpgsm;    char *argv[] = { "gpgsm", "--server", NULL };    int fds[2]; +  int child_fds[4];    *r_gpgsm = NULL;    gpgsm = xtrycalloc (1, sizeof *gpgsm); @@ -179,8 +180,12 @@ _gpgme_gpgsm_new (GpgsmObject *r_gpgsm)    gpgsm->message_fd = fds[1];    gpgsm->message_fd_server = fds[0]; +  child_fds[0] = gpgsm->input_fd_server; +  child_fds[1] = gpgsm->output_fd_server; +  child_fds[2] = gpgsm->message_fd_server; +  child_fds[3] = -1;    err = assuan_pipe_connect (&gpgsm->assuan_ctx, -			     _gpgme_get_gpgsm_path (), argv); +			     _gpgme_get_gpgsm_path (), argv, child_fds);    if (!err &&        (_gpgme_io_set_close_notify (gpgsm->input_fd, | 
