2001-11-23 Marcus Brinkmann <marcus@g10code.de>
authorMarcus Brinkmann <mb@g10code.com>
Fri, 23 Nov 2001 00:48:51 +0000 (00:48 +0000)
committerMarcus Brinkmann <mb@g10code.com>
Fri, 23 Nov 2001 00:48:51 +0000 (00:48 +0000)
* engine-gpgsm.c (_gpgme_gpgsm_new): Set CLOEXEC flag for parent
ends of the pipe.

gpgme/ChangeLog
gpgme/engine-gpgsm.c

index f58faff..03a093a 100644 (file)
@@ -1,3 +1,8 @@
+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-22  Marcus Brinkmann  <marcus@g10code.de>
 
        * engine-gpgsm.c: Include stdlib.h and string.h.  Also include,
index 127014d..63f019a 100644 (file)
@@ -34,6 +34,7 @@
 #include <string.h>
 #include <sys/types.h>
 #include <assert.h>
+#include <fcntl.h> /* FIXME */
 
 /* FIXME */
 #include "../assuan/assuan-defs.h"
@@ -126,6 +127,7 @@ _gpgme_gpgsm_new (GpgsmObject *r_gpgsm)
       goto leave;
     }
   gpgsm->input_fd = ip[1];
+  fcntl (ip[1], F_SETFD, FD_CLOEXEC); /* FIXME */
   gpgsm->input_fd_server = ip[0];
   if (_gpgme_io_pipe (op, 1) < 0)
     {
@@ -133,6 +135,7 @@ _gpgme_gpgsm_new (GpgsmObject *r_gpgsm)
       goto leave;
     }
   gpgsm->output_fd = op[0];
+  fcntl (op[0], F_SETFD, FD_CLOEXEC); /* FIXME */
   gpgsm->output_fd_server = op[1];
   if (_gpgme_io_pipe (mp, 0) < 0)
     {
@@ -140,6 +143,7 @@ _gpgme_gpgsm_new (GpgsmObject *r_gpgsm)
       goto leave;
     }
   gpgsm->message_fd = mp[1];
+  fcntl (mp[1], F_SETFD, FD_CLOEXEC); /* FIXME */
   gpgsm->message_fd_server = mp[0];
 
   err = assuan_pipe_connect (&gpgsm->assuan_ctx,