Git Product home page Git Product logo

python-radiotap's Introduction

Radiotap

Radiotap is a de facto standard for 802.11 frame injection and reception. This page intends to document its progress and development and serve as a forum for developers helping to advance this standard.

python-radiotap's People

Contributors

andreamerello avatar bcopeland avatar jmberg avatar kristahi avatar rupello avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

python-radiotap's Issues

Import errors under Python 3

Because the radiotap module uses some implicit relative imports (e.g. from vht import * where vht.py is a file in the same directory), it does not run under Python 3.

Python 3 has completely removed support for such implicit relative imports (see PEP 404), relative imports must be explicitly specified to avoid shadowing names.

Otherwise, everything works fine in Python 3.

I will be submitting a PR shortly which changes the imports to be explicitly relative. This is backwards compatible with Python 2.7.

Python 3 compatibility in tests

Hi again,

following up on #5, I realized I had forgotten to commit changes to tests/parse.py to make it run properly under Python 3.

I've cleaned up the changes and made sure they work correctly in Python 2.7 as well as 3.
I grabbed (with attribution) the iterbytes function from the six module, which is MIT licensed so should be compatible licensing-wise.

Submitting PR shortly.

parse_xchannel parses incorrectly

The _parse_xchannel routine is not aligning to the required 4-octet alignment per the XChannel documentation. I fixed mine by:

def _parse_xchannel(packet, offset):
    mod_4_offset = offset - offset % -4
    xchannel_flags, xchannel_freq, xchannel_num, xchannel_maxpower = \
        struct.unpack_from('<IHBB', packet, mod_4_offset)
    return mod_4_offset + 8, {
        'xchannel_flags' : xchannel_flags,
        'xchannel_freq' : xchannel_freq,
        'xchannel_num' : xchannel_num,
        'xchannel_maxpower' : xchannel_maxpower
    }

The improper alignment was causing IndexError exceptions in the _parse_mcs due to it starting at an improper offset.

Fragment number is 4 bit (currently 2 bit)

Hi,
may I am wrong, but as I read the ieee802.11 standard, the fragment number should be 4 bit of the sequence control field, as far as I understand this line it is currently only 2 bit. Or am I wrong?

Thx for the library anyway.

Kind regards
Alex

pypi package

Hey,

is it possible to make a pypi package for this library?

I could do a PR if needed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.