aboutsummaryrefslogtreecommitdiffstats
path: root/pingu_ping.h
blob: 52c977e347242d7af0178d9d455ac9be4147afcc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
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);

#endif