#include "ratelimit.h"
#include "sd-event.h"
#include "sd-resolve.h"
+#include "sd-network.h"
typedef struct Manager Manager;
typedef struct ServerAddress ServerAddress;
LIST_FIELDS(ServerName, names);
};
+static inline int server_address_pretty(ServerAddress *a, char **pretty) {
+ return sockaddr_pretty(&a->sockaddr.sa, a->socklen, true, pretty);
+}
+
struct Manager {
sd_event *event;
sd_resolve *resolve;
RateLimit ratelimit;
+ /* network */
+ sd_event_source *network_event_source;
+ sd_network_monitor *network_monitor;
+
/* peer */
sd_resolve_query *resolve_query;
sd_event_source *event_receive;
/* last change */
bool jumped;
+ bool sync;
int drift_ppm;
/* watch for time changes */
/* Retry connections */
sd_event_source *event_retry;
-
- /* Handle SIGINT/SIGTERM */
- sd_event_source *sigterm, *sigint;
};
const struct ConfigPerfItem* timesyncd_gperf_lookup(const char *key, unsigned length);