X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fodhcpd.git;a=blobdiff_plain;f=src%2Fodhcpd.h;h=729b6291e70e5725b9e1b9496bfddeb1a3ab2fe5;hp=1ada4aaefebae72aa42e478da5afec6456a4fa87;hb=10fc5665634151fbd8bfd6503db25a4652a0839a;hpb=a517d7bf98b1a30106e980a3952f106908739048 diff --git a/src/odhcpd.h b/src/odhcpd.h index 1ada4aa..729b629 100644 --- a/src/odhcpd.h +++ b/src/odhcpd.h @@ -186,13 +186,14 @@ ssize_t odhcpd_get_interface_addresses(int ifindex, struct odhcpd_ipaddr *addrs, size_t cnt); int odhcpd_get_preferred_interface_address(int ifindex, struct in6_addr *addr); struct interface* odhcpd_get_interface_by_name(const char *name); -int odhcpd_get_interface_mtu(const char *ifname); +int odhcpd_get_interface_config(const char *ifname, const char *what); int odhcpd_get_mac(const struct interface *iface, uint8_t mac[6]); struct interface* odhcpd_get_interface_by_index(int ifindex); struct interface* odhcpd_get_master_interface(void); -void odhcpd_urandom(void *data, size_t len); +int odhcpd_urandom(void *data, size_t len); void odhcpd_setup_route(const struct in6_addr *addr, int prefixlen, - const struct interface *iface, const struct in6_addr *gw, bool add); + const struct interface *iface, const struct in6_addr *gw, + int metric, bool add); void odhcpd_run(void); time_t odhcpd_time(void); @@ -202,6 +203,10 @@ void odhcpd_hexlify(char *dst, const uint8_t *src, size_t len); int odhcpd_bmemcmp(const void *av, const void *bv, size_t bits); void odhcpd_bmemcpy(void *av, const void *bv, size_t bits); +int odhcpd_iterate_interface_neighbors(const struct interface *iface, + void(*cb_neigh)(const struct in6_addr *addr, + const struct interface *iface, void *data), void *data); + int config_parse_interface(void *data, size_t len, const char *iname, bool overwrite); #ifdef WITH_UBUS