mirror of
https://github.com/transmission/transmission.git
synced 2025-12-24 12:28:52 +00:00
#5910: Run daemon as a service on Windows
Factor out demonization implementation to platform-specific files. Implement daemonization on Windows using service API. Improve *NIX implementation by handling signals asynchronously to prevent potential issues of running complex code inside the handler.
This commit is contained in:
29
daemon/daemon.h
Normal file
29
daemon/daemon.h
Normal file
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
* This file Copyright (C) 2015 Mnemosyne LLC
|
||||
*
|
||||
* It may be used under the GNU GPL versions 2 or 3
|
||||
* or any future license endorsed by Mnemosyne LLC.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef DTR_DAEMON_H
|
||||
#define DTR_DAEMON_H
|
||||
|
||||
struct tr_error;
|
||||
|
||||
typedef struct dtr_callbacks
|
||||
{
|
||||
int (*on_start) (void * arg, bool foreground);
|
||||
void (*on_stop) (void * arg);
|
||||
void (*on_reconfigure) (void * arg);
|
||||
}
|
||||
dtr_callbacks;
|
||||
|
||||
bool dtr_daemon (const dtr_callbacks * cb,
|
||||
void * cb_arg,
|
||||
bool foreground,
|
||||
int * exit_code,
|
||||
struct tr_error ** error);
|
||||
|
||||
#endif /* DTR_DAEMON_H */
|
||||
Reference in New Issue
Block a user