o added functions:
- isup
- covclassget
- retryshortget
- retrylongget
- ifinfo
o modified devadd. User is allowed to submit a Card object or a physical index
o removed hardcoded values for covclassset, retry(short|long)set, retsthreshet and
fragrthreshset
- constants now defined in wlan.h (see below)
o removed return True where redundant i.e. when setting mac address we can assume
it worked if no error was thrown
o renamed ieee80211_h to wlan
o didn't like the incestual circular pyric error (libnl shouldn't know about pyric)
- replaced pyric.error with defined error in libnl and libio
- pyw has to catch libnl and libio errors and reraise as pyric errors
- retooled exception messages
o added new functions from 0.1.3 and 0.1.4 to unittests
o updated nl80211_h w/ additional constants included in kernel v 4 header
o added propietary concept of set to netlink processing
- nl80211 appears to define a set of like-sized elements (see cipher_suites)
o modified pyric exceptions
- imports errno codes into pyric, conforming how functions access error codes
v 0.1.5 Begin STA associated functionality
o added functions:
- isconnected
- disconnect
- link
- stainfo
- devset
- phylist
- openconnect (doesn't currently work)
- phyadd (renamed from original devadd, iw phy <phy> interface add ...)
- devadd (iw dev <dev> interface add ....)
o updated nested netlink attribute handling - my understanding of it was incomplete
- There are still occasional errors
- nested attributes are parsed as 'far' as possible
o reupdated nested netlink attribute handling - this time it really works :)
- nested attributes are now parsed correctly, any errors are a result of
incorrect packing on the other side or packet corruption and the entire
unparsed attribute will be returned.
- nla_parse_nested has been changed to return a list of tuples
t = (index,attribute) which (TODO 41) eases the burden on the calling
function
- fixed 're'nesting of nested attributes
- parsing wiphy bands (issue 7) is now fully functional and no longer relies
on a hacked fix
o devstds now uses phyinfo to determine standards Card supports
o completely 'remodeled' functions in pyw to take advantage of new parsing
from libnl (have left some of the error checking in place as a backup until
testing confirms that the new nla_parse_nested is bug-free)
o fixed error on devadd during restoration in examples/pentest.py
o fixed output error, incorrect labeling
o fixed output error ASW max tx power
o added phylist w.r.t issue 17
o fixed devfreqs, devchs after updating phyinfo
o add support for python3 (keeping compability with python2.7)
- urllib2 vs urllib
- replaced map with list comprehensions
- replaced xrange with range
- python 3.5 compatible. python 3.0 is compatible except for examples and
pyw.unittest.pyw (see corresponding files for reasons)
- python 2.7 is the preferred (for me at least) 'medium' and compatibly issues
with python 3 have been rectified at the expense of python 3 and not python 2
o fixed incorrect frequencies in unii_5_C2F in utils/channels
o updated pyw.unittest for python 3.5 and for added functions
o added by band to channels and freqs in utils/channels.py
v 0.1.6 Continue with STA functionality
o Issue 21 resolved. openconnect (renamed to connect) now works. (had to fix
how the ssid was being passed. as a string with an affixed null byte, it would
fail but as unspec, it succeeded)
- issue 1: wpa_supplicant must be turned off
- issue 2: caller/user must configure dhcp request or inet themselves
- issue 3: only works on open networks
o Issue 24 (TODO 50) resolved. getcard which is the entry point for any
nl80211 functionality uses devinfo to retrieve the Card tuple. devinfo will
now report No Such device as two seperate errors one identifying when there
is no device currently present on the machine and one identifying when the
specified dev's driver does not support nl80211
o fixed TypeError resulting from raising pyric.error incorrectly
o phyadd accepts either a card or a phy
o added freqget
o Note: w.r.t https://wraithwireless.wordpress.com/2016/07/24/linux-kernel-bug/
have tested further, phyadd,devadd will work (i.e. not rename the card)
under the following conditions a) the type is not managed or b) there is no
other device currently associated with the new card's phy. Have also determined
that integrated cards are also suspect to this bug?
o made pyric error messages less ambiguous
o changed template and stub so that all pyw functions can now use named parameters
if desired
- i.e. pyw.freqset(card=<Card>,rf=2412,nlsock=<nlsocket>) or
pyw.freqset(<Card>,2412,None,<nlsocket>)
o renamed the following functions:
- inetget to ifaddrget
- inetset to ifaddrset
- ip4set to inetset
- netmaskset to maskset
- broadcastset to bcastset
o adddres related functions mac and ifaddr return True on success, False otherwise
o commented out constants in sockios_h that are not being used
- no significant change but will reduce bytecode size
o fixed error in iswireless (referenced in wifiphisher 329)
o fixed phylist failure for OpenWRT as pointed out by sarom5
o Corrected README.md (Issue 27)
o Added scripts directory
- added ouiupdate.py to scripts directory