Changeset View
Changeset View
Standalone View
Standalone View
b/agent/gpg-agent.c
Context not available. | |||||
} | } | ||||
static int | |||||
need_tick (void) | |||||
{ | |||||
#ifdef HAVE_W32_SYSTEM | |||||
/* We do not know how to interrupt the select loop on Windows, so we | |||||
always need a short tick there. */ | |||||
return 1; | |||||
#else | |||||
/* if we were invoked like "gpg-agent cmd arg1 arg2" then we need to | |||||
watch our parent. */ | |||||
if (parent_pid != (pid_t)(-1)) | |||||
return 1; | |||||
/* if scdaemon is running, we need to check that it's alive */ | |||||
if (agent_scd_check_running ()) | |||||
return 1; | |||||
/* otherwise, nothing fine-grained to do. */ | |||||
return 0; | |||||
#endif /*HAVE_W32_SYSTEM*/ | |||||
} | |||||
/* This is the worker for the ticker. It is called every few seconds | /* This is the worker for the ticker. It is called every few seconds | ||||
and may only do fast operations. */ | and may only do fast operations. */ | ||||
Context not available. | |||||
#ifndef HAVE_W32_SYSTEM | #ifndef HAVE_W32_SYSTEM | ||||
/* The signal handler for this program. It is expected to be run in | /* The signal handler for this program. It is expected to be run in | ||||
its own trhead and not in the context of a signal handler. */ | its own thread and not in the context of a signal handler. */ | ||||
static void | static void | ||||
handle_signal (int signo) | handle_signal (int signo) | ||||
{ | { | ||||
Context not available. | |||||
thus a simple assignment is fine to copy the entire set. */ | thus a simple assignment is fine to copy the entire set. */ | ||||
read_fdset = fdset; | read_fdset = fdset; | ||||
/* avoid a fine-grained timer if we don't need one: */ | |||||
timertbl[0].interval.tv_sec = need_tick () ? TIMERTICK_INTERVAL : 0; | |||||
/* loop through all timers, fire any registered functions, and | /* loop through all timers, fire any registered functions, and | ||||
plan next timer to trigger */ | plan next timer to trigger */ | ||||
npth_clock_gettime (&curtime); | npth_clock_gettime (&curtime); | ||||
Context not available. |