From: Johannes Berg <johannes@sipsolutions.net>
To: Jouni Malinen <jouni.malinen@atheros.com>
Cc: "John W. Linville" <linville@tuxdriver.com>,
linux-wireless@vger.kernel.org, Jouni Malinen <j@w1.fi>
Subject: Re: [PATCH 4/4] nl80211: Add MLME primitives to support external SME
Date: Thu, 19 Mar 2009 19:59:57 +0100 [thread overview]
Message-ID: <1237489197.5100.112.camel@johannes.local> (raw)
In-Reply-To: <20090319114808.301521477@atheros.com>
[-- Attachment #1: Type: text/plain, Size: 2224 bytes --]
On Thu, 2009-03-19 at 13:39 +0200, Jouni Malinen wrote:
> + if (info->attrs[NL80211_ATTR_WIPHY_FREQ]) {
> + req.chan = ieee80211_get_channel(
> + wiphy,
> + nla_get_u32(info->attrs[NL80211_ATTR_WIPHY_FREQ]));
> + if (!req.chan) {
> + err = -EINVAL;
> + goto out;
> + }
> + }
Validate the channel is permitted?
> + if (info->attrs[NL80211_ATTR_AUTH_TYPE]) {
> + req.auth_type =
> + nla_get_u32(info->attrs[NL80211_ATTR_AUTH_TYPE]);
> + }
We should validate the auth type is one of the four valid ones, I think.
> + if (nla_len(info->attrs[NL80211_ATTR_SSID]) > IEEE80211_MAX_SSID_LEN) {
> + err = -EINVAL;
> + goto out;
> + }
That seems unnecessary since your netlink policy restricts it already.
> + if (info->attrs[NL80211_ATTR_REASON_CODE])
> + req.reason_code =
> + nla_get_u16(info->attrs[NL80211_ATTR_REASON_CODE]);
Should probably require non-zero? Same in disassoc, I guess.
Since disassoc and deauth are really almost the same, maybe use one
function and multiplex like nl80211_addset_beacon?
> +static int ieee80211_auth(struct wiphy *wiphy, struct net_device *dev,
> + struct cfg80211_auth_request *req)
> +{
> + struct ieee80211_sub_if_data *sdata;
> +
> + if (!netif_running(dev))
> + return -ENETDOWN;
Should probably be in cfg80211 directly, I think, to enforce this across
drivers.
> + sdata = IEEE80211_DEV_TO_SUB_IF(dev);
> +
> + if (sdata->vif.type != NL80211_IFTYPE_STATION)
> + return -EOPNOTSUPP;
That too.
> + switch (req->auth_type) {
> + case NL80211_AUTHTYPE_OPEN_SYSTEM:
> + sdata->u.mgd.auth_algs = IEEE80211_AUTH_ALG_OPEN;
> + break;
> + case NL80211_AUTHTYPE_SHARED_KEY:
> + sdata->u.mgd.auth_algs = IEEE80211_AUTH_ALG_SHARED_KEY;
> + break;
> + case NL80211_AUTHTYPE_FT:
> + sdata->u.mgd.auth_algs = IEEE80211_AUTH_ALG_FT;
> + break;
> + case NL80211_AUTHTYPE_NETWORK_EAP:
> + sdata->u.mgd.auth_algs = IEEE80211_AUTH_ALG_LEAP;
> + break;
> + default:
> + return -EOPNOTSUPP;
and I already said the "default" part here should be too (though it
should stick around here if we ever add new mechanisms)
Similarly in assoc, of course.
otherwise looks good.
johannes
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
prev parent reply other threads:[~2009-03-19 19:00 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-19 11:39 [PATCH 0/4] nl80211/mac80211: Add MLME primitives for auth/assoc Jouni Malinen
2009-03-19 11:39 ` [PATCH 1/4] mac80211: Fix a typo in assoc vs. reassoc check Jouni Malinen
2009-03-19 18:45 ` Johannes Berg
2009-03-19 11:39 ` [PATCH 2/4] mac80211: Fix reassociation by not clearing previous BSSID Jouni Malinen
2009-03-19 18:45 ` Johannes Berg
2009-03-19 11:39 ` [PATCH 3/4] nl80211: Event notifications for MLME events Jouni Malinen
2009-03-19 18:47 ` Johannes Berg
2009-03-19 11:39 ` [PATCH 4/4] nl80211: Add MLME primitives to support external SME Jouni Malinen
2009-03-19 18:59 ` Johannes Berg [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1237489197.5100.112.camel@johannes.local \
--to=johannes@sipsolutions.net \
--cc=j@w1.fi \
--cc=jouni.malinen@atheros.com \
--cc=linux-wireless@vger.kernel.org \
--cc=linville@tuxdriver.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.