aboutsummaryrefslogtreecommitdiffstats
path: root/src/pingu_ping.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/pingu_ping.h')
-rw-r--r--src/pingu_ping.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/pingu_ping.h b/src/pingu_ping.h
new file mode 100644
index 0000000..e0bda08
--- /dev/null
+++ b/src/pingu_ping.h
@@ -0,0 +1,24 @@
+#ifndef PINGU_PING_H
+#define PINGU_PING_H
+
+#include <ev.h>
+
+#include "list.h"
+#include "pingu_host.h"
+
+#define PINGU_PING_IGNORE_ERROR 0
+#define PINGU_PING_SET_STATUS_ON_ERROR 1
+
+struct pingu_ping {
+ int seq;
+ struct pingu_host *host;
+ struct list_head ping_list_entry;
+ struct ev_timer timeout_watcher;
+};
+
+int pingu_ping_send(struct ev_loop *loop, struct pingu_host *host,
+ int set_status_on_failure);
+void pingu_ping_read_reply(struct ev_loop *loop, struct pingu_iface *iface);
+void pingu_ping_cleanup(struct ev_loop *loop, struct list_head *ping_list);
+void pingu_ping_dump(int fd, struct list_head *ping_list, const char *prefix);
+#endif