diff options
| author | Léo Lam <leolino.lam@gmail.com> | 2018-03-08 17:29:45 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-03-08 17:29:45 +0100 |
| commit | ed2d749fb97e04e699a1c0b4b5184ebc3b9c5dda (patch) | |
| tree | 9daf20e68c1491141d7ced2657d2a14b7c0176c6 /Source/Core/Common/TraversalServer.cpp | |
| parent | 1eae5fe790119459bbdfa9fbee46ea792e539c3e (diff) | |
| parent | 9e0739f5e578acc5289b13457690710fbadcdfdc (diff) | |
Merge pull request #6424 from delroth/traversal-watchdog
Add systemd watchdog support to the traversal server
Diffstat (limited to 'Source/Core/Common/TraversalServer.cpp')
| -rw-r--r-- | Source/Core/Common/TraversalServer.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/Source/Core/Common/TraversalServer.cpp b/Source/Core/Common/TraversalServer.cpp index 825eee06a7..5da45a05fe 100644 --- a/Source/Core/Common/TraversalServer.cpp +++ b/Source/Core/Common/TraversalServer.cpp @@ -15,10 +15,16 @@ #include <unordered_map> #include <utility> #include <vector> + +#ifdef HAVE_LIBSYSTEMD +#include <systemd/sd-daemon.h> +#endif + #include "Common/TraversalProto.h" #define DEBUG 0 #define NUMBER_OF_TRIES 5 +#define PORT 6262 static u64 currentTime; @@ -397,7 +403,7 @@ int main() addr.sin6_len = sizeof(addr); #endif addr.sin6_family = AF_INET6; - addr.sin6_port = htons(6262); + addr.sin6_port = htons(PORT); addr.sin6_flowinfo = 0; addr.sin6_addr = any; addr.sin6_scope_id = 0; @@ -419,6 +425,10 @@ int main() return 1; } +#ifdef HAVE_LIBSYSTEMD + sd_notifyf(0, "READY=1\nSTATUS=Listening on port %d", PORT); +#endif + while (true) { sockaddr_in6 raddr; @@ -450,5 +460,8 @@ int main() HandlePacket(&packet, &raddr); } ResendPackets(); +#ifdef HAVE_LIBSYSTEMD + sd_notify(0, "WATCHDOG=1"); +#endif } } |
