Search Linux Wireless

Re: nl80211 userspace

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I think it would be nice to have ifconfig for all interface
configuration as they have done in openbsd, it's better to have one
tool for all. What do you think ?

2007/2/14, Johannes Berg <johannes@xxxxxxxxxxxxxxxx>:
Hi,

I've been playing a bit with parsing a modified nl80211 header file to
get a tool and

 http://git.sipsolutions.net/pynl80211.git/

is what I currently have. It doesn't
actually send netlink messages yet but that ought to be trivial to add,
I'm too lazy right now to look up all the exact binary stuff. Python
does have a "struct" module that can be used to pack things into binary
so it's really easy :)

Anyway. The repository contains a modified nl80211.h and the tool relies on
a lot of things to be correct in it, see parse.py.

Examples:
$ ./wificonf.py help configure
./wificonf.py configure ifindex [ssid=...] [transmit_power=...] [frag_threshold=...] [channel=...] [rx_sensitivity=...]
        ifindex: interface name or index
        ssid: string (1-32 bytes)
        transmit_power: u32
        frag_threshold: u32
        channel: u32
        rx_sensitivity: u32
$ ./wificonf.py help set_roaming_control
./wificonf.py set_roaming_control ifindex roaming_control
        ifindex: interface name or index
        roaming_control: kernel, userspace
$ ./wificonf.py configure eth1 ssid="my ssid" channel=7 frag_threshold=580
TODO: construct a netlink message with command number 9
and the following attributes
        1: 4
        18: 'my ssid'
        20: 580
        12: 7
$ ./wificonf.py set_fixed_bssid eth1 0:1:2:3:4:ff
TODO: construct a netlink message with command number 17
and the following attributes
        1: 4
        15: '\x00\x01\x02\x03\x04\xff'

(ifindex is looked up via sysfs: /sys/class/net/<name>/ifindex)

Obviously parsing the response netlink message is missing too :)

Included also is a check shell script that will use wificonf's parser to
make sure the header file was parsed correctly wrt the numbers of the
constants (since I don't have a C parser built into it.)

johannes




--
As you read this post global entropy rises. Have Fun ;-)
Nick
-
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux