mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-03 12:11:33 +01:00
Changes required to use estream in gpgsm.
This commit is contained in:
parent
d232fd2e54
commit
37088de63d
@ -1,3 +1,9 @@
|
|||||||
|
2010-03-08 Werner Koch <wk@g10code.com>
|
||||||
|
|
||||||
|
* exechelp.h: Include "estream.h".
|
||||||
|
|
||||||
|
* exechelp.c (gnupg_spawn_process): Change OUTFILE to an estream_t.
|
||||||
|
|
||||||
2010-03-02 Werner Koch <wk@g10code.com>
|
2010-03-02 Werner Koch <wk@g10code.com>
|
||||||
|
|
||||||
* estream.c, estream.h, estream-printf.c, estream-printf.h: Update
|
* estream.c, estream.h, estream-printf.c, estream-printf.h: Update
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
/* exechelp.c - fork and exec helpers
|
/* exechelp.c - fork and exec helpers
|
||||||
* Copyright (C) 2004, 2007, 2008, 2009 Free Software Foundation, Inc.
|
* Copyright (C) 2004, 2007, 2008, 2009,
|
||||||
|
* 2010 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* This file is part of GnuPG.
|
* This file is part of GnuPG.
|
||||||
*
|
*
|
||||||
@ -174,7 +175,7 @@ close_all_fds (int first, int *except)
|
|||||||
close (fd);
|
close (fd);
|
||||||
}
|
}
|
||||||
|
|
||||||
errno = 0;
|
gpg_err_set_errno (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -555,7 +556,7 @@ gnupg_create_outbound_pipe (int filedes[2])
|
|||||||
Returns 0 on success or an error code. */
|
Returns 0 on success or an error code. */
|
||||||
gpg_error_t
|
gpg_error_t
|
||||||
gnupg_spawn_process (const char *pgmname, const char *argv[],
|
gnupg_spawn_process (const char *pgmname, const char *argv[],
|
||||||
FILE *infile, FILE *outfile,
|
FILE *infile, estream_t outfile,
|
||||||
void (*preexec)(void), unsigned int flags,
|
void (*preexec)(void), unsigned int flags,
|
||||||
FILE **statusfile, pid_t *pid)
|
FILE **statusfile, pid_t *pid)
|
||||||
{
|
{
|
||||||
@ -582,7 +583,7 @@ gnupg_spawn_process (const char *pgmname, const char *argv[],
|
|||||||
fflush (infile);
|
fflush (infile);
|
||||||
rewind (infile);
|
rewind (infile);
|
||||||
fd = _get_osfhandle (fileno (infile));
|
fd = _get_osfhandle (fileno (infile));
|
||||||
fdout = _get_osfhandle (fileno (outfile));
|
fdout = _get_osfhandle (es_fileno (outfile));
|
||||||
if (fd == -1 || fdout == -1)
|
if (fd == -1 || fdout == -1)
|
||||||
log_fatal ("no file descriptor for file passed to gnupg_spawn_process\n");
|
log_fatal ("no file descriptor for file passed to gnupg_spawn_process\n");
|
||||||
|
|
||||||
@ -690,7 +691,7 @@ gnupg_spawn_process (const char *pgmname, const char *argv[],
|
|||||||
fflush (infile);
|
fflush (infile);
|
||||||
rewind (infile);
|
rewind (infile);
|
||||||
fd = fileno (infile);
|
fd = fileno (infile);
|
||||||
fdout = fileno (outfile);
|
fdout = es_fileno (outfile);
|
||||||
if (fd == -1 || fdout == -1)
|
if (fd == -1 || fdout == -1)
|
||||||
log_fatal ("no file descriptor for file passed to gnupg_spawn_process\n");
|
log_fatal ("no file descriptor for file passed to gnupg_spawn_process\n");
|
||||||
|
|
||||||
|
@ -20,6 +20,9 @@
|
|||||||
#ifndef GNUPG_COMMON_EXECHELP_H
|
#ifndef GNUPG_COMMON_EXECHELP_H
|
||||||
#define GNUPG_COMMON_EXECHELP_H
|
#define GNUPG_COMMON_EXECHELP_H
|
||||||
|
|
||||||
|
#include "estream.h"
|
||||||
|
|
||||||
|
|
||||||
/* Return the maximum number of currently allowed file descriptors.
|
/* Return the maximum number of currently allowed file descriptors.
|
||||||
Only useful on POSIX systems. */
|
Only useful on POSIX systems. */
|
||||||
int get_max_fds (void);
|
int get_max_fds (void);
|
||||||
@ -59,7 +62,7 @@ gpg_error_t gnupg_create_outbound_pipe (int filedes[2]);
|
|||||||
details. Calling gnupg_wait_process is required. Returns 0 on
|
details. Calling gnupg_wait_process is required. Returns 0 on
|
||||||
success or an error code. */
|
success or an error code. */
|
||||||
gpg_error_t gnupg_spawn_process (const char *pgmname, const char *argv[],
|
gpg_error_t gnupg_spawn_process (const char *pgmname, const char *argv[],
|
||||||
FILE *infile, FILE *outfile,
|
FILE *infile, estream_t outfile,
|
||||||
void (*preexec)(void), unsigned int flags,
|
void (*preexec)(void), unsigned int flags,
|
||||||
FILE **statusfile, pid_t *pid);
|
FILE **statusfile, pid_t *pid);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user