X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fnetifd.git;a=blobdiff_plain;f=interface-ip.h;h=2559bccc4adc1b946a2acce77555dd04a72b744c;hp=5cc566537a21476bc37c6163de70bbb83644b2e5;hb=9bf007985b20cb65147d8fd8ff59a6eb65ed22b8;hpb=39efab1db589c30317de9ed2c6dc700bb1252e13 diff --git a/interface-ip.h b/interface-ip.h index 5cc5665..2559bcc 100644 --- a/interface-ip.h +++ b/interface-ip.h @@ -85,6 +85,7 @@ struct device_addr { /* ipv6 only */ time_t valid_until; time_t preferred_until; + char *pclass; /* must be last */ enum device_addr_flags flags; @@ -108,6 +109,17 @@ struct device_route { int metric; // there can be multiple routes to the same target unsigned int table; unsigned int mask; + unsigned int sourcemask; + union if_addr addr; + union if_addr source; +}; + +struct device_source_table { + struct list_head head; + uint32_t table; + uint16_t refcount; + uint8_t v6; + uint8_t mask; union if_addr addr; }; @@ -122,7 +134,7 @@ struct dns_search_domain { char name[]; }; -extern const struct config_param_list route_attr_list; +extern const struct uci_blob_param_list route_attr_list; extern struct list_head prefixes; void interface_ip_init(struct interface *iface);