18 Jul, 2007

1 commit

  • Currently, a function misnamed ieee80211_init_client() is used to handle
    regulatory domain control. It is called from
    ieee80211_register_hwmode(), which typically runs 2 or 3 times
    (802.11a/b/g), but each time it iterates over all the modes.

    This patch cleans this up and removes the confusion:
    ieee80211_init_client was effectively renamed to
    ieee80211_set_default_regdomain and is now run on a per-mode basis
    (doesn't have to deal with netdevs). I also moved the regdomain handling
    code into its own file and added some documentation.

    Signed-off-by: Daniel Drake
    Acked-by: Jiri Benc
    Signed-off-by: John W. Linville

    Daniel Drake
     

13 Jul, 2007

5 commits

  • Currently, CTS protection is partially implemented twice:
    1. via prism2 ioctls, only used by hostapd
    2. via STA beacon parsing, recorded in sta.use_protection but never used
    (other than printed in debugfs)

    Protection control should be implemented on a per-subif basis. For example,
    a single physical device may be running a soft AP on one channel, and a STA
    on another. The AP interface should use protection based on what hostapd told
    it, and the STA interface should use protection based on beacon parsing.
    These should operate independantly: one subif using protection should not
    influence the other.

    To implement this, I moved the use_protection flag into ieee80211_sub_if_data
    and removed the device-global cts_protect_erp_frames flag.

    I also made the PRISM2_PARAM_CTS_PROTECT_ERP_FRAMES write operation only
    available for AP interfaces, to avoid any possibility of the user messing with
    the behaviour of a STA.

    Signed-off-by: Daniel Drake
    Signed-off-by: Jiri Benc
    Signed-off-by: John W. Linville

    Daniel Drake
     
  • The "protection needed" flag is currently parsed out of the ERP IE in
    beacons. This patch allows the ERP IE to be available at assocation time
    and causes the appropriate actions to be performed earlier.

    It is slightly complicated by the fact that most APs don't include the
    ERP IE in association responses. To work around this, we store ERP
    values in the ieee80211_sta_bss structure.

    Also added some WLAN_ERP defines for use by upcoming patches.

    Signed-off-by: Jiri Benc
    Signed-off-by: John W. Linville

    Daniel Drake
     
  • These aren't used anywhere (hostapd, wpa_supplicant) and until we
    have a proper interface to the rate control algorithms they don't
    make much sense either since e.g. rc80211_lowest won't honour them.

    Signed-off-by: Johannes Berg
    Signed-off-by: Jiri Benc
    Signed-off-by: John W. Linville

    Johannes Berg
     
  • This patch separates the monitor interface start_xmit from the
    subif start xmit (those other devices have 802.3 framing, monitor
    interfaces have radiotap framing)

    Signed-off-by: Johannes Berg
    Signed-off-by: Jiri Benc
    Signed-off-by: John W. Linville

    Johannes Berg
     
  • This patch makes mac80211 show transmitted frames on monitor interfaces,
    including radiotap headers that indicate some transmission parameters.
    The shown parameters will need to be expanded, but this should work as
    a basis to work from.

    Signed-off-by: Johannes Berg
    Signed-off-by: Jiri Benc
    Signed-off-by: John W. Linville

    Johannes Berg
     

06 May, 2007

2 commits