History

nl80211: explicit userspace MPM

Secure mesh had the implicit requirement that the Mesh Peering Management entity be in userspace. However userspace might want to implement an open MPM as well, so specify a mesh setup parameter to indicate this.

Thomas Pedersen committed 13 years ago

Commit bb2798d1 parent 2ff2b694 files · +29 −7Browse files

Showing the changes to include/uapi/linux (1 of 4 files). Show all

Unified · Split

include/uapi/linux/nl80211.h+18−7
@@ -513,9 +513,11 @@ · 512 unmodified lines
513 * @NL80211_CMD_NEW_PEER_CANDIDATE: Notification on the reception of a513 * @NL80211_CMD_NEW_PEER_CANDIDATE: Notification on the reception of a
514 * beacon or probe response from a compatible mesh peer. This is only514 * beacon or probe response from a compatible mesh peer. This is only
515 * sent while no station information (sta_info) exists for the new peer515 * sent while no station information (sta_info) exists for the new peer
516 * candidate and when @NL80211_MESH_SETUP_USERSPACE_AUTH is set. On516 * candidate and when @NL80211_MESH_SETUP_USERSPACE_AUTH,
517 * reception of this notification, userspace may decide to create a new517 * @NL80211_MESH_SETUP_USERSPACE_AMPE, or
518 * station (@NL80211_CMD_NEW_STATION). To stop this notification from518 * @NL80211_MESH_SETUP_USERSPACE_MPM is set. On reception of this
519 * notification, userspace may decide to create a new station
520 * (@NL80211_CMD_NEW_STATION). To stop this notification from
519 * reoccurring, the userspace authentication daemon may want to create the521 * reoccurring, the userspace authentication daemon may want to create the
520 * new station with the AUTHENTICATED flag unset and maybe change it later522 * new station with the AUTHENTICATED flag unset and maybe change it later
521 * depending on the authentication result.523 * depending on the authentication result.
@@ -1199,10 +1201,10 @@ enum nl80211_commands { · 677 unmodified lines
1199 * @NL80211_ATTR_SUPPORT_MESH_AUTH: Currently, this means the underlying driver1201 * @NL80211_ATTR_SUPPORT_MESH_AUTH: Currently, this means the underlying driver
1200 * allows auth frames in a mesh to be passed to userspace for processing via1202 * allows auth frames in a mesh to be passed to userspace for processing via
1201 * the @NL80211_MESH_SETUP_USERSPACE_AUTH flag.1203 * the @NL80211_MESH_SETUP_USERSPACE_AUTH flag.
1202 * @NL80211_ATTR_STA_PLINK_STATE: The state of a mesh peer link as1204 * @NL80211_ATTR_STA_PLINK_STATE: The state of a mesh peer link as defined in
1203 * defined in &enum nl80211_plink_state. Used when userspace is1205 * &enum nl80211_plink_state. Used when userspace is driving the peer link
1204 * driving the peer link management state machine.1206 * management state machine. @NL80211_MESH_SETUP_USERSPACE_AMPE or
1205 * @NL80211_MESH_SETUP_USERSPACE_AMPE must be enabled.1207 * @NL80211_MESH_SETUP_USERSPACE_MPM must be enabled.
1206 *1208 *
1207 * @NL80211_ATTR_WOWLAN_TRIGGERS_SUPPORTED: indicates, as part of the wiphy1209 * @NL80211_ATTR_WOWLAN_TRIGGERS_SUPPORTED: indicates, as part of the wiphy
1208 * capabilities, the supported WoWLAN triggers1210 * capabilities, the supported WoWLAN triggers
@@ -2612,6 +2614,9 @@ enum nl80211_meshconf_params { · 1403 unmodified lines
2612 * vendor specific synchronization method or disable it to use the default2614 * vendor specific synchronization method or disable it to use the default
2613 * neighbor offset synchronization2615 * neighbor offset synchronization
2614 *2616 *
2617 * @NL80211_MESH_SETUP_USERSPACE_MPM: Enable this option if userspace will
2618 * implement an MPM which handles peer allocation and state.
2619 *
2615 * @NL80211_MESH_SETUP_ATTR_MAX: highest possible mesh setup attribute number2620 * @NL80211_MESH_SETUP_ATTR_MAX: highest possible mesh setup attribute number
2616 *2621 *
2617 * @__NL80211_MESH_SETUP_ATTR_AFTER_LAST: Internal use2622 * @__NL80211_MESH_SETUP_ATTR_AFTER_LAST: Internal use
@@ -2624,6 +2629,7 @@ enum nl80211_mesh_setup_params { · 6 unmodified lines
2624 NL80211_MESH_SETUP_USERSPACE_AUTH,2629 NL80211_MESH_SETUP_USERSPACE_AUTH,
2625 NL80211_MESH_SETUP_USERSPACE_AMPE,2630 NL80211_MESH_SETUP_USERSPACE_AMPE,
2626 NL80211_MESH_SETUP_ENABLE_VENDOR_SYNC,2631 NL80211_MESH_SETUP_ENABLE_VENDOR_SYNC,
2632 NL80211_MESH_SETUP_USERSPACE_MPM,
2627 2633
2628 /* keep last */2634 /* keep last */
2629 __NL80211_MESH_SETUP_ATTR_AFTER_LAST,2635 __NL80211_MESH_SETUP_ATTR_AFTER_LAST,
@@ -3526,6 +3532,10 @@ enum nl80211_ap_sme_features { · 896 unmodified lines
3526 * stations the authenticated/associated bits have to be set in the mask.3532 * stations the authenticated/associated bits have to be set in the mask.
3527 * @NL80211_FEATURE_ADVERTISE_CHAN_LIMITS: cfg80211 advertises channel limits3533 * @NL80211_FEATURE_ADVERTISE_CHAN_LIMITS: cfg80211 advertises channel limits
3528 * (HT40, VHT 80/160 MHz) if this flag is set3534 * (HT40, VHT 80/160 MHz) if this flag is set
3535 * @NL80211_FEATURE_USERSPACE_MPM: This driver supports a userspace Mesh
3536 * Peering Management entity which may be implemented by registering for
3537 * beacons or NL80211_CMD_NEW_PEER_CANDIDATE events. The mesh beacon is
3538 * still generated by the driver.
3529 */3539 */
3530enum nl80211_feature_flags {3540enum nl80211_feature_flags {
3531 NL80211_FEATURE_SK_TX_STATUS = 1 << 0,3541 NL80211_FEATURE_SK_TX_STATUS = 1 << 0,
@@ -3544,6 +3554,7 @@ enum nl80211_feature_flags { · 12 unmodified lines
3544 /* bit 13 is reserved */3554 /* bit 13 is reserved */
3545 NL80211_FEATURE_ADVERTISE_CHAN_LIMITS = 1 << 14,3555 NL80211_FEATURE_ADVERTISE_CHAN_LIMITS = 1 << 14,
3546 NL80211_FEATURE_FULL_AP_CLIENT_STATE = 1 << 15,3556 NL80211_FEATURE_FULL_AP_CLIENT_STATE = 1 << 15,
3557 NL80211_FEATURE_USERSPACE_MPM = 1 << 16,
3547};3558};
3548 3559
3549/**3560/**

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t