From patchwork Fri Apr 5 14:46:21 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marek Puzyniak X-Patchwork-Id: 2399051 Return-Path: X-Original-To: patchwork-linux-wireless@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork1.kernel.org (Postfix) with ESMTP id 1739D3FD8C for ; Fri, 5 Apr 2013 14:46:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1161855Ab3DEOqe (ORCPT ); Fri, 5 Apr 2013 10:46:34 -0400 Received: from ebb06.tieto.com ([131.207.168.38]:64897 "EHLO ebb06.tieto.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1161852Ab3DEOqd (ORCPT ); Fri, 5 Apr 2013 10:46:33 -0400 X-AuditID: 83cfa826-b7f976d0000003c6-4f-515ee3c79fce Received: from FIHGA-EXHUB01.eu.tieto.com ( [131.207.136.34]) by ebb06.tieto.com (SMTP Mailer) with SMTP id 23.7F.00966.7C3EE515; Fri, 5 Apr 2013 17:46:31 +0300 (EEST) Received: from localhost.localdomain (10.28.19.90) by inbound.tieto.com (131.207.136.49) with Microsoft SMTP Server id 8.3.297.1; Fri, 5 Apr 2013 17:46:31 +0300 From: Marek Puzyniak To: CC: , , Marek Puzyniak Subject: [PATCH] mac80211: provide SSID for IBSS vif Date: Fri, 5 Apr 2013 16:46:21 +0200 Message-ID: <1365173181-5142-1-git-send-email-marek.puzyniak@tieto.com> X-Mailer: git-send-email 1.7.0.4 MIME-Version: 1.0 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrIIsWRmVeSWpSXmKPExsXSfL5DSff447hAg+1PFSw+bvjEYvFmxR12 i609Eg7MHv2921g8rnxfzejxeZNcAHMUl01Kak5mWWqRvl0CV8ah5mmMBXNFK+4c0WtgPCvY xcjJISFgIvHu3h82CFtM4sK99UA2F4eQwCpGiR0NW9khnCWMEh92zAOrYhPQl+jccYwFxBYR kJH4d2MuM4jNLJAn8enkGbC4MMjU21vB6lkEVCQ2Lz0OZvMKuEsc7F/JArFNQaJ12SF2iLig xMmZT1gg5khIHHzxAmymkICqxJVZf9gnMPLNQlI2C0nZAkamVYz8qUlJBmZ6JZmpJfl6yfm5 mxjBIbVCbQfjswdShxgFOBiVeHgtbscFCrEmlhVX5h5ilORgUhLlPX4LKMSXlJ9SmZFYnBFf VJqTWnyIUYKDWUmE9/YNoBxvSmJlVWpRPkxKmoNFSZzXZZNtoJBAemJJanZqakFqEUxWhoND SYI39BFQo2BRanpqRVpmTglCmomDE2Q4D9DwSJAa3uKCxNzizHSI/ClGRSlxXl+QhABIIqM0 D64XFvOvGMWBXhHmLQOp4gGmC7juV0CDmYAGT70bDTK4JBEhJdXAyF+3TGXKTffW7vjstQuW tEyemfDr7FaJBzz3Z/+Ye0frjf+vxQqy0pZ5hpkGB+6sv7L5qtMkyanuqktff+C5Xvnpc1EY S+KHxcEfD1+sW7A4pzVQ9uTPbztOvpboUogutD/VtyQ4uGzpsVNLPG2m+12sWhJxPuNmuUJZ 3aLZoUm6/MVLC4r9eZVYijMSDbWYi4oTAcLH9p3UAgAA Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org Some drivers need SSID in AP and IBSS mode. AP SSID is provided through BSS_CHANGED_SSID notification. There was no easy way to do the same for IBSS. In IBSS mode SSID is known but was not stored in BSS configuration. This patch provides functionality which stores IBSS ssid in BSS conf and expands BSS_CHANGED_SSID notification to cover also IBSS mode. Signed-off-by: Marek Puzyniak --- include/net/mac80211.h | 4 ++-- net/mac80211/ibss.c | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/include/net/mac80211.h b/include/net/mac80211.h index dd73b8c..68330f3 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h @@ -209,7 +209,7 @@ struct ieee80211_chanctx_conf { * @BSS_CHANGED_QOS: QoS for this association was enabled/disabled. Note * that it is only ever disabled for station mode. * @BSS_CHANGED_IDLE: Idle changed for this BSS/interface. - * @BSS_CHANGED_SSID: SSID changed for this BSS (AP mode) + * @BSS_CHANGED_SSID: SSID changed for this BSS (AP and IBSS mode) * @BSS_CHANGED_AP_PROBE_RESP: Probe Response changed for this BSS (AP mode) * @BSS_CHANGED_PS: PS changed for this BSS (STA mode) * @BSS_CHANGED_TXPOWER: TX power setting changed for this interface @@ -326,7 +326,7 @@ enum ieee80211_rssi_event { * your driver/device needs to do. * @ps: power-save mode (STA only). This flag is NOT affected by * offchannel/dynamic_ps operations. - * @ssid: The SSID of the current vif. Only valid in AP-mode. + * @ssid: The SSID of the current vif. Valid in AP and IBSS mode. * @ssid_len: Length of SSID given in @ssid. * @hidden_ssid: The SSID of the current vif is hidden. Only valid in AP-mode. * @txpower: TX power in dBm diff --git a/net/mac80211/ibss.c b/net/mac80211/ibss.c index 539d4a1..dd86ef7 100644 --- a/net/mac80211/ibss.c +++ b/net/mac80211/ibss.c @@ -194,6 +194,8 @@ static void __ieee80211_sta_join_ibss(struct ieee80211_sub_if_data *sdata, sdata->vif.bss_conf.enable_beacon = true; sdata->vif.bss_conf.beacon_int = beacon_int; sdata->vif.bss_conf.basic_rates = basic_rates; + sdata->vif.bss_conf.ssid_len = ifibss->ssid_len; + memcpy(sdata->vif.bss_conf.ssid, ifibss->ssid, ifibss->ssid_len); bss_change = BSS_CHANGED_BEACON_INT; bss_change |= ieee80211_reset_erp_info(sdata); bss_change |= BSS_CHANGED_BSSID; @@ -202,6 +204,7 @@ static void __ieee80211_sta_join_ibss(struct ieee80211_sub_if_data *sdata, bss_change |= BSS_CHANGED_BASIC_RATES; bss_change |= BSS_CHANGED_HT; bss_change |= BSS_CHANGED_IBSS; + bss_change |= BSS_CHANGED_SSID; /* * In 5 GHz/802.11a, we can always use short slot time.