How programs access wireless adapters?

Probably a stupid question but I'll try my hand at nonetheless.

I wrote part of my thesis and based part of my 3rd year's college project on a tool that utilizes other wireless cracking programs, the tool was written in Python. It was basically a GUI wrapper around non GUI applications(Pyrit,CowPatty and the Aircrack-ng suite). It also had a series of other pertinent features.

I'm quite ashamed to admit, I do not know the underlying details of how these tools were actually written at the lowest level, and when I mean lowest level I specifically mean, how does the program (such as aircrack-ng) communicate with the wireless adapter or any network interface for that matter or in other words how does the program get details from the adapter such as wireless signal strength, number of packets it has received etc. The Aircrack-ng suite is mainly used on Linux but as far as I know it also has been ported to Windows.

Does Aircrack-ng call some Linux API functions (or Windows) in order to get this information?

The basic info should be reachable via the driver and OS calls.
is this what you want to see?

Its not part of C++ core language, so yes, its via some library, API, etc call.
Last edited on
That indeed looks correct :)

I'm guessing applications like wireshark and other packet sniffers would also use a lot of system API calls.

Thanks Jonnin
I think wireshark is open to view the code, or at least an older version is... take a look :)
Registered users can post here. Sign in or register to post.