mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-03 12:11:33 +01:00
dirmngr: Add new debug flag "extprog"
* dirmngr/dirmngr.h (DBG_EXTPROG_VALUE, DBG_EXTPROG): New macros. * dirmngr/dirmngr.c (debug_flags): Add flag "extprog". (handle_connections): Use a macro instead of -1 for an invalid socket. * dirmngr/loadswdb.c (verify_status_cb): Debug the gpgv call. Signed-off-by: Werner Koch <wk@gnupg.org>
This commit is contained in:
parent
d30e17ac62
commit
22b69b9edf
@ -267,6 +267,7 @@ static struct debug_flags_s debug_flags [] =
|
|||||||
{ DBG_DNS_VALUE , "dns" },
|
{ DBG_DNS_VALUE , "dns" },
|
||||||
{ DBG_NETWORK_VALUE, "network" },
|
{ DBG_NETWORK_VALUE, "network" },
|
||||||
{ DBG_LOOKUP_VALUE , "lookup" },
|
{ DBG_LOOKUP_VALUE , "lookup" },
|
||||||
|
{ DBG_EXTPROG_VALUE, "extprog" },
|
||||||
{ 77, NULL } /* 77 := Do not exit on "help" or "?". */
|
{ 77, NULL } /* 77 := Do not exit on "help" or "?". */
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -2215,7 +2216,7 @@ handle_connections (assuan_fd_t listen_fd)
|
|||||||
close (my_inotify_fd);
|
close (my_inotify_fd);
|
||||||
#endif /*HAVE_INOTIFY_INIT*/
|
#endif /*HAVE_INOTIFY_INIT*/
|
||||||
npth_attr_destroy (&tattr);
|
npth_attr_destroy (&tattr);
|
||||||
if (listen_fd != -1)
|
if (listen_fd != GNUPG_INVALID_FD)
|
||||||
assuan_sock_close (fd);
|
assuan_sock_close (fd);
|
||||||
cleanup ();
|
cleanup ();
|
||||||
log_info ("%s %s stopped\n", strusage(11), strusage(13));
|
log_info ("%s %s stopped\n", strusage(11), strusage(13));
|
||||||
|
@ -144,6 +144,7 @@ struct
|
|||||||
#define DBG_IPC_VALUE 1024 /* debug assuan communication */
|
#define DBG_IPC_VALUE 1024 /* debug assuan communication */
|
||||||
#define DBG_NETWORK_VALUE 2048 /* debug network I/O. */
|
#define DBG_NETWORK_VALUE 2048 /* debug network I/O. */
|
||||||
#define DBG_LOOKUP_VALUE 8192 /* debug lookup details */
|
#define DBG_LOOKUP_VALUE 8192 /* debug lookup details */
|
||||||
|
#define DBG_EXTPROG_VALUE 16384 /* debug external program calls */
|
||||||
|
|
||||||
#define DBG_X509 (opt.debug & DBG_X509_VALUE)
|
#define DBG_X509 (opt.debug & DBG_X509_VALUE)
|
||||||
#define DBG_CRYPTO (opt.debug & DBG_CRYPTO_VALUE)
|
#define DBG_CRYPTO (opt.debug & DBG_CRYPTO_VALUE)
|
||||||
@ -154,6 +155,7 @@ struct
|
|||||||
#define DBG_IPC (opt.debug & DBG_IPC_VALUE)
|
#define DBG_IPC (opt.debug & DBG_IPC_VALUE)
|
||||||
#define DBG_NETWORK (opt.debug & DBG_NETWORK_VALUE)
|
#define DBG_NETWORK (opt.debug & DBG_NETWORK_VALUE)
|
||||||
#define DBG_LOOKUP (opt.debug & DBG_LOOKUP_VALUE)
|
#define DBG_LOOKUP (opt.debug & DBG_LOOKUP_VALUE)
|
||||||
|
#define DBG_EXTPROG (opt.debug & DBG_EXTPROG_VALUE)
|
||||||
|
|
||||||
/* A simple list of certificate references. FIXME: Better use
|
/* A simple list of certificate references. FIXME: Better use
|
||||||
certlist_t also for references (Store NULL at .cert) */
|
certlist_t also for references (Store NULL at .cert) */
|
||||||
|
@ -382,7 +382,7 @@ _my_socket_new (int lnr, assuan_fd_t fd)
|
|||||||
so->refcount = 1;
|
so->refcount = 1;
|
||||||
if (opt_debug)
|
if (opt_debug)
|
||||||
log_debug ("http.c:%d:socket_new: object %p for fd %d created\n",
|
log_debug ("http.c:%d:socket_new: object %p for fd %d created\n",
|
||||||
lnr, (int)so, so->fd);
|
lnr, so, so->fd);
|
||||||
return so;
|
return so;
|
||||||
}
|
}
|
||||||
#define my_socket_new(a) _my_socket_new (__LINE__, (a))
|
#define my_socket_new(a) _my_socket_new (__LINE__, (a))
|
||||||
@ -394,7 +394,7 @@ _my_socket_ref (int lnr, my_socket_t so)
|
|||||||
so->refcount++;
|
so->refcount++;
|
||||||
if (opt_debug > 1)
|
if (opt_debug > 1)
|
||||||
log_debug ("http.c:%d:socket_ref: object %p for fd %d refcount now %d\n",
|
log_debug ("http.c:%d:socket_ref: object %p for fd %d refcount now %d\n",
|
||||||
lnr, (int)so, so->fd, so->refcount);
|
lnr, so, so->fd, so->refcount);
|
||||||
return so;
|
return so;
|
||||||
}
|
}
|
||||||
#define my_socket_ref(a) _my_socket_ref (__LINE__,(a))
|
#define my_socket_ref(a) _my_socket_ref (__LINE__,(a))
|
||||||
@ -412,7 +412,7 @@ _my_socket_unref (int lnr, my_socket_t so,
|
|||||||
so->refcount--;
|
so->refcount--;
|
||||||
if (opt_debug > 1)
|
if (opt_debug > 1)
|
||||||
log_debug ("http.c:%d:socket_unref: object %p for fd %d ref now %d\n",
|
log_debug ("http.c:%d:socket_unref: object %p for fd %d ref now %d\n",
|
||||||
lnr, (int)so, so->fd, so->refcount);
|
lnr, so, so->fd, so->refcount);
|
||||||
|
|
||||||
if (!so->refcount)
|
if (!so->refcount)
|
||||||
{
|
{
|
||||||
|
@ -191,6 +191,9 @@ verify_status_cb (void *opaque, const char *keyword, char *args)
|
|||||||
{
|
{
|
||||||
struct verify_status_parm_s *parm = opaque;
|
struct verify_status_parm_s *parm = opaque;
|
||||||
|
|
||||||
|
if (DBG_EXTPROG)
|
||||||
|
log_debug ("gpgv status: %s %s\n", keyword, args);
|
||||||
|
|
||||||
/* We care only about the first valid signature. */
|
/* We care only about the first valid signature. */
|
||||||
if (!strcmp (keyword, "VALIDSIG") && !parm->anyvalid)
|
if (!strcmp (keyword, "VALIDSIG") && !parm->anyvalid)
|
||||||
{
|
{
|
||||||
@ -302,12 +305,16 @@ dirmngr_load_swdb (ctrl_t ctrl, int force)
|
|||||||
goto leave;
|
goto leave;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (DBG_EXTPROG)
|
||||||
|
log_debug ("starting gpgv\n");
|
||||||
err = gnupg_exec_tool_stream (gnupg_module_name (GNUPG_MODULE_NAME_GPGV),
|
err = gnupg_exec_tool_stream (gnupg_module_name (GNUPG_MODULE_NAME_GPGV),
|
||||||
argv, swdb, swdb_sig, NULL,
|
argv, swdb, swdb_sig, NULL,
|
||||||
verify_status_cb, &verify_status_parm);
|
verify_status_cb, &verify_status_parm);
|
||||||
if (!err && verify_status_parm.sigtime == (time_t)(-1))
|
if (!err && verify_status_parm.sigtime == (time_t)(-1))
|
||||||
err = gpg_error (verify_status_parm.anyvalid? GPG_ERR_BAD_SIGNATURE
|
err = gpg_error (verify_status_parm.anyvalid? GPG_ERR_BAD_SIGNATURE
|
||||||
/**/ : GPG_ERR_INV_TIME );
|
/**/ : GPG_ERR_INV_TIME );
|
||||||
|
if (DBG_EXTPROG)
|
||||||
|
log_debug ("gpgv finished: err=%d\n", err);
|
||||||
if (err)
|
if (err)
|
||||||
goto leave;
|
goto leave;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user