2007-09-27 Marcus Brinkmann <marcus@g10code.de>
* assuan-pipe-connect.c (pipe_connect_gpgme): Do not close process handle here. Use this function also on Unix systems. gpgme/ 2007-09-27 Marcus Brinkmann <marcus@g10code.de> * w32-glib-io.c (_gpgme_io_spawn), w32-qt-io.cpp (_gpgme_io_spawn), w32-io.c (_gpgme_io_spawn): Close the process handle, return 0. tests/ 2007-09-27 Marcus Brinkmann <marcus@g10code.de> * t-engine-info.c (check_engine_info): Fix debug output. * gpg/Makefile.am (tests_unix): New variable. (TESTS): Use it. * gpg/t-support.h (passphrase_cb) [HAVE_W32_SYSTEM]: Use WriteFile instead of write. * gpg/t-wait.c [HAVE_W32_SYSTEM]: Define sleep as _sleep.
This commit is contained in:
parent
30df62122d
commit
37ac53e74c
@ -1,5 +1,8 @@
|
|||||||
2007-09-27 Marcus Brinkmann <marcus@g10code.de>
|
2007-09-27 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* assuan-pipe-connect.c (pipe_connect_gpgme): Do not close process
|
||||||
|
handle here. Use this function also on Unix systems.
|
||||||
|
|
||||||
* assuan-pipe-connect.c (pipe_connect_gpgme): Fix last change.
|
* assuan-pipe-connect.c (pipe_connect_gpgme): Fix last change.
|
||||||
|
|
||||||
* assuan-pipe-connect.c (pipe_connect_gpgme): New function, use it
|
* assuan-pipe-connect.c (pipe_connect_gpgme): New function, use it
|
||||||
|
@ -181,6 +181,8 @@ initial_handshake (assuan_context_t *ctx)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef _ASSUAN_IN_GPGME_BUILD_ASSUAN
|
||||||
|
|
||||||
#ifndef HAVE_W32_SYSTEM
|
#ifndef HAVE_W32_SYSTEM
|
||||||
#define pipe_connect pipe_connect_unix
|
#define pipe_connect pipe_connect_unix
|
||||||
/* Unix version of the pipe connection code. We use an extra macro to
|
/* Unix version of the pipe connection code. We use an extra macro to
|
||||||
@ -365,6 +367,7 @@ pipe_connect_unix (assuan_context_t *ctx,
|
|||||||
return initial_handshake (ctx);
|
return initial_handshake (ctx);
|
||||||
}
|
}
|
||||||
#endif /*!HAVE_W32_SYSTEM*/
|
#endif /*!HAVE_W32_SYSTEM*/
|
||||||
|
#endif /* _ASSUAN_IN_GPGME_BUILD_ASSUAN */
|
||||||
|
|
||||||
|
|
||||||
#ifndef HAVE_W32_SYSTEM
|
#ifndef HAVE_W32_SYSTEM
|
||||||
@ -550,6 +553,7 @@ socketpair_connect (assuan_context_t *ctx,
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef _ASSUAN_IN_GPGME_BUILD_ASSUAN
|
#ifdef _ASSUAN_IN_GPGME_BUILD_ASSUAN
|
||||||
|
|
||||||
#define pipe_connect pipe_connect_gpgme
|
#define pipe_connect pipe_connect_gpgme
|
||||||
@ -570,7 +574,7 @@ pipe_connect_gpgme (assuan_context_t *ctx,
|
|||||||
void *atforkvalue)
|
void *atforkvalue)
|
||||||
{
|
{
|
||||||
assuan_error_t err;
|
assuan_error_t err;
|
||||||
int pid;
|
int res;
|
||||||
int rp[2];
|
int rp[2];
|
||||||
int wp[2];
|
int wp[2];
|
||||||
char mypidstr[50];
|
char mypidstr[50];
|
||||||
@ -631,8 +635,8 @@ pipe_connect_gpgme (assuan_context_t *ctx,
|
|||||||
child_fds[2].fd = -1;
|
child_fds[2].fd = -1;
|
||||||
|
|
||||||
/* Start the process. */
|
/* Start the process. */
|
||||||
pid = _gpgme_io_spawn (name, argv, child_fds, child_fds);
|
res = _gpgme_io_spawn (name, argv, child_fds, child_fds);
|
||||||
if (pid == -1)
|
if (res == -1)
|
||||||
{
|
{
|
||||||
_assuan_log_printf ("CreateProcess failed: %s\n", strerror (errno));
|
_assuan_log_printf ("CreateProcess failed: %s\n", strerror (errno));
|
||||||
_gpgme_io_close (rp[0]);
|
_gpgme_io_close (rp[0]);
|
||||||
@ -642,12 +646,8 @@ pipe_connect_gpgme (assuan_context_t *ctx,
|
|||||||
return _assuan_error (ASSUAN_General_Error);
|
return _assuan_error (ASSUAN_General_Error);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ERR contains the PID. */
|
|
||||||
(*ctx)->pid = 0; /* We don't use the PID. */
|
(*ctx)->pid = 0; /* We don't use the PID. */
|
||||||
|
|
||||||
/* FIXME: Should be done by GPGME. */
|
|
||||||
CloseHandle ((HANDLE) pid); /* We don't need to wait for the process. */
|
|
||||||
|
|
||||||
return initial_handshake (ctx);
|
return initial_handshake (ctx);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,9 @@
|
|||||||
2007-09-27 Marcus Brinkmann <marcus@g10code.de>
|
2007-09-27 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* w32-glib-io.c (_gpgme_io_spawn),
|
||||||
|
w32-qt-io.cpp (_gpgme_io_spawn), w32-io.c (_gpgme_io_spawn): Close
|
||||||
|
the process handle, return 0.
|
||||||
|
|
||||||
* gpgme.h (gpgme_protocol_t): Add GPGME_PROTOCOL_UNKNOWN.
|
* gpgme.h (gpgme_protocol_t): Add GPGME_PROTOCOL_UNKNOWN.
|
||||||
* gpgme.c (gpgme_get_protocol_name): Implement support for
|
* gpgme.c (gpgme_get_protocol_name): Implement support for
|
||||||
GPGME_PROTOCOL_UNKNOWN.
|
GPGME_PROTOCOL_UNKNOWN.
|
||||||
|
@ -73,7 +73,7 @@ extern "C" {
|
|||||||
AM_PATH_GPGME macro) check that this header matches the installed
|
AM_PATH_GPGME macro) check that this header matches the installed
|
||||||
library. Warning: Do not edit the next line. configure will do
|
library. Warning: Do not edit the next line. configure will do
|
||||||
that for you! */
|
that for you! */
|
||||||
#define GPGME_VERSION "1.1.6-svn1258"
|
#define GPGME_VERSION "1.1.6-svn1264"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -576,7 +576,11 @@ _gpgme_io_spawn (const char *path, char **argv,
|
|||||||
(int) GetLastError ());
|
(int) GetLastError ());
|
||||||
|
|
||||||
TRACE_SUC1 ("process=%p", pi.hProcess);
|
TRACE_SUC1 ("process=%p", pi.hProcess);
|
||||||
return 0;
|
|
||||||
|
/* We don't need to wait for the process. */
|
||||||
|
CloseHandle (pi.hProcess);
|
||||||
|
|
||||||
|
return TRACE_SYSRES (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1156,7 +1156,11 @@ _gpgme_io_spawn (const char *path, char **argv,
|
|||||||
(int) GetLastError ());
|
(int) GetLastError ());
|
||||||
|
|
||||||
TRACE_SUC1 ("process=%p", pi.hProcess);
|
TRACE_SUC1 ("process=%p", pi.hProcess);
|
||||||
return handle_to_pid (pi.hProcess);
|
|
||||||
|
/* We don't need to wait for the process. */
|
||||||
|
CloseHandle (pi.hProcess);
|
||||||
|
|
||||||
|
return TRACE_SYSRES (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -525,7 +525,11 @@ _gpgme_io_spawn (const char *path, char **argv,
|
|||||||
(int) GetLastError ());
|
(int) GetLastError ());
|
||||||
|
|
||||||
TRACE_SUC1 ("process=%p", pi.hProcess);
|
TRACE_SUC1 ("process=%p", pi.hProcess);
|
||||||
return 0;
|
|
||||||
|
/* We don't need to wait for the process. */
|
||||||
|
CloseHandle (pi.hProcess);
|
||||||
|
|
||||||
|
return TRACE_SYSRES (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,3 +1,11 @@
|
|||||||
|
2007-09-27 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* t-engine-info.c (check_engine_info): Fix debug output.
|
||||||
|
* gpg/Makefile.am (tests_unix): New variable.
|
||||||
|
(TESTS): Use it.
|
||||||
|
* gpg/t-support.h (passphrase_cb) [HAVE_W32_SYSTEM]: Use WriteFile instead of write.
|
||||||
|
* gpg/t-wait.c [HAVE_W32_SYSTEM]: Define sleep as _sleep.
|
||||||
|
|
||||||
2007-09-14 Marcus Brinkmann <marcus@g10code.de>
|
2007-09-14 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
* gpgsm/t-verify.c (main): Release TEXT and SIG.
|
* gpgsm/t-verify.c (main): Release TEXT and SIG.
|
||||||
|
@ -25,11 +25,17 @@ TESTS_ENVIRONMENT = GNUPGHOME=. GPG_AGENT_INFO=
|
|||||||
|
|
||||||
# The keylist tests must come after the import and the edit test.
|
# The keylist tests must come after the import and the edit test.
|
||||||
noinst_HEADERS = t-support.h
|
noinst_HEADERS = t-support.h
|
||||||
|
|
||||||
|
if HAVE_W32_SYSTEM
|
||||||
|
tests_unix =
|
||||||
|
else
|
||||||
|
tests_unix = t-eventloop t-thread1
|
||||||
|
endif
|
||||||
|
|
||||||
TESTS = t-encrypt t-encrypt-sym t-encrypt-sign t-sign t-signers \
|
TESTS = t-encrypt t-encrypt-sym t-encrypt-sign t-sign t-signers \
|
||||||
t-decrypt t-verify t-decrypt-verify t-sig-notation \
|
t-decrypt t-verify t-decrypt-verify t-sig-notation t-export \
|
||||||
t-export t-import t-trustlist t-eventloop t-edit \
|
t-import t-trustlist t-edit t-keylist t-keylist-sig t-wait \
|
||||||
t-keylist t-keylist-sig t-thread1 t-wait t-encrypt-large \
|
t-encrypt-large t-file-name $(tests_unix)
|
||||||
t-file-name
|
|
||||||
|
|
||||||
CLEANFILES = secring.gpg pubring.gpg trustdb.gpg
|
CLEANFILES = secring.gpg pubring.gpg trustdb.gpg
|
||||||
DISTCLEANFILES = pubring.gpg~ random_seed gpg.conf
|
DISTCLEANFILES = pubring.gpg~ random_seed gpg.conf
|
||||||
|
@ -24,6 +24,10 @@
|
|||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <locale.h>
|
#include <locale.h>
|
||||||
|
|
||||||
|
#ifdef HAVE_W32_SYSTEM
|
||||||
|
#include <windows.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <gpgme.h>
|
#include <gpgme.h>
|
||||||
|
|
||||||
#ifndef DIM
|
#ifndef DIM
|
||||||
@ -65,7 +69,13 @@ gpgme_error_t
|
|||||||
passphrase_cb (void *opaque, const char *uid_hint, const char *passphrase_info,
|
passphrase_cb (void *opaque, const char *uid_hint, const char *passphrase_info,
|
||||||
int last_was_bad, int fd)
|
int last_was_bad, int fd)
|
||||||
{
|
{
|
||||||
|
#ifdef HAVE_W32_SYSTEM
|
||||||
|
DWORD written;
|
||||||
|
WriteFile ((HANDLE) fd, "abc\n", 4, &written, 0);
|
||||||
|
#else
|
||||||
write (fd, "abc\n", 4);
|
write (fd, "abc\n", 4);
|
||||||
|
#endif
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* t-wait.c - Regression test.
|
/* t-wait.c - Regression test.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
@ -29,6 +29,10 @@
|
|||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
|
#ifdef HAVE_W32_SYSTEM
|
||||||
|
#define sleep _sleep
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <gpgme.h>
|
#include <gpgme.h>
|
||||||
|
|
||||||
#include "t-support.h"
|
#include "t-support.h"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/* t-engine-info.c - Regression test for gpgme_get_engine_info.
|
/* t-engine-info.c - Regression test for gpgme_get_engine_info.
|
||||||
Copyright (C) 2003, 2004 g10 Code GmbH
|
Copyright (C) 2003, 2004, 2007 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
@ -54,13 +54,13 @@ check_engine_info (gpgme_engine_info_t info, gpgme_protocol_t protocol,
|
|||||||
}
|
}
|
||||||
if (strcmp (info->file_name, file_name))
|
if (strcmp (info->file_name, file_name))
|
||||||
{
|
{
|
||||||
fprintf (stderr, "Unexpected file name to executable %s (expected %s instead)",
|
fprintf (stderr, "Unexpected file name to executable %s (expected %s instead)\n",
|
||||||
info->file_name, file_name);
|
info->file_name, file_name);
|
||||||
exit (1);
|
exit (1);
|
||||||
}
|
}
|
||||||
if (strcmp (info->req_version, req_version))
|
if (strcmp (info->req_version, req_version))
|
||||||
{
|
{
|
||||||
fprintf (stderr, "Unexpected required version %s (expected %s instead)",
|
fprintf (stderr, "Unexpected required version %s (expected %s instead)\n",
|
||||||
info->req_version, req_version);
|
info->req_version, req_version);
|
||||||
exit (1);
|
exit (1);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user