diff options
author | John Crispin <john@phrozen.org> | 2020-05-25 11:49:19 +0200 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2020-06-04 13:25:40 +0200 |
commit | a56b457656218e5b6142b6238286ea54801ac4b2 (patch) | |
tree | 6a1b665d97bc59a0eae636c9d6428b33dc192fbe /wireless.h | |
parent | 4ce33cee34e413f69082a80a833f3ed1baf8a761 (diff) |
netifd: wireless: add support for tracking wifi-station sections
This new section allows us to assign mac specific key/vid settings to a
station.
Signed-off-by: John Crispin <john@phrozen.org>
Diffstat (limited to 'wireless.h')
-rw-r--r-- | wireless.h | 17 |
1 files changed, 16 insertions, 1 deletions
@@ -30,7 +30,7 @@ struct wireless_driver { struct { char *buf; struct uci_blob_param_list *config; - } device, interface, vlan; + } device, interface, vlan, station; }; struct wireless_device { @@ -44,6 +44,7 @@ struct wireless_device { struct wireless_driver *drv; struct vlist_tree interfaces; struct vlist_tree vlans; + struct vlist_tree stations; char *name; struct netifd_process script_task; @@ -72,6 +73,7 @@ struct wireless_device { int vif_idx; int vlan_idx; + int sta_idx; }; struct wireless_interface { @@ -106,6 +108,18 @@ struct wireless_vlan { bool isolate; }; +struct wireless_station { + struct vlist_node node; + const char *section; + char *name; + + struct wireless_device *wdev; + char *vif; + + struct blob_attr *config; + struct blob_attr *data; +}; + struct wireless_process { struct list_head list; @@ -123,6 +137,7 @@ void wireless_device_status(struct wireless_device *wdev, struct blob_buf *b); void wireless_device_get_validate(struct wireless_device *wdev, struct blob_buf *b); struct wireless_interface* wireless_interface_create(struct wireless_device *wdev, struct blob_attr *data, const char *section); void wireless_vlan_create(struct wireless_device *wdev, char *vif, struct blob_attr *data, const char *section); +void wireless_station_create(struct wireless_device *wdev, char *vif, struct blob_attr *data, const char *section); int wireless_device_notify(struct wireless_device *wdev, struct blob_attr *data, struct ubus_request_data *req); |