-
Notifications
You must be signed in to change notification settings - Fork 225
Add RawNetworkInterfaceDriver, labgrid-raw-interface helper and example #1157
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
Add RawNetworkInterfaceDriver, labgrid-raw-interface helper and example #1157
Conversation
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## master #1157 +/- ##
========================================
- Coverage 62.9% 62.7% -0.2%
========================================
Files 161 163 +2
Lines 11888 12001 +113
========================================
+ Hits 7486 7535 +49
- Misses 4402 4466 +64 ☔ View full report in Codecov by Sentry. |
3d46606 to
9f26732
Compare
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.
Looks good otherwise.
|
We discussed this internally: The wrapper can be simplified by using stdin/stdout to pass packet data, as we don't need to create/open paths as root. |
9f26732 to
624fda7
Compare
|
Rebased on master. |
624fda7 to
93a918a
Compare
|
93a918a to
1dc6611
Compare
|
1dc6611 to
7dd5375
Compare
|
7dd5375 to
797fc97
Compare
|
|
The previous comments reflect the development history and should ease reviewing the changes. |
797fc97 to
8d62d81
Compare
|
8d62d81 to
714b7fe
Compare
|
3b6aaa0 to
481bc3e
Compare
|
Rebased one more time now that #1249 was merged. |
481bc3e to
f55e715
Compare
Example tested for remote and local use case. |
Wrapper script to be deployed on machines whose network interfaces should be controllable via the RawNetworkInterfaceDriver. A /etc/labgrid/helpers.yaml can deny access to network interfaces. Intended to be used via sudo. Signed-off-by: Rouven Czerwinski <[email protected]> Signed-off-by: Bastian Krause <[email protected]>
f55e715 to
0be85a0
Compare
|
Rebased. |
0be85a0 to
9bf81fc
Compare
|
Addressed the review feedback by @jluebbe. Thanks! |
9bf81fc to
f40ad5e
Compare
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.
Besides #1157 (comment), this looks good. As that doesn't affect behavior, you could merge this as-is and address it in a separate PR.
This driver allows "raw" control of a network interface (such as Ethernet or WiFi). Signed-off-by: Bastian Krause <[email protected]> Signed-off-by: Rouven Czerwinski <[email protected]>
Generates an Ethernet frame via scapy using pcap, copies pcap to DUT, replays pcap on interface, records frame locally (or on exporter, adjust env.yaml accordingly), and compares both. Signed-off-by: Bastian Krause <[email protected]>
f40ad5e to
e3ee7f6
Compare
Description
The RawNetworkInterfaceDriver allows "raw" control of a network interface (such as Ethernet or WiFi).
The newly added labgrid-raw-interface helper (
helpers/labgrid-raw-interface) needs to be installed in the PATH and usable via sudo without password.It supports:
Checklist