aboutsummaryrefslogtreecommitdiffstats
path: root/src/gpg-error.h.in
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpg-error.h.in')
-rw-r--r--src/gpg-error.h.in56
1 files changed, 22 insertions, 34 deletions
diff --git a/src/gpg-error.h.in b/src/gpg-error.h.in
index d38696a..0c56436 100644
--- a/src/gpg-error.h.in
+++ b/src/gpg-error.h.in
@@ -1087,7 +1087,7 @@ void _gpgrt_log_assert (const char *expr, const char *file, int line,
/*
- * Spawn functions (Not yet available)
+ * Spawn functions
*/
#define GPGRT_PROCESS_DETACHED (1 << 1)
@@ -1137,46 +1137,34 @@ gpg_err_code_t gpgrt_make_pipe (int filedes[2], gpgrt_stream_t *r_fp,
#define gpgrt_create_inbound_pipe(a,b,c) gpgrt_make_pipe ((a), (b), -1,(c));
#define gpgrt_create_outbound_pipe(a,b,c) gpgrt_make_pipe ((a), (b), 1,(c));
+/* Close all file resources (descriptors), except KEEP_FDS. */
+void gpgrt_close_all_fds (int from, int *keep_fds);
+#endif /*0*/
-/* Fork and exec PGMNAME. */
-gpg_err_code_t gpgrt_spawn_process (const char *pgmname, const char *argv[],
- int *execpt, unsigned int flags,
- gpgrt_stream_t *r_infp,
- gpgrt_stream_t *r_outfp,
- gpgrt_stream_t *r_errfp,
- gpgrt_process_t *r_process_id);
-
-/* Fork and exec PGNNAME and connect the process to the given FDs. */
-gpg_err_code_t gpgrt_spawn_process_fd (const char *pgmname, const char *argv[],
- int infd, int outfd, int errfd,
- int (*spawn_cb) (void *),
- void *spawn_cb_arg,
- gpgrt_process_t *r_process_id);
+gpg_err_code_t gpgrt_process_spawn (const char *pgmname, const char *argv1[],
+ unsigned int flags,
+ gpgrt_spawn_actions_t act,
+ gpgrt_process_t *r_process);
-/* Fork and exec PGMNAME as a detached process. */
-gpg_err_code_t gpgrt_spawn_process_detached (const char *pgmname,
- const char *argv[],
- const char *envp[]);
+gpg_err_code_t gpgrt_process_terminate (gpgrt_process_t process);
-/* Wait for a single process. */
-gpg_err_code_t gpgrt_wait_process (const char *pgmname,
- gpgrt_process_t process_id,
- int hang, int *r_exitcode);
+gpg_err_code_t gpgrt_process_get_fds (gpgrt_process_t process,
+ unsigned int flags,
+ int *r_fd_in, int *r_fd_out,
+ int *r_fd_err);
-/* Wait for a multiple processes. */
-gpg_err_code_t gpgrt_wait_processes (const char **pgmnames,
- gpgrt_process_t *process_ids,
- size_t count, int hang, int *r_exitcodes);
+gpg_err_code_t gpgrt_process_get_streams (gpgrt_process_t process,
+ unsigned int flags,
+ gpgrt_stream_t *r_fp_in,
+ gpgrt_stream_t *r_fp_out,
+ gpgrt_stream_t *r_fp_err);
-/* Kill the process identified by PROCESS_ID. */
-void gpgrt_kill_process (gpgrt_process_t process_id);
+gpg_err_code_t gpgrt_process_ctl (gpgrt_process_t process,
+ unsigned int request, ...);
-/* Release process resources identified by PROCESS_ID. */
-void gpgrt_release_process (gpgrt_process_t process_id);
+gpg_err_code_t gpgrt_process_wait (gpgrt_process_t process, int hang);
-/* Close all file resources (descriptors), except KEEP_FDS. */
-void gpgrt_close_all_fds (int from, int *keep_fds);
-#endif /*0*/
+void gpgrt_process_release (gpgrt_process_t process);
/*
* Option parsing.