2 * Copyright (C) 2014 John Crispin <blogic@openwrt.org>
3 * Copyright (C) 2014 Felix Fietkau <nbd@openwrt.org>
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU Lesser General Public License version 2.1
7 * as published by the Free Software Foundation
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
15 #ifndef __MDNS_INTERFACE_H
16 #define __MDNS_INTERFACE_H
18 #include <sys/types.h>
21 #include <arpa/inet.h>
23 #include <libubox/uloop.h>
24 #include <libubox/vlist.h>
26 extern struct vlist_tree interfaces
;
29 struct vlist_node node
;
30 struct interface
*peer
;
35 struct uloop_timeout reconnect
;
41 struct in_addr v4_addr
;
42 struct in6_addr v6_addr
;
46 struct uloop_timeout announce_timer
;
52 int interface_add(const char *name
);
53 void interface_shutdown(void);
54 int interface_send_packet(struct interface
*iface
, struct iovec
*iov
, int iov_len
);