diff options
author | Nick Mathewson <nickm@torproject.org> | 2018-11-07 16:27:20 -0500 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2018-11-07 16:27:20 -0500 |
commit | 212bd9778b5c249f02f8fbdc1e8ccbe4c108f03a (patch) | |
tree | f517903b56ddf8e01e1e053b15fafb16fe7ec402 /src | |
parent | f229c4e66ae7f92fd02e93f2766ae37c07152ec5 (diff) | |
download | tor-212bd9778b5c249f02f8fbdc1e8ccbe4c108f03a.tar.gz tor-212bd9778b5c249f02f8fbdc1e8ccbe4c108f03a.zip |
Make the hibernate.c changes for systemd compile.
Diffstat (limited to 'src')
-rw-r--r-- | src/feature/hibernate/hibernate.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/feature/hibernate/hibernate.c b/src/feature/hibernate/hibernate.c index 4c46c4fe2a..6f8795cecc 100644 --- a/src/feature/hibernate/hibernate.c +++ b/src/feature/hibernate/hibernate.c @@ -50,6 +50,16 @@ hibernating, phase 2: #include <unistd.h> #endif +#ifdef HAVE_SYSTEMD +# if defined(__COVERITY__) && !defined(__INCLUDE_LEVEL__) +/* Systemd's use of gcc's __INCLUDE_LEVEL__ extension macro appears to confuse + * Coverity. Here's a kludge to unconfuse it. + */ +# define __INCLUDE_LEVEL__ 2 +# endif /* defined(__COVERITY__) && !defined(__INCLUDE_LEVEL__) */ +#include <systemd/sd-daemon.h> +#endif /* defined(HAVE_SYSTEMD) */ + /** Are we currently awake, asleep, running out of bandwidth, or shutting * down? */ static hibernate_state_t hibernate_state = HIBERNATE_STATE_INITIAL; @@ -821,6 +831,8 @@ hibernate_soft_limit_reached(void) return get_accounting_bytes() >= soft_limit; } +#define TOR_USEC_PER_SEC (1000000) + /** Called when we get a SIGINT, or when bandwidth soft limit is * reached. Puts us into "loose hibernation": we don't accept new * connections, but we continue handling old ones. */ |