-
Notifications
You must be signed in to change notification settings - Fork 195
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
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 <r.czerwinski@pengutronix.de> Signed-off-by: Bastian Krause <bst@pengutronix.de>
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 <bst@pengutronix.de> Signed-off-by: Rouven Czerwinski <r.czerwinski@pengutronix.de>
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 <bst@pengutronix.de>
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