1 /* 2 * Copyright (C) 2014 John Crispin <blogic@openwrt.org> 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License version 2.1 6 * as published by the Free Software Foundation 7 * 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU General Public License for more details. 12 */ 13 14 #ifndef _SERVICE_H__ 15 #define _SERVICE_H__ 16 17 #include <libubox/vlist.h> 18 #include <libubox/avl-cmp.h> 19 20 struct service { 21 struct vlist_node node; 22 23 time_t t; 24 25 const char *id; 26 const char *instance; 27 const char *service; 28 const uint8_t *txt; 29 int txt_len; 30 int port; 31 int active; 32 }; 33 34 struct hostname { 35 struct vlist_node node; 36 37 const char *hostname; 38 }; 39 extern struct vlist_tree hostnames; 40 extern struct vlist_tree announced_services; 41 42 extern void service_init(int announce); 43 extern void service_cleanup(void); 44 extern void service_reply(struct interface *iface, struct sockaddr *to, const char *instance, const char *service_domain, int ttl, int force); 45 extern void service_announce_services(struct interface *iface, struct sockaddr *to, int ttl); 46 extern void service_update(struct vlist_tree *tree, struct vlist_node *node_new, struct vlist_node *node_old); 47 48 #endif 49
This page was automatically generated by LXR 0.3.1. • OpenWrt