11 Dec, 2009

1 commit


10 Dec, 2009

1 commit


05 Dec, 2009

3 commits

  • David S. Miller
     
  • The regulatory messages in syslog look weird:

    kernel: cfg80211: Regulatory domain: US
    kernel: ^I(start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
    kernel: ^I(2402000 KHz - 2472000 KHz @ 40000 KHz), (600 mBi, 2700 mBm)
    kernel: ^I(5170000 KHz - 5190000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
    kernel: ^I(5190000 KHz - 5210000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
    kernel: ^I(5210000 KHz - 5230000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
    kernel: ^I(5230000 KHz - 5330000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
    kernel: ^I(5735000 KHz - 5835000 KHz @ 40000 KHz), (600 mBi, 3000 mBm)

    Indent them with four spaces instead of the tab character to get prettier
    output.

    Signed-off-by: Kalle Valo
    Acked: Luis R. Rodriguez
    Signed-off-by: John W. Linville

    Kalle Valo
     
  • I've just noticed that some events are no longer propagated
    for some wireless drivers. Basically, SET request with a extra payload
    for driver without commit handler. The fix is pretty simple, see
    attached.
    Actually, a few lines below this line, you will see that the
    event generation for simple SET (iwpoint-less ?) is done properly,
    and this other event generation does not need fixing.

    Signed-off-by: Jean Tourrilhes
    Signed-off-by: John W. Linville

    Jean Tourrilhes
     

30 Nov, 2009

1 commit


29 Nov, 2009

3 commits

  • With the addition of the *_pmksa cfg80211 ops, we can now add the
    corresponding wireless extensions compatibility handler.

    Signed-off-by: Samuel Ortiz
    Signed-off-by: John W. Linville

    Samuel Ortiz
     
  • This is an interface to set, delete and flush PMKIDs through nl80211.
    Main users would be fullmac devices which firmwares are capable of
    generating the RSN IEs for the re-association requests, e.g. iwmc3200wifi.

    Signed-off-by: Samuel Ortiz
    Signed-off-by: John W. Linville

    Samuel Ortiz
     
  • This patch moves the works cleanup, scan and events to a cfg80211
    dedicated workqueue.

    Platform driver like eeepc-laptop ought to use works to rfkill (as
    new rfkill does lock in rfkill_unregister and the platform driver is
    called from rfkill_switch_all which also lock the same mutex).
    This raise a new issue in itself that the work scheduled by the platform
    driver to the global worqueue calls wiphy_unregister which flush_work
    scan and event works (which thus flush works on the global workqueue inside
    a work on the global workqueue) and also put on hold the wdev_cleanup_work
    (which prevents the dev_put on netdev thus indefinite Usage count error on
    wifi device).

    Signed-off-by: Johannes Berg
    Signed-off-by: Alban Browaeys
    Signed-off-by: John W. Linville

    Alban Browaeys
     

25 Nov, 2009

1 commit


20 Nov, 2009

4 commits

  • With WEXT, it happens frequently that the SME
    requests an authentication but then deauthenticates
    right away because some new parameters came along.
    Every time this happens we print a deauth message
    and send a deauth frame, but both of that is rather
    confusing. Avoid it by aborting the authentication
    process silently, and telling cfg80211 about that.

    The patch looks larger than it really is:
    __cfg80211_auth_remove() is split out from
    cfg80211_send_auth_timeout(), there's no new code
    except __cfg80211_auth_canceled() (a one-liner) and
    the mac80211 bits (7 new lines of code).

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

    Johannes Berg
     
  • A number of people have tried to add a wireless interface
    (in managed mode) to a bridge and then complained that it
    doesn't work. It cannot work, however, because in 802.11
    networks all packets need to be acknowledged and as such
    need to be sent to the right address. Promiscuous doesn't
    help here. The wireless address format used for these
    links has only space for three addresses, the
    * transmitter, which must be equal to the sender (origin)
    * receiver (on the wireless medium), which is the AP in
    the case of managed mode
    * the recipient (destination), which is on the APs local
    network segment

    In an IBSS, it is similar, but the receiver and recipient
    must match and the third address is used as the BSSID.

    To avoid such mistakes in the future, disallow adding a
    wireless interface to a bridge.

    Felix has recently added a four-address mode to the AP
    and client side that can be used (after negotiating that
    it is possible, which must happen out-of-band by setting
    up both sides) for bridging, so allow that case.

    Signed-off-by: Johannes Berg
    Acked-by: Stephen Hemminger
    Signed-off-by: John W. Linville

    Johannes Berg
     
  • It's very likely that not many devices will support
    four-address mode in station or AP mode so introduce
    capability bits for both modes, set them in mac80211
    and check them when userspace tries to use the mode.
    Also, keep track of 4addr in cfg80211 (wireless_dev)
    and not in mac80211 any more. mac80211 can also be
    improved for the VLAN case by not looking at the
    4addr flag but maintaining the station pointer for
    it correctly. However, keep track of use_4addr for
    station mode in mac80211 to avoid all the derefs.

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

    Johannes Berg
     
  • We've accumulated a number of options for wiphys
    which make more sense as flags as we keep adding
    more. Convert the existing ones.

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

    Johannes Berg
     

19 Nov, 2009

5 commits


14 Nov, 2009

5 commits


12 Nov, 2009

2 commits

  • In some situations it might be useful to run a network with an
    Access Point and multiple clients, but with each client bridged
    to a network behind it. For this to work, both the client and the
    AP need to transmit 4-address frames, containing both source and
    destination MAC addresses.
    With this patch, you can configure a client to communicate using
    only 4-address frames for data traffic.
    On the AP side you can enable 4-address frames for individual
    clients by isolating them in separate AP VLANs which are configured
    in 4-address mode.
    Such an AP VLAN will be limited to one client only, and this client
    will be used as the destination for all traffic on its interface,
    regardless of the destination MAC address in the packet headers.
    The advantage of this mode compared to regular WDS mode is that it's
    easier to configure and does not require a static list of peer MAC
    addresses on any side.

    Signed-off-by: Felix Fietkau
    Signed-off-by: John W. Linville

    Felix Fietkau
     
  • Signed-off-by: Felix Fietkau
    Signed-off-by: John W. Linville

    Felix Fietkau
     

10 Nov, 2009

1 commit


06 Nov, 2009

1 commit


05 Nov, 2009

1 commit

  • commit 211a4d12abf86fe0df4cd68fc6327cbb58f56f81
    Author: Johannes Berg
    Date: Tue Oct 20 15:08:53 2009 +0900

    cfg80211: sme: deauthenticate on assoc failure

    accidentally introduced a dead variable, I had
    changed the code to not need it while creating
    the patch and it looks like I forgot to remove
    the variable (and nobody else noticed either).

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

    Johannes Berg
     

03 Nov, 2009

4 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits)
    mac80211: check interface is down before type change
    cfg80211: fix NULL ptr deref
    libertas if_usb: Fix crash on 64-bit machines
    mac80211: fix reason code output endianness
    mac80211: fix addba timer
    ath9k: fix misplaced semicolon on rate control
    b43: Fix DMA TX bounce buffer copying
    mac80211: fix BSS leak
    rt73usb.c : more ids
    ipw2200: fix oops on missing firmware
    gre: Fix dev_addr clobbering for gretap
    sky2: set carrier off in probe
    net: fix sk_forward_alloc corruption
    pcnet_cs: add cis of PreMax PE-200 ethernet pcmcia card
    r8169: Fix card drop incoming VLAN tagged MTU byte large jumbo frames
    ibmtr: possible Read buffer overflow?
    net: Fix RPF to work with policy routing
    net: fix kmemcheck annotations
    e1000e: rework disable K1 at 1000Mbps for 82577/82578
    e1000e: config PHY via software after resets
    ...

    Linus Torvalds
     
  • Currently it is possible to request a scan on only
    disabled channels, which could be problematic for
    some drivers. Reject such scans, and also ignore
    disabled channels that are given. This resuls in
    the scan begin/end event only including channels
    that are actually used.

    This makes the mac80211 check for disabled channels
    superfluous. At the same time, remove the no-IBSS
    check from mac80211 -- nothing says that we should
    not find any networks on channels that cannot be
    used for an IBSS, even when operating in IBSS mode.

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

    Johannes Berg
     
  • Neither of these commands should clear the current configuration value
    if they return error. Furthermore, cfg80211_set_cipher_group() should
    be able to handle IW_AUTH_CIPHER_NONE without reporting error.

    Signed-off-by: Jouni Malinen
    Signed-off-by: John W. Linville

    Jouni Malinen
     
  • commit 211a4d12abf86fe0df4cd68fc6327cbb58f56f81
    Author: Johannes Berg
    Date: Tue Oct 20 15:08:53 2009 +0900

    cfg80211: sme: deauthenticate on assoc failure

    introduced a potential NULL pointer dereference that
    some people have been hitting for some reason -- the
    params.bssid pointer is not guaranteed to be non-NULL
    for what seems to be a race between various ways of
    reaching the same thing.

    While I'm trying to analyse the problem more let's
    first fix the crash. I think the real fix may be to
    avoid doing _anything_ if it ended up being NULL, but
    right now I'm not sure yet.

    I think
    http://bugzilla.kernel.org/show_bug.cgi?id=14342
    might also be this issue.

    Reported-by: Parag Warudkar
    Tested-by: Parag Warudkar
    Signed-off-by: Johannes Berg
    Signed-off-by: John W. Linville

    Johannes Berg
     

31 Oct, 2009

1 commit

  • We can save a lot of code and pointers in the structs
    by using debugfs_remove_recursive().

    First, change cfg80211 to use debugfs_remove_recursive()
    so that drivers do not need to clean up any files they
    added to the per-wiphy debugfs (if and only if they are
    ok to be accessed until after wiphy_unregister!).

    Then also make mac80211 use debugfs_remove_recursive()
    where necessary -- it need not remove per-wiphy files
    as cfg80211 now removes those, but netdev etc. files
    still need to be handled but can now be removed without
    needing struct dentry pointers to all of them.

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

    Johannes Berg
     

30 Oct, 2009

2 commits

  • David S. Miller
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (43 commits)
    net: Fix 'Re: PACKET_TX_RING: packet size is too long'
    netdev: usb: dm9601.c can drive a device not supported yet, add support for it
    qlge: Fix firmware mailbox command timeout.
    qlge: Fix EEH handling.
    AF_RAW: Augment raw_send_hdrinc to expand skb to fit iphdr->ihl (v2)
    bonding: fix a race condition in calls to slave MII ioctls
    virtio-net: fix data corruption with OOM
    sfc: Set ip_summed correctly for page buffers passed to GRO
    cnic: Fix L2CTX_STATUSB_NUM offset in context memory.
    MAINTAINERS: rt2x00 list is moderated
    airo: Reorder tests, check bounds before element
    mac80211: fix for incorrect sequence number on hostapd injected frames
    libertas spi: fix sparse errors
    mac80211: trivial: fix spelling in mesh_hwmp
    cfg80211: sme: deauthenticate on assoc failure
    mac80211: keep auth state when assoc fails
    mac80211: fix ibss joining
    b43: add 'struct b43_wl' missing declaration
    b43: Fix Bugzilla #14181 and the bug from the previous 'fix'
    rt2x00: Fix crypto in TX frame for rt2800usb
    ...

    Linus Torvalds
     

28 Oct, 2009

3 commits


16 Oct, 2009

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (53 commits)
    vmxnet: fix 2 build problems
    net: add support for STMicroelectronics Ethernet controllers.
    net: ks8851_mll uses mii interfaces
    net/fec_mpc52xx: Fix kernel panic on FEC error
    net: Fix OF platform drivers coldplug/hotplug when compiled as modules
    TI DaVinci EMAC: Clear statistics register properly.
    r8169: partial support and phy init for the 8168d
    irda/sa1100_ir: check return value of startup hook
    udp: Fix udp_poll() and ioctl()
    WAN: fix Cisco HDLC handshaking.
    tcp: fix tcp_defer_accept to consider the timeout
    3c574_cs: spin_lock the set_multicast_list function
    net: Teach pegasus driver to ignore bluetoother adapters with clashing Vendor:Product IDs
    netxen: fix pci bar mapping
    ethoc: fix warning from 32bit build
    libertas: fix build
    net: VMware virtual Ethernet NIC driver: vmxnet3
    net: Fix IXP 2000 network driver building.
    libertas: fix build
    mac80211: document ieee80211_rx() context requirement
    ...

    Linus Torvalds