History

nl80211: Add CMD_CONTROL_PORT_FRAME API

This commit also adds cfg80211_rx_control_port function. This is used to generate a CMD_CONTROL_PORT_FRAME event out to userspace. The conn_owner_nlportid is used as the unicast destination. This means that userspace must specify NL80211_ATTR_SOCKET_OWNER flag if control port over nl80211 routing is requested in NL80211_CMD_CONNECT, NL80211_CMD_ASSOCIATE, NL80211_CMD_START_AP or IBSS/mesh join.

Denis Kenzior committed 8 years ago

Commit 6a671a51 parent 4d191c74 files · +114 −0Browse files

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

Unified · Split

include/uapi/linux/nl80211.h+13−0
@@ -990,6 +990,17 @@ · 989 unmodified lines
990 * &NL80211_CMD_CONNECT or &NL80211_CMD_ROAM. If the 4 way handshake failed990 * &NL80211_CMD_CONNECT or &NL80211_CMD_ROAM. If the 4 way handshake failed
991 * &NL80211_CMD_DISCONNECT should be indicated instead.991 * &NL80211_CMD_DISCONNECT should be indicated instead.
992 *992 *
993 * @NL80211_CMD_CONTROL_PORT_FRAME: Control Port (e.g. PAE) frame TX request
994 * and RX notification. This command is used both as a request to transmit
995 * a control port frame and as a notification that a control port frame
996 * has been received. %NL80211_ATTR_FRAME is used to specify the
997 * frame contents. The frame is the raw EAPoL data, without ethernet or
998 * 802.11 headers.
999 * When used as an event indication %NL80211_ATTR_CONTROL_PORT_ETHERTYPE,
1000 * %NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT and %NL80211_ATTR_MAC are added
1001 * indicating the protocol type of the received frame; whether the frame
1002 * was received unencrypted and the MAC address of the peer respectively.
1003 *
993 * @NL80211_CMD_RELOAD_REGDB: Request that the regdb firmware file is reloaded.1004 * @NL80211_CMD_RELOAD_REGDB: Request that the regdb firmware file is reloaded.
994 *1005 *
995 * @NL80211_CMD_EXTERNAL_AUTH: This interface is exclusively defined for host1006 * @NL80211_CMD_EXTERNAL_AUTH: This interface is exclusively defined for host
@@ -1228,6 +1239,8 @@ enum nl80211_commands { · 232 unmodified lines
1228 1239
1229 NL80211_CMD_STA_OPMODE_CHANGED,1240 NL80211_CMD_STA_OPMODE_CHANGED,
1230 1241
1242 NL80211_CMD_CONTROL_PORT_FRAME,
1243
1231 /* add new commands above here */1244 /* add new commands above here */
1232 1245
1233 /* used to define NL80211_CMD_MAX below */1246 /* used to define NL80211_CMD_MAX below */