2008-10-30  Marcus Brinkmann  <marcus@g10code.de>

	* assuan-pipe-connect.c: Fix prototype for _gpgme_io_spawn.  Cast
	second argument in its invocation to silence gcc warning.

gpgme/
2008-10-30  Marcus Brinkmann  <marcus@g10code.de>

	* wait-private.c (_gpgme_wait_on_condition): Remove unused
	variable IDX.
	* wait-global.c: Include ops.h to silence gcc warning.
	(_gpgme_wait_global_event_cb): Pass error value directly.
	* wait-user.c: Include ops.h to silence gcc warning.

	* posix-io.c (_gpgme_io_spawn): Make ARGV argument const to
	silence gcc warning.  Cast argument to execv to silence warning.
	* w32-io.c (_gpgme_io_spawn): Likewise.
	* priv-io.h (_gpgme_io_spawn): Likewise for prototype.
This commit is contained in:
Marcus Brinkmann 2008-10-30 15:08:44 +00:00
parent 9c7489e8d1
commit 6405d54bad
9 changed files with 27 additions and 9 deletions

View File

@ -1,3 +1,8 @@
2008-10-30 Marcus Brinkmann <marcus@g10code.de>
* assuan-pipe-connect.c: Fix prototype for _gpgme_io_spawn. Cast
second argument in its invocation to silence gcc warning.
2008-06-25 Marcus Brinkmann <marcus@g10code.de> 2008-06-25 Marcus Brinkmann <marcus@g10code.de>
* assuan-pipe-connect.c (struct spawn_fd_item_s): Add new members. * assuan-pipe-connect.c (struct spawn_fd_item_s): Add new members.

View File

@ -52,7 +52,7 @@ struct spawn_fd_item_s
int _gpgme_io_pipe (int filedes[2], int inherit_idx); int _gpgme_io_pipe (int filedes[2], int inherit_idx);
int _gpgme_io_spawn (const char *path, char **argv, int _gpgme_io_spawn (const char *path, char *const argv[],
struct spawn_fd_item_s *fd_list, pid_t *r_pid); struct spawn_fd_item_s *fd_list, pid_t *r_pid);
#endif #endif
@ -665,7 +665,7 @@ pipe_connect_gpgme (assuan_context_t *ctx,
child_fds[nr].dup_to = -1; child_fds[nr].dup_to = -1;
/* Start the process. */ /* Start the process. */
res = _gpgme_io_spawn (name, argv, child_fds, NULL); res = _gpgme_io_spawn (name, (char *const *) argv, child_fds, NULL);
if (res == -1) if (res == -1)
{ {
_assuan_log_printf ("CreateProcess failed: %s\n", strerror (errno)); _assuan_log_printf ("CreateProcess failed: %s\n", strerror (errno));

View File

@ -1,3 +1,16 @@
2008-10-30 Marcus Brinkmann <marcus@g10code.de>
* wait-private.c (_gpgme_wait_on_condition): Remove unused
variable IDX.
* wait-global.c: Include ops.h to silence gcc warning.
(_gpgme_wait_global_event_cb): Pass error value directly.
* wait-user.c: Include ops.h to silence gcc warning.
* posix-io.c (_gpgme_io_spawn): Make ARGV argument const to
silence gcc warning. Cast argument to execv to silence warning.
* w32-io.c (_gpgme_io_spawn): Likewise.
* priv-io.h (_gpgme_io_spawn): Likewise for prototype.
2008-10-24 Werner Koch <wk@g10code.com> 2008-10-24 Werner Koch <wk@g10code.com>
* rungpg.c (gpg_keylist_preprocess): Escape backslashes too. * rungpg.c (gpg_keylist_preprocess): Escape backslashes too.

View File

@ -304,7 +304,7 @@ _gpgme_io_waitpid (int pid, int hang, int *r_status, int *r_signal)
/* Returns 0 on success, -1 on error. */ /* Returns 0 on success, -1 on error. */
int int
_gpgme_io_spawn (const char *path, char **argv, _gpgme_io_spawn (const char *path, char *const argv[],
struct spawn_fd_item_s *fd_list, pid_t *r_pid) struct spawn_fd_item_s *fd_list, pid_t *r_pid)
{ {
pid_t pid; pid_t pid;
@ -427,7 +427,7 @@ _gpgme_io_spawn (const char *path, char **argv,
close (fd); close (fd);
} }
execv (path, argv); execv (path, (char *const *) argv);
/* Hmm: in that case we could write a special status code to the /* Hmm: in that case we could write a special status code to the
status-pipe. */ status-pipe. */
#if 0 #if 0

View File

@ -63,7 +63,7 @@ int _gpgme_io_set_nonblocking (int fd);
close all fds except for those in FD_LIST in the child, then close all fds except for those in FD_LIST in the child, then
optionally dup() the child fds. Finally, all fds in the list are optionally dup() the child fds. Finally, all fds in the list are
closed in the parent. */ closed in the parent. */
int _gpgme_io_spawn (const char *path, char **argv, int _gpgme_io_spawn (const char *path, char *const argv[],
struct spawn_fd_item_s *fd_list, pid_t *r_pid); struct spawn_fd_item_s *fd_list, pid_t *r_pid);
int _gpgme_io_select (struct io_select_fd_s *fds, size_t nfds, int nonblock); int _gpgme_io_select (struct io_select_fd_s *fds, size_t nfds, int nonblock);

View File

@ -1009,7 +1009,7 @@ build_commandline (char **argv)
int int
_gpgme_io_spawn (const char *path, char **argv, _gpgme_io_spawn (const char *path, char *const argv[],
struct spawn_fd_item_s *fd_list, pid_t *r_pid) struct spawn_fd_item_s *fd_list, pid_t *r_pid)
{ {
SECURITY_ATTRIBUTES sec_attr; SECURITY_ATTRIBUTES sec_attr;

View File

@ -33,6 +33,7 @@
#include "context.h" #include "context.h"
#include "wait.h" #include "wait.h"
#include "priv-io.h" #include "priv-io.h"
#include "ops.h"
/* The global event loop is used for all asynchronous operations /* The global event loop is used for all asynchronous operations
(except key listing) for which no user I/O callbacks are specified. (except key listing) for which no user I/O callbacks are specified.
@ -202,7 +203,7 @@ _gpgme_wait_global_event_cb (void *data, gpgme_event_io_t type,
if (err) if (err)
/* An error occured. Close all fds in this context, and /* An error occured. Close all fds in this context, and
send the error in a done event. */ send the error in a done event. */
_gpgme_cancel_with_err (ctx, &err); _gpgme_cancel_with_err (ctx, err);
} }
break; break;

View File

@ -86,8 +86,6 @@ _gpgme_wait_on_condition (gpgme_ctx_t ctx, volatile int *cond)
{ {
/* An error occured. Close all fds in this context, and /* An error occured. Close all fds in this context, and
signal it. */ signal it. */
unsigned int idx;
err = gpg_error_from_errno (errno); err = gpg_error_from_errno (errno);
_gpgme_cancel_with_err (ctx, err); _gpgme_cancel_with_err (ctx, err);

View File

@ -28,6 +28,7 @@
#include "context.h" #include "context.h"
#include "priv-io.h" #include "priv-io.h"
#include "wait.h" #include "wait.h"
#include "ops.h"
/* The user event loops are used for all asynchronous operations for /* The user event loops are used for all asynchronous operations for