From: Thomas F. Divine on
Let me know if this works for you...

Thomas F Divine
http://www.pcausa.com

"djMax" <djMax(a)discussions.microsoft.com> wrote in message
news:8B59AEA3-BEF0-41FD-86BB-C839AA103D0E(a)microsoft.com...
> Do the open source Linux drivers change this equation at all? I'm dealing
> with constrained hardware - namely the RT73 line of chips, which I know on
> the Linux side support all they need to. Wouldn't that code be the same
> (conceptually) on the Windows side?
>
> "Thomas F. Divine" wrote:
>
>> The approach of treating an 802.11 adapter hardware as a non-network
>> device
>> is the solution for developing active network diagnostic tools on the
>> Windows platform.
>>
>> Unfortunately, adapter vendors use development techniques and have
>> business
>> models that prevent this approach from being practical. On the Windows
>> platform (as well as on others...) adapter vendors use firmware and
>> "hardware abstraction" DLLs that 1.) make it easy to do a ordinary things
>> and 2.) make it difficult to do anything else. This approach effectively
>> hides much of the functionality that is needed for active diagnostics.
>>
>> To follow this approach you will need to work with adapter vendors and
>> obtain their proprietary hardware and software interface descriptions.
>> They
>> don't provide the information that is needed for you to follow this
>> approach.
>>
>> Good luck,
>>
>> Thomas F Divine
>> http://www.pcausa.com
>>
>>
>> "djMax" <djMax(a)discussions.microsoft.com> wrote in message
>> news:D82741B7-EBCD-4E8A-9940-DA2FB42295FF(a)microsoft.com...
>> > Makes painful sense. In my case I don't even want the USB device to
>> > work
>> > for
>> > "normal" wifi. Could I just treat it as an arbitrary piece of hardware
>> > rather than a network card? Or as a non-wireless network card?
>> >
>> > "Thomas F. Divine" wrote:
>> >
>> >> This goal may not be achievable on the Windows platform.
>> >>
>> >> Generally the system 802.11 miniports and adapters are operating in
>> >> the
>> >> "Extensible Station" (ExSTA) mode. In this mode station operation is
>> >> under
>> >> control of the Microsoft Native Wi-Fi software.
>> >>
>> >> Microsoft has decided to provide a crippled capability for ISVs to
>> >> control
>> >> the Native 802.11 miniports. This is called "Network Monitor Operation
>> >> Mode"
>> >> (NetMon). Believe me, they have locked this down so that the term
>> >> "monitor"
>> >> has real meaning. In particular, from the WDK:
>> >>
>> >> "While in NetMon mode, the miniport driver can only receive packets
>> >> based
>> >> on
>> >> the current packet filter settings. The driver cannot send packets
>> >> either
>> >> on
>> >> its own or through a call to its MiniportSendNetBufferLists function"
>> >>
>> >> I don't see the practical possibility of sending raw 802.11 packets as
>> >> being
>> >> achievable because of Microsoft's decision in this regards.
>> >>
>> >> In fact, just getting NetMon mode to work properly is a chore - at
>> >> least
>> >> for
>> >> me. I have some pre-Alpha executables at:
>> >>
>> >> http://www.pcausa.com/WlanExplorer
>> >>
>> >> Thomas F. Divine
>> >> http://www.pcausa.com
>> >>
>> >>
>> >> "djMax" <djMax(a)discussions.microsoft.com> wrote in message
>> >> news:462AD494-39C6-42F6-9152-06885B36C9DB(a)microsoft.com...
>> >> > I'm an experienced programmer (15 yrs, C, Java, C++, C#, etc) but
>> >> > I've
>> >> > not
>> >> > done any driver development. I'm looking to write a driver that
>> >> > sends
>> >> > raw
>> >> > 802.11 packets. Might anyone be kind enough to point me to the best
>> >> > way
>> >> > to
>> >> > get started? (Perhaps a related sample, or an open source driver of
>> >> > some
>> >> > sort)
>> >> >
>> >> > I have installed the WDK and taken a brief look at the network
>> >> > samples,
>> >> > but
>> >> > they don't seem low level enough.
>> >> >
>> >> > Thanks!
>> >>
From: djMax on
So using winusb and libusbdotnet I've been able to connect to the card from
userspace. Now the question is what to say to it. :)

"Thomas F. Divine" wrote:

> Let me know if this works for you...
>
> Thomas F Divine
> http://www.pcausa.com
>
> "djMax" <djMax(a)discussions.microsoft.com> wrote in message
> news:8B59AEA3-BEF0-41FD-86BB-C839AA103D0E(a)microsoft.com...
> > Do the open source Linux drivers change this equation at all? I'm dealing
> > with constrained hardware - namely the RT73 line of chips, which I know on
> > the Linux side support all they need to. Wouldn't that code be the same
> > (conceptually) on the Windows side?
> >
> > "Thomas F. Divine" wrote:
> >
> >> The approach of treating an 802.11 adapter hardware as a non-network
> >> device
> >> is the solution for developing active network diagnostic tools on the
> >> Windows platform.
> >>
> >> Unfortunately, adapter vendors use development techniques and have
> >> business
> >> models that prevent this approach from being practical. On the Windows
> >> platform (as well as on others...) adapter vendors use firmware and
> >> "hardware abstraction" DLLs that 1.) make it easy to do a ordinary things
> >> and 2.) make it difficult to do anything else. This approach effectively
> >> hides much of the functionality that is needed for active diagnostics.
> >>
> >> To follow this approach you will need to work with adapter vendors and
> >> obtain their proprietary hardware and software interface descriptions.
> >> They
> >> don't provide the information that is needed for you to follow this
> >> approach.
> >>
> >> Good luck,
> >>
> >> Thomas F Divine
> >> http://www.pcausa.com
> >>
> >>
> >> "djMax" <djMax(a)discussions.microsoft.com> wrote in message
> >> news:D82741B7-EBCD-4E8A-9940-DA2FB42295FF(a)microsoft.com...
> >> > Makes painful sense. In my case I don't even want the USB device to
> >> > work
> >> > for
> >> > "normal" wifi. Could I just treat it as an arbitrary piece of hardware
> >> > rather than a network card? Or as a non-wireless network card?
> >> >
> >> > "Thomas F. Divine" wrote:
> >> >
> >> >> This goal may not be achievable on the Windows platform.
> >> >>
> >> >> Generally the system 802.11 miniports and adapters are operating in
> >> >> the
> >> >> "Extensible Station" (ExSTA) mode. In this mode station operation is
> >> >> under
> >> >> control of the Microsoft Native Wi-Fi software.
> >> >>
> >> >> Microsoft has decided to provide a crippled capability for ISVs to
> >> >> control
> >> >> the Native 802.11 miniports. This is called "Network Monitor Operation
> >> >> Mode"
> >> >> (NetMon). Believe me, they have locked this down so that the term
> >> >> "monitor"
> >> >> has real meaning. In particular, from the WDK:
> >> >>
> >> >> "While in NetMon mode, the miniport driver can only receive packets
> >> >> based
> >> >> on
> >> >> the current packet filter settings. The driver cannot send packets
> >> >> either
> >> >> on
> >> >> its own or through a call to its MiniportSendNetBufferLists function"
> >> >>
> >> >> I don't see the practical possibility of sending raw 802.11 packets as
> >> >> being
> >> >> achievable because of Microsoft's decision in this regards.
> >> >>
> >> >> In fact, just getting NetMon mode to work properly is a chore - at
> >> >> least
> >> >> for
> >> >> me. I have some pre-Alpha executables at:
> >> >>
> >> >> http://www.pcausa.com/WlanExplorer
> >> >>
> >> >> Thomas F. Divine
> >> >> http://www.pcausa.com
> >> >>
> >> >>
> >> >> "djMax" <djMax(a)discussions.microsoft.com> wrote in message
> >> >> news:462AD494-39C6-42F6-9152-06885B36C9DB(a)microsoft.com...
> >> >> > I'm an experienced programmer (15 yrs, C, Java, C++, C#, etc) but
> >> >> > I've
> >> >> > not
> >> >> > done any driver development. I'm looking to write a driver that
> >> >> > sends
> >> >> > raw
> >> >> > 802.11 packets. Might anyone be kind enough to point me to the best
> >> >> > way
> >> >> > to
> >> >> > get started? (Perhaps a related sample, or an open source driver of
> >> >> > some
> >> >> > sort)
> >> >> >
> >> >> > I have installed the WDK and taken a brief look at the network
> >> >> > samples,
> >> >> > but
> >> >> > they don't seem low level enough.
> >> >> >
> >> >> > Thanks!
> >> >>
From: Thomas F. Divine on
Exactly. What to say...

Thomas F Divine

"djMax" <djMax(a)discussions.microsoft.com> wrote in message
news:2504ACAA-30DA-4428-80E2-208661D1BE03(a)microsoft.com...
> So using winusb and libusbdotnet I've been able to connect to the card
> from
> userspace. Now the question is what to say to it. :)
>
> "Thomas F. Divine" wrote:
>
>> Let me know if this works for you...
>>
>> Thomas F Divine
>> http://www.pcausa.com
>>
>> "djMax" <djMax(a)discussions.microsoft.com> wrote in message
>> news:8B59AEA3-BEF0-41FD-86BB-C839AA103D0E(a)microsoft.com...
>> > Do the open source Linux drivers change this equation at all? I'm
>> > dealing
>> > with constrained hardware - namely the RT73 line of chips, which I know
>> > on
>> > the Linux side support all they need to. Wouldn't that code be the
>> > same
>> > (conceptually) on the Windows side?
>> >
>> > "Thomas F. Divine" wrote:
>> >
>> >> The approach of treating an 802.11 adapter hardware as a non-network
>> >> device
>> >> is the solution for developing active network diagnostic tools on the
>> >> Windows platform.
>> >>
>> >> Unfortunately, adapter vendors use development techniques and have
>> >> business
>> >> models that prevent this approach from being practical. On the Windows
>> >> platform (as well as on others...) adapter vendors use firmware and
>> >> "hardware abstraction" DLLs that 1.) make it easy to do a ordinary
>> >> things
>> >> and 2.) make it difficult to do anything else. This approach
>> >> effectively
>> >> hides much of the functionality that is needed for active diagnostics.
>> >>
>> >> To follow this approach you will need to work with adapter vendors and
>> >> obtain their proprietary hardware and software interface descriptions.
>> >> They
>> >> don't provide the information that is needed for you to follow this
>> >> approach.
>> >>
>> >> Good luck,
>> >>
>> >> Thomas F Divine
>> >> http://www.pcausa.com
>> >>
>> >>
>> >> "djMax" <djMax(a)discussions.microsoft.com> wrote in message
>> >> news:D82741B7-EBCD-4E8A-9940-DA2FB42295FF(a)microsoft.com...
>> >> > Makes painful sense. In my case I don't even want the USB device to
>> >> > work
>> >> > for
>> >> > "normal" wifi. Could I just treat it as an arbitrary piece of
>> >> > hardware
>> >> > rather than a network card? Or as a non-wireless network card?
>> >> >
>> >> > "Thomas F. Divine" wrote:
>> >> >
>> >> >> This goal may not be achievable on the Windows platform.
>> >> >>
>> >> >> Generally the system 802.11 miniports and adapters are operating in
>> >> >> the
>> >> >> "Extensible Station" (ExSTA) mode. In this mode station operation
>> >> >> is
>> >> >> under
>> >> >> control of the Microsoft Native Wi-Fi software.
>> >> >>
>> >> >> Microsoft has decided to provide a crippled capability for ISVs to
>> >> >> control
>> >> >> the Native 802.11 miniports. This is called "Network Monitor
>> >> >> Operation
>> >> >> Mode"
>> >> >> (NetMon). Believe me, they have locked this down so that the term
>> >> >> "monitor"
>> >> >> has real meaning. In particular, from the WDK:
>> >> >>
>> >> >> "While in NetMon mode, the miniport driver can only receive packets
>> >> >> based
>> >> >> on
>> >> >> the current packet filter settings. The driver cannot send packets
>> >> >> either
>> >> >> on
>> >> >> its own or through a call to its MiniportSendNetBufferLists
>> >> >> function"
>> >> >>
>> >> >> I don't see the practical possibility of sending raw 802.11 packets
>> >> >> as
>> >> >> being
>> >> >> achievable because of Microsoft's decision in this regards.
>> >> >>
>> >> >> In fact, just getting NetMon mode to work properly is a chore - at
>> >> >> least
>> >> >> for
>> >> >> me. I have some pre-Alpha executables at:
>> >> >>
>> >> >> http://www.pcausa.com/WlanExplorer
>> >> >>
>> >> >> Thomas F. Divine
>> >> >> http://www.pcausa.com
>> >> >>
>> >> >>
>> >> >> "djMax" <djMax(a)discussions.microsoft.com> wrote in message
>> >> >> news:462AD494-39C6-42F6-9152-06885B36C9DB(a)microsoft.com...
>> >> >> > I'm an experienced programmer (15 yrs, C, Java, C++, C#, etc) but
>> >> >> > I've
>> >> >> > not
>> >> >> > done any driver development. I'm looking to write a driver that
>> >> >> > sends
>> >> >> > raw
>> >> >> > 802.11 packets. Might anyone be kind enough to point me to the
>> >> >> > best
>> >> >> > way
>> >> >> > to
>> >> >> > get started? (Perhaps a related sample, or an open source driver
>> >> >> > of
>> >> >> > some
>> >> >> > sort)
>> >> >> >
>> >> >> > I have installed the WDK and taken a brief look at the network
>> >> >> > samples,
>> >> >> > but
>> >> >> > they don't seem low level enough.
>> >> >> >
>> >> >> > Thanks!
>> >> >>
From: Thomas F. Divine on
The WIndows 7 WDK (7600.16385.0) Includes sources to two Native 802.11 NDIS
miniports. One is USB. See the usbnwifi sample.

The other is a PCI-based 802.11 miniport. See the athwifi sample.

Thomas F. Divine



"djMax" <djMax(a)discussions.microsoft.com> wrote in message
news:2504ACAA-30DA-4428-80E2-208661D1BE03(a)microsoft.com...
> So using winusb and libusbdotnet I've been able to connect to the card
> from
> userspace. Now the question is what to say to it. :)
>
> "Thomas F. Divine" wrote:
>
>> Let me know if this works for you...
>>
>> Thomas F Divine
>> http://www.pcausa.com
>>
>> "djMax" <djMax(a)discussions.microsoft.com> wrote in message
>> news:8B59AEA3-BEF0-41FD-86BB-C839AA103D0E(a)microsoft.com...
>> > Do the open source Linux drivers change this equation at all? I'm
>> > dealing
>> > with constrained hardware - namely the RT73 line of chips, which I know
>> > on
>> > the Linux side support all they need to. Wouldn't that code be the
>> > same
>> > (conceptually) on the Windows side?
>> >
>> > "Thomas F. Divine" wrote:
>> >
>> >> The approach of treating an 802.11 adapter hardware as a non-network
>> >> device
>> >> is the solution for developing active network diagnostic tools on the
>> >> Windows platform.
>> >>
>> >> Unfortunately, adapter vendors use development techniques and have
>> >> business
>> >> models that prevent this approach from being practical. On the Windows
>> >> platform (as well as on others...) adapter vendors use firmware and
>> >> "hardware abstraction" DLLs that 1.) make it easy to do a ordinary
>> >> things
>> >> and 2.) make it difficult to do anything else. This approach
>> >> effectively
>> >> hides much of the functionality that is needed for active diagnostics.
>> >>
>> >> To follow this approach you will need to work with adapter vendors and
>> >> obtain their proprietary hardware and software interface descriptions.
>> >> They
>> >> don't provide the information that is needed for you to follow this
>> >> approach.
>> >>
>> >> Good luck,
>> >>
>> >> Thomas F Divine
>> >> http://www.pcausa.com
>> >>
>> >>
>> >> "djMax" <djMax(a)discussions.microsoft.com> wrote in message
>> >> news:D82741B7-EBCD-4E8A-9940-DA2FB42295FF(a)microsoft.com...
>> >> > Makes painful sense. In my case I don't even want the USB device to
>> >> > work
>> >> > for
>> >> > "normal" wifi. Could I just treat it as an arbitrary piece of
>> >> > hardware
>> >> > rather than a network card? Or as a non-wireless network card?
>> >> >
>> >> > "Thomas F. Divine" wrote:
>> >> >
>> >> >> This goal may not be achievable on the Windows platform.
>> >> >>
>> >> >> Generally the system 802.11 miniports and adapters are operating in
>> >> >> the
>> >> >> "Extensible Station" (ExSTA) mode. In this mode station operation
>> >> >> is
>> >> >> under
>> >> >> control of the Microsoft Native Wi-Fi software.
>> >> >>
>> >> >> Microsoft has decided to provide a crippled capability for ISVs to
>> >> >> control
>> >> >> the Native 802.11 miniports. This is called "Network Monitor
>> >> >> Operation
>> >> >> Mode"
>> >> >> (NetMon). Believe me, they have locked this down so that the term
>> >> >> "monitor"
>> >> >> has real meaning. In particular, from the WDK:
>> >> >>
>> >> >> "While in NetMon mode, the miniport driver can only receive packets
>> >> >> based
>> >> >> on
>> >> >> the current packet filter settings. The driver cannot send packets
>> >> >> either
>> >> >> on
>> >> >> its own or through a call to its MiniportSendNetBufferLists
>> >> >> function"
>> >> >>
>> >> >> I don't see the practical possibility of sending raw 802.11 packets
>> >> >> as
>> >> >> being
>> >> >> achievable because of Microsoft's decision in this regards.
>> >> >>
>> >> >> In fact, just getting NetMon mode to work properly is a chore - at
>> >> >> least
>> >> >> for
>> >> >> me. I have some pre-Alpha executables at:
>> >> >>
>> >> >> http://www.pcausa.com/WlanExplorer
>> >> >>
>> >> >> Thomas F. Divine
>> >> >> http://www.pcausa.com
>> >> >>
>> >> >>
>> >> >> "djMax" <djMax(a)discussions.microsoft.com> wrote in message
>> >> >> news:462AD494-39C6-42F6-9152-06885B36C9DB(a)microsoft.com...
>> >> >> > I'm an experienced programmer (15 yrs, C, Java, C++, C#, etc) but
>> >> >> > I've
>> >> >> > not
>> >> >> > done any driver development. I'm looking to write a driver that
>> >> >> > sends
>> >> >> > raw
>> >> >> > 802.11 packets. Might anyone be kind enough to point me to the
>> >> >> > best
>> >> >> > way
>> >> >> > to
>> >> >> > get started? (Perhaps a related sample, or an open source driver
>> >> >> > of
>> >> >> > some
>> >> >> > sort)
>> >> >> >
>> >> >> > I have installed the WDK and taken a brief look at the network
>> >> >> > samples,
>> >> >> > but
>> >> >> > they don't seem low level enough.
>> >> >> >
>> >> >> > Thanks!
>> >> >>
From: Pavel A. on
"djMax" <djMax(a)discussions.microsoft.com> wrote in message
news:462AD494-39C6-42F6-9152-06885B36C9DB(a)microsoft.com...
> I'm an experienced programmer (15 yrs, C, Java, C++, C#, etc) but I've not
> done any driver development. I'm looking to write a driver that sends raw
> 802.11 packets. Might anyone be kind enough to point me to the best way
> to
> get started? (Perhaps a related sample, or an open source driver of some
> sort)

The *best* way to get started? a good consultant.

Good luck,
--pa