From eed19490e92a2306ff10368f48ddae940b1ea9e2 Mon Sep 17 00:00:00 2001 From: Ian Gulliver Date: Sat, 10 Jan 2015 06:49:17 +0000 Subject: [PATCH] Add GetIfIndex() --- nl80211.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/nl80211.py b/nl80211.py index fe8b1f3..feeb56f 100755 --- a/nl80211.py +++ b/nl80211.py @@ -1,5 +1,6 @@ #!/usr/bin/python2.7 +import fcntl import os import random import socket @@ -346,6 +347,14 @@ class NL80211(object): return self._gnl.Recv() +def GetIfIndex(if_name): + SIOCGIFINDEX = 0x8933 + sockfd = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + ifreq = struct.pack('16si', if_name, 0) + res = fcntl.ioctl(sockfd, SIOCGIFINDEX, ifreq) + return struct.unpack("16si", res)[1] + + nl = NL80211() -nl.Send(Netlink.NLMSG_F_DUMP, nl.CMD_GET_STATION, 0, ifindex=10) +nl.Send(Netlink.NLMSG_F_DUMP, nl.CMD_GET_STATION, 0, ifindex=GetIfIndex('wlan0')) print list(nl.Recv())