1. 05 Dec, 2018 3 commits
    • Cody Schuffelen's avatar
      mac80211-next: rtnetlink wifi simulation device · c7cdba31
      Cody Schuffelen authored
      This device takes over an existing network device and produces a
      new one that appears like a wireless connection, returning enough canned
      responses to nl80211 to satisfy a standard connection manager. If
      necessary, it can also be set up one step removed from an existing
      network device, such as through a vlan/80211Q or macvlan connection to
      not disrupt the existing network interface.
      
      To use it to wrap a bare ethernet connection:
      
      ip link add link eth0 name wlan0 type virt_wifi
      
      You may have to rename or otherwise hide the eth0 from your connection
      manager, as the original network link will become unusuable and only
      the wireless wrapper will be functional. This can also be combined with
      vlan or macvlan links on top of eth0 to share the network between
      distinct links, but that requires support outside the machine for
      accepting vlan-tagged packets or packets from multiple MAC addresses.
      
      This is being used for Google's Remote Android Virtual Device project,
      which runs Android devices in virtual machines. The standard network
      interfaces provided inside the virtual machines are all ethernet.
      However, Android is not interested in ethernet devices and would rather
      connect to a wireless interface. This patch allows the virtual machine
      guest to treat one of its network connections as wireless rather than
      ethernet, satisfying Android's network connection requirements.
      
      We believe this is a generally useful driver for simulating wireless
      network connections in other environments where a wireless connection is
      desired by some userspace process but is not available.
      
      This is distinct from other testing efforts such as mac80211_hwsim by
      being a cfg80211 device instead of mac80211 device, allowing straight
      pass-through on the data plane instead of forcing packaging of ethernet
      data into mac80211 frames.
      Signed-off-by: default avatarA. Cody Schuffelen <schuffelen@google.com>
      Acked-by: default avatarAlistair Strachan <astrachan@google.com>
      Acked-by: default avatarGreg Hartman <ghartman@google.com>
      Acked-by: default avatarTristan Muntsinger <muntsinger@google.com>
      [make it a tristate]
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      c7cdba31
    • Stephen Hemminger's avatar
      uapi/nl80211: fix spelling errors · cc1068eb
      Stephen Hemminger authored
      Spelling errors found by codespell
      Signed-off-by: default avatarStephen Hemminger <stephen@networkplumber.org>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      cc1068eb
    • James Prestwood's avatar
      mac80211_hwsim: fixes kernel crash during mac80211_hwsim init · 082b12d4
      James Prestwood authored
      Creating radios during startup follows a different code path than
      HWSIM_CMD_NEW_RADIO. The problem was that param.iftypes was not
      being set to the deafult before calling mac80211_hwsim_new_radio
      Signed-off-by: default avatarJames Prestwood <james.prestwood@linux.intel.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      082b12d4
  2. 09 Nov, 2018 37 commits