aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--camel/ChangeLog10
-rw-r--r--camel/camel-filter-driver.c8
-rw-r--r--camel/camel-filter-search.c8
-rw-r--r--camel/camel-gpg-context.c15
-rw-r--r--camel/camel-process.c6
5 files changed, 21 insertions, 26 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index 91bc565225..4300a6a310 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,5 +1,15 @@
2003-12-01 Jeffrey Stedfast <fejj@ximian.com>
+ * camel-process.c (camel_process_fork): Start at fd = 3.
+
+ * camel-gpg-context.c (gpg_ctx_op_start): Same.
+
+ * camel-filter-driver.c (pipe_to_system): Same.
+
+ * camel-filter-search.c (run_command): Start at fd = 3.
+
+2003-12-01 Jeffrey Stedfast <fejj@ximian.com>
+
* camel-stream-process.c (do_exec_command): Same.
* camel-process.c (camel_process_fork): Same.
diff --git a/camel/camel-filter-driver.c b/camel/camel-filter-driver.c
index 789ec90cba..75836dea67 100644
--- a/camel/camel-filter-driver.c
+++ b/camel/camel-filter-driver.c
@@ -692,12 +692,8 @@ pipe_to_system (struct _ESExp *f, int argc, struct _ESExpResult **argv, CamelFil
setsid ();
maxfd = sysconf (_SC_OPEN_MAX);
- if (maxfd > 0) {
- for (fd = 0; fd < maxfd; fd++) {
- if (fd != STDIN_FILENO && fd != STDOUT_FILENO && fd != STDERR_FILENO)
- fcntl (fd, F_SETFD, FD_CLOEXEC);
- }
- }
+ for (fd = 3; fd < maxfd; fd++)
+ fcntl (fd, F_SETFD, FD_CLOEXEC);
args = g_ptr_array_new ();
for (i = 0; i < argc; i++)
diff --git a/camel/camel-filter-search.c b/camel/camel-filter-search.c
index c90bda41a3..42f04b0f22 100644
--- a/camel/camel-filter-search.c
+++ b/camel/camel-filter-search.c
@@ -530,12 +530,8 @@ run_command (struct _ESExp *f, int argc, struct _ESExpResult **argv, FilterMessa
setsid ();
maxfd = sysconf (_SC_OPEN_MAX);
- if (maxfd > 0) {
- for (fd = 0; fd < maxfd; fd++) {
- if (fd != STDIN_FILENO && fd != STDOUT_FILENO && fd != STDERR_FILENO)
- fcntl (fd, F_SETFD, FD_CLOEXEC);
- }
- }
+ for (fd = 3; fd < maxfd; fd++)
+ fcntl (fd, F_SETFD, FD_CLOEXEC);
args = g_ptr_array_new ();
for (i = 0; i < argc; i++)
diff --git a/camel/camel-gpg-context.c b/camel/camel-gpg-context.c
index ee9bc4f5d3..4b7f39dd7e 100644
--- a/camel/camel-gpg-context.c
+++ b/camel/camel-gpg-context.c
@@ -581,16 +581,11 @@ gpg_ctx_op_start (struct _GpgCtx *gpg)
setsid ();
maxfd = sysconf (_SC_OPEN_MAX);
- if (maxfd > 0) {
- /* Loop over all fds. */
- for (i = 0; i < maxfd; i++) {
- if ((i != STDIN_FILENO) &&
- (i != STDOUT_FILENO) &&
- (i != STDERR_FILENO) &&
- (i != fds[7]) && /* status fd */
- (i != fds[8])) /* passwd fd */
- fcntl (i, F_SETFD, FD_CLOEXEC);
- }
+ /* Loop over all fds. */
+ for (i = 3; i < maxfd; i++) {
+ /* don't close the status-fd or passwd-fd */
+ if (i != fds[7] && i != fds[8])
+ fcntl (i, F_SETFD, FD_CLOEXEC);
}
/* run gpg */
diff --git a/camel/camel-process.c b/camel/camel-process.c
index 9e2d9657dd..04de281294 100644
--- a/camel/camel-process.c
+++ b/camel/camel-process.c
@@ -79,10 +79,8 @@ camel_process_fork (const char *path, char **argv, int *infd, int *outfd, int *e
setsid ();
if ((maxfd = sysconf (_SC_OPEN_MAX)) > 0) {
- for (i = 0; i < maxfd; i++) {
- if (i != STDIN_FILENO && i != STDOUT_FILENO && i != STDERR_FILENO)
- fcntl (i, F_SETFD, FD_CLOEXEC);
- }
+ for (i = 3; i < maxfd; i++)
+ fcntl (i, F_SETFD, FD_CLOEXEC);
}
execv (path, argv);