diff options
author | Felix Fietkau <nbd@openwrt.org> | 2011-05-02 23:00:30 +0200 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2011-05-02 23:00:30 +0200 |
commit | 273550337f70b8b2175875e0c4f0bbd483cfe326 (patch) | |
tree | b433b4dcc731d61f750692a2a531c21e5eac4f26 /interface.h | |
parent | 85218c601b0f5895f9025910643761930c02eb1a (diff) |
move interface address handling to the device module, clean up arguments to system_{add,del}_addr
Diffstat (limited to 'interface.h')
-rw-r--r-- | interface.h | 41 |
1 files changed, 2 insertions, 39 deletions
diff --git a/interface.h b/interface.h index e19d61d..2d13b48 100644 --- a/interface.h +++ b/interface.h @@ -1,7 +1,6 @@ #ifndef __NETIFD_INTERFACE_H #define __NETIFD_INTERFACE_H -#include <netinet/in.h> #include "device.h" struct interface; @@ -27,42 +26,6 @@ struct interface_error { const char *data[]; }; -enum interface_addr_flags { - /* address family for routes and addresses */ - IFADDR_INET4 = (0 << 0), - IFADDR_INET6 = (1 << 0), - IFADDR_FAMILY = IFADDR_INET4 | IFADDR_INET6, - - /* device route (no gateway) */ - IFADDR_DEVICE = (1 << 1), -}; - -union if_addr { - struct in_addr in; - struct in6_addr in6; -}; - -struct interface_addr { - struct list_head list; - void *ctx; - - enum interface_addr_flags flags; - - unsigned int mask; - union if_addr addr; -}; - -struct interface_route { - struct list_head list; - void *ctx; - - enum interface_addr_flags flags; - - unsigned int mask; - union if_addr addr; - union if_addr nexthop; -}; - /* * interface configuration */ @@ -110,8 +73,8 @@ void interface_add_error(struct interface *iface, const char *subsystem, int interface_attach_bridge(struct interface *iface, struct uci_section *s); -int interface_add_address(struct interface *iface, struct interface_addr *addr); -void interface_del_address(struct interface *iface, struct interface_addr *addr); +int interface_add_address(struct interface *iface, struct device_addr *addr); +void interface_del_address(struct interface *iface, struct device_addr *addr); void interface_del_ctx_addr(struct interface *iface, void *ctx); void start_pending_interfaces(void); |