summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlexander Færøy <ahf@torproject.org>2018-12-13 00:52:39 +0100
committerNick Mathewson <nickm@torproject.org>2018-12-17 16:39:28 -0500
commitfab22509d70ff3289f7300788bd9243659268f69 (patch)
treea632631255a5364767318e68c15cf98ab9b156cc /src
parenta33a77d9cd3c06b5a871e99631b7f1c40bed23c6 (diff)
downloadtor-fab22509d70ff3289f7300788bd9243659268f69.tar.gz
tor-fab22509d70ff3289f7300788bd9243659268f69.zip
Make Windows process event timer API available for dormant interface.
This patch changes the API of the Windows backend of the Process subsystem to allow the dormant interface to disable the Process event timer. See: https://bugs.torproject.org/28179
Diffstat (limited to 'src')
-rw-r--r--src/lib/process/process_win32.c6
-rw-r--r--src/lib/process/process_win32.h9
2 files changed, 8 insertions, 7 deletions
diff --git a/src/lib/process/process_win32.c b/src/lib/process/process_win32.c
index 911bad3933..e9367dafc9 100644
--- a/src/lib/process/process_win32.c
+++ b/src/lib/process/process_win32.c
@@ -429,7 +429,7 @@ process_win32_trigger_completion_callbacks(void)
/** Start the periodic timer which is reponsible for checking whether processes
* are still alive and to make sure that the Tor process is periodically being
* moved into an alertable state. */
-STATIC void
+void
process_win32_timer_start(void)
{
/* Make sure we never start our timer if it's already running. */
@@ -447,7 +447,7 @@ process_win32_timer_start(void)
}
/** Stops the periodic timer. */
-STATIC void
+void
process_win32_timer_stop(void)
{
if (BUG(periodic_timer == NULL))
@@ -458,7 +458,7 @@ process_win32_timer_stop(void)
}
/** Returns true iff the periodic timer is running. */
-STATIC bool
+bool
process_win32_timer_running(void)
{
return periodic_timer != NULL;
diff --git a/src/lib/process/process_win32.h b/src/lib/process/process_win32.h
index 00de8c949b..8ab4880fbd 100644
--- a/src/lib/process/process_win32.h
+++ b/src/lib/process/process_win32.h
@@ -43,11 +43,12 @@ int process_win32_read_stderr(struct process_t *process, buf_t *buffer);
void process_win32_trigger_completion_callbacks(void);
-#ifdef PROCESS_WIN32_PRIVATE
/* Timer handling. */
-STATIC void process_win32_timer_start(void);
-STATIC void process_win32_timer_stop(void);
-STATIC bool process_win32_timer_running(void);
+void process_win32_timer_start(void);
+void process_win32_timer_stop(void);
+bool process_win32_timer_running(void);
+
+#ifdef PROCESS_WIN32_PRIVATE
STATIC void process_win32_timer_callback(periodic_timer_t *, void *);
STATIC bool process_win32_timer_test_process(process_t *);