-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Parse BSS Load Information Elements #64
Conversation
One nice thing to do would be to squash your commits into logical changes. Rather than have a bunch of "Fix typo" changes. |
Shall I do this right now (and invalidate the checks and so ...)? Or more as a general advice for my next pull request? |
Yes, you can rebase/sqaush/change whenever you feel like. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor nits, but otherwise LGTM.
@@ -544,3 +551,26 @@ func decodeSSID(b []byte) string { | |||
|
|||
return buf.String() | |||
} | |||
|
|||
// decodeBSSLoad Decodes the BSSLoad IE. Supports Version 1 and Version 2 | |||
// values according to https://raw.githubusercontent.com/wireshark/wireshark/master/epan/dissectors/packet-ieee80211.c |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there any documentation other than wireshark source code for these formats? Linking to a > 2MiB source file isn't my preference.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Implementation in iw scan
command is comparable in size.
See Line 1640ff in scan.c and Line 1826
But I will do another search for better references.
Edit: Links that do not point to a rolling master branch but to a fixed release Line 1634ff in scan.c of release v5.19
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I also checked the IEEE Std 802.11-2020
as a primary source. That document is approx 4000 pages long, The relevant definition of the BSS Load
Information Element can be found in chapter 9.4.2.27.
I will add the reference to the primary source and change the descriptions to closer match the language in the primary source to reduce any confusion.
What do you think about that solution?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Thanks for the input. I will work on the suggestions later today and squash the commits to more sensible commits. |
c7633dd
to
4ac0888
Compare
make following IE Parameters availiable: * StationCount * ChannelUtilization * AvailableAdmissionCapacity Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com> more docs for BSS Load elements Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com> more docs for BSS Load elements Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com> add Parsing Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com>
Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com>
Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com> restructure to sub-Element Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com> skip malformed IE if decodeBSSLoad returns error Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com>
Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com> reset integration test to default parameters Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com>
Co-authored-by: Ben Kochie <superq@gmail.com> fix typo Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com> expand documentation Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com>
Includes references to the IEEE 802.11 Chapter that defines the Information Element Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com>
40d9f30
to
a501f94
Compare
rebased on the current master. Anything missing for a successful merge? |
I'll leave it up to @SuperQ, I have not been actively participating in this library for some time. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some minor nits.
Co-authored-by: Ben Kochie <superq@gmail.com>
Applied all suggestions, thanks for the feedback! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you fix the other issues similar to my suggestions? There are other Go doc issues.
ah, sorry I thought everything was in the suggestions, will do it now |
formated Godocs of types BSS and BSSLoad Signed-off-by: Lukas Raffelt <lukas.raffelt@mercedes-benz.com>
I have formatted the go Doc comments in my new Type BSSLoad similar to the suggested changes. I also harmonized the doc strings in type BSS. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome, thanks! Fixing the doc strings helps a bunch.
This change extends the parsing of the Information Elements to include the QBSS-Load Element
String()
Method)func decodeBSSLoad(b []byte) (*BSSLoad, error)
Additionally the output of a failed test in
TestIntegrationLinuxConcurrent
has been extended.The program was tested solely for our own use cases, which might differ from yours.
Especially I only tested in WLAN-Networks with QBBS Load Version 2 (Wireshark calls this "802.11e CCA Version").
Lukas Raffelt < lukas.raffelt@mercedes-benz.com > on behalf of Mercedes-Benz Tech Innovation GmbH, Provider Information
Licensed under MIT