sysprog21 / vwifi

A virtual wireless device driver for Linux
MIT License
203 stars 39 forks source link

`iw dev owl0 link` get Operation not supported (-95) #12

Closed dungru closed 2 years ago

dungru commented 2 years ago

After connecting to MyHomeWiFi, use iw command to check the link Get the following message:

 $ iw dev owl0 link
Connected to 26:05:d1:60:34:c8 (on owl0)
    SSID: MyHomeWiFi
    freq: 2437
command failed: Operation not supported (-95)

Decode Netlink Message: tracenl -- iw dev owl0 link

[56804] sendmsg(fd=3, msg=0x00007ffc62879340, flags=0x0000000000000000) = 40 (0x0000000000000028)
  {'attrs': [('NL80211_ATTR_IFINDEX', 26),
             ('NL80211_ATTR_MAC', '26:05:d1:60:34:c8')],
   'cmd': 17,
   'header': {'flags': 5,
              'length': 40,
              'pid': 432070116,
              'sequence_number': 1648345252,
              'type': 34},
   'reserved': 0,
   'version': 0}
[56804] recvmsg(fd=3, msg=0x00007ffc628792d0, flags=0x0000000000000022) = 60 (0x000000000000003c)
  {'attrs': [('NL80211_ATTR_UNSPEC', None)],
   'cmd': 161,
   'header': {'flags': 0,
              'length': 60,
              'pid': 432070116,
              'sequence_number': 1648345252,
              'type': 2},
   'reserved': 65535,
   'version': 255}
[56804] recvmsg(fd=3, msg=0x00007ffc628792d0, flags=0x0000000000000000) = 60 (0x000000000000003c)
  {'attrs': [('NL80211_ATTR_UNSPEC', None)],
   'cmd': 161,
   'header': {'flags': 0,
              'length': 60,
              'pid': 432070116,
              'sequence_number': 1648345252,
              'type': 2},
   'reserved': 65535,
   'version': 255}
command failed: Operation not supported (-95)
*** Process 56804 exited with code 161 ***
dungru commented 2 years ago

linux-5.16.14/net/wireless/nl80211.c

static int nl80211_get_station(struct sk_buff *skb, struct genl_info *info)
{
    struct cfg80211_registered_device *rdev = info->user_ptr[0];
    struct net_device *dev = info->user_ptr[1];
    ...

    if (!rdev->ops->get_station)
        return -EOPNOTSUPP;