IPv6: reorganize prefix assignment
[project/netifd.git] / interface.h
index d186903..13761f8 100644 (file)
@@ -60,9 +60,6 @@ struct interface_ip_settings {
        bool no_defaultroute;
        bool no_dns;
 
-       uint8_t assignment_length;
-       int32_t assignment_hint;
-
        struct vlist_tree addr;
        struct vlist_tree route;
        struct vlist_tree prefix;
@@ -76,6 +73,11 @@ struct interface_data {
        struct blob_attr data[];
 };
 
+struct interface_assignment_class {
+       struct list_head head;
+       char name[];
+};
+
 /*
  * interface configuration
  */
@@ -121,6 +123,11 @@ struct interface {
        unsigned int ip4table;
        unsigned int ip6table;
 
+       /* IPv6 assignment parameters */
+       uint8_t assignment_length;
+       int32_t assignment_hint;
+       struct list_head assignment_classes;
+
        /* errors/warnings while trying to bring up the interface */
        struct list_head errors;