mirror of
git://git.gnupg.org/gnupg.git
synced 2024-12-22 10:19:57 +01:00
VArious hacks to make it at least build under W32.
* stringhelp.c (w32_strerror) [W32]: New. * w32-pth.c, w32-pth.h: Added real code written by Timo Schulz. Not finished, though. * gpgconf-comp.c <ignore-ocsp-service-url>: Fixed typo.
This commit is contained in:
parent
907c91960e
commit
801ab88522
@ -34,7 +34,9 @@
|
|||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
#ifndef HAVE_W32_SYSTEM
|
||||||
#include <sys/wait.h>
|
#include <sys/wait.h>
|
||||||
|
#endif
|
||||||
#ifdef USE_GNU_PTH
|
#ifdef USE_GNU_PTH
|
||||||
# include <pth.h>
|
# include <pth.h>
|
||||||
#endif
|
#endif
|
||||||
@ -213,6 +215,7 @@ start_scd (ctrl_t ctrl)
|
|||||||
|
|
||||||
/* We better do a sanity check now to see whether it has
|
/* We better do a sanity check now to see whether it has
|
||||||
accidently died. */
|
accidently died. */
|
||||||
|
#ifndef HAVE_W32_SYSTEM /* fixme */
|
||||||
pid = assuan_get_pid (scd_ctx);
|
pid = assuan_get_pid (scd_ctx);
|
||||||
if (pid != (pid_t)(-1) && pid
|
if (pid != (pid_t)(-1) && pid
|
||||||
&& ((rc=waitpid (pid, NULL, WNOHANG))==-1 || (rc == pid)) )
|
&& ((rc=waitpid (pid, NULL, WNOHANG))==-1 || (rc == pid)) )
|
||||||
@ -221,6 +224,7 @@ start_scd (ctrl_t ctrl)
|
|||||||
scd_ctx = NULL;
|
scd_ctx = NULL;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
#endif
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,10 +279,12 @@ start_scd (ctrl_t ctrl)
|
|||||||
simply as a pipe server. */
|
simply as a pipe server. */
|
||||||
if (ctrl->connection_fd != -1)
|
if (ctrl->connection_fd != -1)
|
||||||
{
|
{
|
||||||
|
#ifndef HAVE_W32_SYSTEM
|
||||||
char buf[100];
|
char buf[100];
|
||||||
|
|
||||||
sprintf (buf, "OPTION event-signal=%d", SIGUSR2);
|
sprintf (buf, "OPTION event-signal=%d", SIGUSR2);
|
||||||
assuan_transact (scd_ctx, buf, NULL, NULL, NULL, NULL, NULL, NULL);
|
assuan_transact (scd_ctx, buf, NULL, NULL, NULL, NULL, NULL, NULL);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -76,7 +76,11 @@ agent_write_private_key (const unsigned char *grip,
|
|||||||
The mode parameter to open is what fopen uses. It will be
|
The mode parameter to open is what fopen uses. It will be
|
||||||
combined with the process' umask automatically. */
|
combined with the process' umask automatically. */
|
||||||
fd = open (fname, O_CREAT | O_EXCL | O_RDWR,
|
fd = open (fname, O_CREAT | O_EXCL | O_RDWR,
|
||||||
S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH);
|
S_IRUSR | S_IWUSR
|
||||||
|
#ifndef HAVE_W32_SYSTEM
|
||||||
|
| S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH
|
||||||
|
#endif
|
||||||
|
);
|
||||||
if (fd < 0)
|
if (fd < 0)
|
||||||
fp = 0;
|
fp = 0;
|
||||||
else
|
else
|
||||||
|
@ -29,9 +29,11 @@
|
|||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <sys/socket.h>
|
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
|
#ifndef HAVE_W32_SYSTEM
|
||||||
|
#include <sys/socket.h>
|
||||||
#include <sys/un.h>
|
#include <sys/un.h>
|
||||||
|
#endif
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
#ifdef USE_GNU_PTH
|
#ifdef USE_GNU_PTH
|
||||||
@ -40,11 +42,13 @@
|
|||||||
|
|
||||||
#define JNLIB_NEED_LOG_LOGV
|
#define JNLIB_NEED_LOG_LOGV
|
||||||
#include "agent.h"
|
#include "agent.h"
|
||||||
#include <assuan.h> /* malloc hooks */
|
#include <assuan.h> /* Malloc hooks */
|
||||||
|
|
||||||
#include "i18n.h"
|
#include "i18n.h"
|
||||||
#include "sysutils.h"
|
#include "sysutils.h"
|
||||||
|
#ifdef HAVE_W32_SYSTEM
|
||||||
|
#include "../jnlib/w32-afunix.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
enum cmd_and_opt_values
|
enum cmd_and_opt_values
|
||||||
{ aNull = 0,
|
{ aNull = 0,
|
||||||
@ -175,7 +179,9 @@ static void create_directories (void);
|
|||||||
static void handle_connections (int listen_fd);
|
static void handle_connections (int listen_fd);
|
||||||
|
|
||||||
/* Pth wrapper function definitions. */
|
/* Pth wrapper function definitions. */
|
||||||
|
#ifndef HAVE_W32_SYSTEM
|
||||||
GCRY_THREAD_OPTION_PTH_IMPL;
|
GCRY_THREAD_OPTION_PTH_IMPL;
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /*USE_GNU_PTH*/
|
#endif /*USE_GNU_PTH*/
|
||||||
static void check_for_running_agent (void);
|
static void check_for_running_agent (void);
|
||||||
@ -432,14 +438,14 @@ main (int argc, char **argv )
|
|||||||
|
|
||||||
/* Libgcrypt requires us to register the threading model first.
|
/* Libgcrypt requires us to register the threading model first.
|
||||||
Note that this will also do the pth_init. */
|
Note that this will also do the pth_init. */
|
||||||
#ifdef USE_GNU_PTH
|
#if defined(USE_GNU_PTH) && !defined(HAVE_W32_SYSTEM)
|
||||||
err = gcry_control (GCRYCTL_SET_THREAD_CBS, &gcry_threads_pth);
|
err = gcry_control (GCRYCTL_SET_THREAD_CBS, &gcry_threads_pth);
|
||||||
if (err)
|
if (err)
|
||||||
{
|
{
|
||||||
log_fatal ("can't register GNU Pth with Libgcrypt: %s\n",
|
log_fatal ("can't register GNU Pth with Libgcrypt: %s\n",
|
||||||
gpg_strerror (err));
|
gpg_strerror (err));
|
||||||
}
|
}
|
||||||
#endif /*USE_GNU_PTH*/
|
#endif /*USE_GNU_PTH && !HAVE_W32_SYSTEM*/
|
||||||
|
|
||||||
/* Check that the libraries are suitable. Do it here because
|
/* Check that the libraries are suitable. Do it here because
|
||||||
the option parsing may need services of the library. */
|
the option parsing may need services of the library. */
|
||||||
@ -707,10 +713,12 @@ main (int argc, char **argv )
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Make sure that we have a default ttyname. */
|
/* Make sure that we have a default ttyname. */
|
||||||
|
#ifndef HAVE_W32_SYSTEM
|
||||||
if (!default_ttyname && ttyname (1))
|
if (!default_ttyname && ttyname (1))
|
||||||
default_ttyname = xstrdup (ttyname (1));
|
default_ttyname = xstrdup (ttyname (1));
|
||||||
if (!default_ttytype && getenv ("TERM"))
|
if (!default_ttytype && getenv ("TERM"))
|
||||||
default_ttytype = xstrdup (getenv ("TERM"));
|
default_ttytype = xstrdup (getenv ("TERM"));
|
||||||
|
#endif
|
||||||
|
|
||||||
if (pipe_server)
|
if (pipe_server)
|
||||||
{ /* this is the simple pipe based server */
|
{ /* this is the simple pipe based server */
|
||||||
@ -720,6 +728,7 @@ main (int argc, char **argv )
|
|||||||
; /* NOTREACHED */
|
; /* NOTREACHED */
|
||||||
else
|
else
|
||||||
{ /* Regular server mode */
|
{ /* Regular server mode */
|
||||||
|
#ifndef HAVE_W32_SYSTEM
|
||||||
int fd;
|
int fd;
|
||||||
pid_t pid;
|
pid_t pid;
|
||||||
int len;
|
int len;
|
||||||
@ -888,18 +897,21 @@ main (int argc, char **argv )
|
|||||||
#ifdef USE_GNU_PTH
|
#ifdef USE_GNU_PTH
|
||||||
if (!disable_pth)
|
if (!disable_pth)
|
||||||
{
|
{
|
||||||
|
#ifndef HAVE_W32_SYSTEM /* FIXME */
|
||||||
struct sigaction sa;
|
struct sigaction sa;
|
||||||
|
|
||||||
sa.sa_handler = SIG_IGN;
|
sa.sa_handler = SIG_IGN;
|
||||||
sigemptyset (&sa.sa_mask);
|
sigemptyset (&sa.sa_mask);
|
||||||
sa.sa_flags = 0;
|
sa.sa_flags = 0;
|
||||||
sigaction (SIGPIPE, &sa, NULL);
|
sigaction (SIGPIPE, &sa, NULL);
|
||||||
|
#endif
|
||||||
handle_connections (fd);
|
handle_connections (fd);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
#endif /*!USE_GNU_PTH*/
|
#endif /*!USE_GNU_PTH*/
|
||||||
/* setup signals */
|
/* setup signals */
|
||||||
{
|
{
|
||||||
|
#ifndef HAVE_W32_SYSTEM /* FIXME */
|
||||||
struct sigaction oact, nact;
|
struct sigaction oact, nact;
|
||||||
|
|
||||||
nact.sa_handler = cleanup_sh;
|
nact.sa_handler = cleanup_sh;
|
||||||
@ -915,10 +927,11 @@ main (int argc, char **argv )
|
|||||||
nact.sa_handler = SIG_IGN;
|
nact.sa_handler = SIG_IGN;
|
||||||
sigaction (SIGPIPE, &nact, NULL);
|
sigaction (SIGPIPE, &nact, NULL);
|
||||||
sigaction (SIGINT, &nact, NULL);
|
sigaction (SIGINT, &nact, NULL);
|
||||||
|
#endif
|
||||||
start_command_handler (fd, -1);
|
start_command_handler (fd, -1);
|
||||||
}
|
}
|
||||||
close (fd);
|
close (fd);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
@ -1029,9 +1042,15 @@ create_private_keys_directory (const char *home)
|
|||||||
fname = make_filename (home, GNUPG_PRIVATE_KEYS_DIR, NULL);
|
fname = make_filename (home, GNUPG_PRIVATE_KEYS_DIR, NULL);
|
||||||
if (stat (fname, &statbuf) && errno == ENOENT)
|
if (stat (fname, &statbuf) && errno == ENOENT)
|
||||||
{
|
{
|
||||||
|
#ifdef HAVE_W32_SYSTEM /*FIXME: Setup proper permissions. */
|
||||||
|
if (!CreateDirectory (fname, NULL))
|
||||||
|
log_error (_("can't create directory `%s': %s\n"),
|
||||||
|
fname, w32_strerror (-1) );
|
||||||
|
#else
|
||||||
if (mkdir (fname, S_IRUSR|S_IWUSR|S_IXUSR ))
|
if (mkdir (fname, S_IRUSR|S_IWUSR|S_IXUSR ))
|
||||||
log_error (_("can't create directory `%s': %s\n"),
|
log_error (_("can't create directory `%s': %s\n"),
|
||||||
fname, strerror(errno) );
|
fname, strerror (errno) );
|
||||||
|
#endif
|
||||||
else if (!opt.quiet)
|
else if (!opt.quiet)
|
||||||
log_info (_("directory `%s' created\n"), fname);
|
log_info (_("directory `%s' created\n"), fname);
|
||||||
}
|
}
|
||||||
@ -1063,9 +1082,15 @@ create_directories (void)
|
|||||||
|| (*defhome != '~' && !strcmp (home, defhome) )
|
|| (*defhome != '~' && !strcmp (home, defhome) )
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
#ifdef HAVE_W32_SYSTEM
|
||||||
|
if (!CreateDirectory (home, NULL))
|
||||||
|
log_error (_("can't create directory `%s': %s\n"),
|
||||||
|
home, w32_strerror (-1) );
|
||||||
|
#else
|
||||||
if (mkdir (home, S_IRUSR|S_IWUSR|S_IXUSR ))
|
if (mkdir (home, S_IRUSR|S_IWUSR|S_IXUSR ))
|
||||||
log_error (_("can't create directory `%s': %s\n"),
|
log_error (_("can't create directory `%s': %s\n"),
|
||||||
home, strerror(errno) );
|
home, strerror (errno) );
|
||||||
|
#endif
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (!opt.quiet)
|
if (!opt.quiet)
|
||||||
@ -1096,6 +1121,7 @@ handle_signal (int signo)
|
|||||||
{
|
{
|
||||||
switch (signo)
|
switch (signo)
|
||||||
{
|
{
|
||||||
|
#ifndef HAVE_W32_SYSTEM
|
||||||
case SIGHUP:
|
case SIGHUP:
|
||||||
log_info ("SIGHUP received - "
|
log_info ("SIGHUP received - "
|
||||||
"re-reading configuration and flushing cache\n");
|
"re-reading configuration and flushing cache\n");
|
||||||
@ -1134,7 +1160,7 @@ handle_signal (int signo)
|
|||||||
cleanup ();
|
cleanup ();
|
||||||
agent_exit (0);
|
agent_exit (0);
|
||||||
break;
|
break;
|
||||||
|
#endif
|
||||||
default:
|
default:
|
||||||
log_info ("signal %d received - no action defined\n", signo);
|
log_info ("signal %d received - no action defined\n", signo);
|
||||||
}
|
}
|
||||||
@ -1178,6 +1204,7 @@ handle_connections (int listen_fd)
|
|||||||
pth_attr_set (tattr, PTH_ATTR_STACK_SIZE, 256*1024);
|
pth_attr_set (tattr, PTH_ATTR_STACK_SIZE, 256*1024);
|
||||||
pth_attr_set (tattr, PTH_ATTR_NAME, "gpg-agent");
|
pth_attr_set (tattr, PTH_ATTR_NAME, "gpg-agent");
|
||||||
|
|
||||||
|
#ifndef HAVE_W32_SYSTEM /* fixme */
|
||||||
sigemptyset (&sigs );
|
sigemptyset (&sigs );
|
||||||
sigaddset (&sigs, SIGHUP);
|
sigaddset (&sigs, SIGHUP);
|
||||||
sigaddset (&sigs, SIGUSR1);
|
sigaddset (&sigs, SIGUSR1);
|
||||||
@ -1185,6 +1212,9 @@ handle_connections (int listen_fd)
|
|||||||
sigaddset (&sigs, SIGINT);
|
sigaddset (&sigs, SIGINT);
|
||||||
sigaddset (&sigs, SIGTERM);
|
sigaddset (&sigs, SIGTERM);
|
||||||
ev = pth_event (PTH_EVENT_SIGS, &sigs, &signo);
|
ev = pth_event (PTH_EVENT_SIGS, &sigs, &signo);
|
||||||
|
#else
|
||||||
|
ev = NULL;
|
||||||
|
#endif
|
||||||
|
|
||||||
for (;;)
|
for (;;)
|
||||||
{
|
{
|
||||||
|
@ -182,8 +182,10 @@ agent_send_all_options (int fd)
|
|||||||
}
|
}
|
||||||
|
|
||||||
dft_ttyname = getenv ("GPG_TTY");
|
dft_ttyname = getenv ("GPG_TTY");
|
||||||
|
#ifndef HAVE_W32_SYSTEM
|
||||||
if ((!dft_ttyname || !*dft_ttyname) && ttyname (0))
|
if ((!dft_ttyname || !*dft_ttyname) && ttyname (0))
|
||||||
dft_ttyname = ttyname (0);
|
dft_ttyname = ttyname (0);
|
||||||
|
#endif
|
||||||
if (dft_ttyname && *dft_ttyname)
|
if (dft_ttyname && *dft_ttyname)
|
||||||
{
|
{
|
||||||
if ((rc=agent_send_option (fd, "ttyname", dft_ttyname)))
|
if ((rc=agent_send_option (fd, "ttyname", dft_ttyname)))
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
2004-12-13 Werner Koch <wk@g10code.com>
|
2004-12-13 Werner Koch <wk@g10code.com>
|
||||||
|
|
||||||
|
* stringhelp.c (w32_strerror) [W32]: New.
|
||||||
|
|
||||||
* w32-pth.c, w32-pth.h: Added real code written by Timo Schulz.
|
* w32-pth.c, w32-pth.h: Added real code written by Timo Schulz.
|
||||||
Not finished, though.
|
Not finished, though.
|
||||||
|
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
/* stringhelp.c - standard string helper functions
|
/* stringhelp.c - standard string helper functions
|
||||||
* Copyright (C) 1998, 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
|
* Copyright (C) 1998, 1999, 2000, 2001, 2003,
|
||||||
|
* 2004 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* This file is part of GnuPG.
|
* This file is part of GnuPG.
|
||||||
*
|
*
|
||||||
@ -23,14 +24,17 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
|
#ifdef HAVE_W32_SYSTEM
|
||||||
|
#include <windows.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "libjnlib-config.h"
|
#include "libjnlib-config.h"
|
||||||
#include "utf8conv.h"
|
#include "utf8conv.h"
|
||||||
#include "stringhelp.h"
|
#include "stringhelp.h"
|
||||||
|
|
||||||
|
|
||||||
/****************
|
/*
|
||||||
* look for the substring SUB in buffer and return a pointer to that
|
* Look for the substring SUB in buffer and return a pointer to that
|
||||||
* substring in BUF or NULL if not found.
|
* substring in BUF or NULL if not found.
|
||||||
* Comparison is case-insensitive.
|
* Comparison is case-insensitive.
|
||||||
*/
|
*/
|
||||||
@ -72,11 +76,12 @@ ascii_memistr( const char *buf, size_t buflen, const char *sub )
|
|||||||
return NULL ;
|
return NULL ;
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************
|
/* This function is similar to strncpy(). However it won't copy more
|
||||||
* Wie strncpy(), aber es werden maximal n-1 zeichen kopiert und ein
|
than N - 1 characters and makes sure that a '\0' is appended. With
|
||||||
* '\0' angehängt. Ist n = 0, so geschieht nichts, ist Destination
|
N given as 0, nothing will happen. With DEST given as NULL, memory
|
||||||
* gleich NULL, so wird via jnlib_xmalloc Speicher besorgt, ist dann nicht
|
will be allocated using jnlib_xmalloc (i.e. if it runs out of core
|
||||||
* genügend Speicher vorhanden, so bricht die funktion ab.
|
the function terminates). Returns DES or a pointer to the
|
||||||
|
allocated memory.
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
mem2str( char *dest , const void *src , size_t n )
|
mem2str( char *dest , const void *src , size_t n )
|
||||||
@ -452,8 +457,29 @@ sanitize_buffer (const unsigned char *p, size_t n, int delim)
|
|||||||
return buffer;
|
return buffer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/****************************************************
|
/****************************************************
|
||||||
******** locale insensitive ctype functions ********
|
********** W32 specific functions ****************
|
||||||
|
****************************************************/
|
||||||
|
|
||||||
|
#ifdef HAVE_W32_SYSTEM
|
||||||
|
const char *
|
||||||
|
w32_strerror (int ec)
|
||||||
|
{
|
||||||
|
static char strerr[256];
|
||||||
|
|
||||||
|
if (ec == -1)
|
||||||
|
ec = (int)GetLastError ();
|
||||||
|
FormatMessage (FORMAT_MESSAGE_FROM_SYSTEM, NULL, ec,
|
||||||
|
MAKELANGID (LANG_NEUTRAL, SUBLANG_DEFAULT),
|
||||||
|
strerr, DIM (strerr)-1, NULL);
|
||||||
|
return strerr;
|
||||||
|
}
|
||||||
|
#endif /*HAVE_W32_SYSTEM*/
|
||||||
|
|
||||||
|
|
||||||
|
/****************************************************
|
||||||
|
******** Locale insensitive ctype functions ********
|
||||||
****************************************************/
|
****************************************************/
|
||||||
/* FIXME: replace them by a table lookup and macros */
|
/* FIXME: replace them by a table lookup and macros */
|
||||||
int
|
int
|
||||||
@ -626,3 +652,5 @@ memicmp( const char *a, const char *b, size_t n )
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
@ -49,6 +49,11 @@ size_t print_sanitized_utf8_string (FILE *fp, const char *string, int delim);
|
|||||||
char *sanitize_buffer (const unsigned char *p, size_t n, int delim);
|
char *sanitize_buffer (const unsigned char *p, size_t n, int delim);
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef HAVE_W32_SYSTEM
|
||||||
|
const char *w32_strerror (int ec);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
const char *ascii_memistr( const char *buf, size_t buflen, const char *sub );
|
const char *ascii_memistr( const char *buf, size_t buflen, const char *sub );
|
||||||
int ascii_isupper (int c);
|
int ascii_isupper (int c);
|
||||||
int ascii_islower (int c);
|
int ascii_islower (int c);
|
||||||
|
@ -23,6 +23,7 @@
|
|||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
#include <ws2tcpip.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
|
||||||
#define DIRSEP_C '\\'
|
#define DIRSEP_C '\\'
|
||||||
|
@ -53,7 +53,7 @@ enum
|
|||||||
/* Mutex values. */
|
/* Mutex values. */
|
||||||
#define PTH_MUTEX_INITIALIZED (1<<0)
|
#define PTH_MUTEX_INITIALIZED (1<<0)
|
||||||
#define PTH_MUTEX_LOCKED (1<<1)
|
#define PTH_MUTEX_LOCKED (1<<1)
|
||||||
#define PTH_MUTEX_INIT {{NULL, NULL}, PTH_MUTEX_INITIALIZED, NULL, 0}
|
#define PTH_MUTEX_INIT {PTH_MUTEX_INITIALIZED}
|
||||||
|
|
||||||
|
|
||||||
#define PTH_KEY_INIT (1<<0)
|
#define PTH_KEY_INIT (1<<0)
|
||||||
@ -235,6 +235,12 @@ pth_event_t pth_event (unsigned long spec, ...);
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Backward compatibility (Pth < 1.5.0). */
|
||||||
|
#define pth_event_occurred(ev) \
|
||||||
|
( pth_event_status(ev) == PTH_STATUS_OCCURRED \
|
||||||
|
|| pth_event_status(ev) == PTH_STATUS_FAILED )
|
||||||
|
|
||||||
|
|
||||||
/*-- pth_util.c --*/
|
/*-- pth_util.c --*/
|
||||||
|
|
||||||
/* void sigemptyset (struct sigset_s * ss); */
|
/* void sigemptyset (struct sigset_s * ss); */
|
||||||
|
@ -113,7 +113,7 @@ start_agent (ctrl_t ctrl)
|
|||||||
no_close_list[i++] = fileno (stderr);
|
no_close_list[i++] = fileno (stderr);
|
||||||
no_close_list[i] = -1;
|
no_close_list[i] = -1;
|
||||||
|
|
||||||
/* connect to the agent and perform initial handshaking */
|
/* Connect to the agent and perform initial handshaking. */
|
||||||
rc = assuan_pipe_connect (&ctx, opt.agent_program, (char**)argv,
|
rc = assuan_pipe_connect (&ctx, opt.agent_program, (char**)argv,
|
||||||
no_close_list);
|
no_close_list);
|
||||||
}
|
}
|
||||||
|
@ -1,3 +1,7 @@
|
|||||||
|
2004-12-13 Werner Koch <wk@g10code.com>
|
||||||
|
|
||||||
|
* gpgconf-comp.c <ignore-ocsp-service-url>: Fixed typo.
|
||||||
|
|
||||||
2004-11-24 Werner Koch <wk@g10code.com>
|
2004-11-24 Werner Koch <wk@g10code.com>
|
||||||
|
|
||||||
* gpgconf-comp.c <dirmngr>: Add --ignore-http-dp, --ignore-ldap-dp
|
* gpgconf-comp.c <dirmngr>: Add --ignore-http-dp, --ignore-ldap-dp
|
||||||
|
@ -790,7 +790,7 @@ static gc_option_t gc_options_dirmngr[] =
|
|||||||
{ "allow-ocsp", GC_OPT_FLAG_NONE, GC_LEVEL_BASIC,
|
{ "allow-ocsp", GC_OPT_FLAG_NONE, GC_LEVEL_BASIC,
|
||||||
"dirmngr", "allow sending OCSP requests",
|
"dirmngr", "allow sending OCSP requests",
|
||||||
GC_ARG_TYPE_NONE, GC_BACKEND_DIRMNGR },
|
GC_ARG_TYPE_NONE, GC_BACKEND_DIRMNGR },
|
||||||
{ "ignore-ocsp-servic-url", GC_OPT_FLAG_NONE, GC_LEVEL_ADVANCED,
|
{ "ignore-ocsp-service-url", GC_OPT_FLAG_NONE, GC_LEVEL_ADVANCED,
|
||||||
"dirmngr", "ignore certificate contained OCSP service URLs",
|
"dirmngr", "ignore certificate contained OCSP service URLs",
|
||||||
GC_ARG_TYPE_NONE, GC_BACKEND_DIRMNGR },
|
GC_ARG_TYPE_NONE, GC_BACKEND_DIRMNGR },
|
||||||
{ "ocsp-responder", GC_OPT_FLAG_NONE, GC_LEVEL_ADVANCED,
|
{ "ocsp-responder", GC_OPT_FLAG_NONE, GC_LEVEL_ADVANCED,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user