-
Notifications
You must be signed in to change notification settings - Fork 2k
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
net: initial import of the ZEP protocol #2627
Conversation
Did you choose the naming yourself or is this a (well-known) protocol of some sort? Havn't heard about it so far... Also I don't seem to understand this implementation. What is the duality of netdev and netapi about? And why does the protocol need it's own nettype entry? If it is running on top of UDP, netdev and the nettype should not be needed! |
It's a Wireshark specific header: https://www.wireshark.org/docs/dfref/z/zep.html It's on RIOT's wishlist for a long time: #163 |
Yes, nettype might be replaceable with port
[edit: added addition App layer] |
I am not completely sure if I understand it fully, but if it is the way I am thinking this is indeed useful. So +1 for this. But there is still stuff missing in the implementation, right? |
Yes it is still WIP. |
4ca772a
to
fed5104
Compare
9f184dd
to
45554bf
Compare
fed5104
to
971a62a
Compare
I've done some work on this again, and it's based on UDP (#2430) now. The basic behavior (send data frames and receive data frames) should work now. I reorder and document the stuff when I find some time, but in general I would add no more further functionally to the module for now. |
971a62a
to
862c6de
Compare
Rebased to current master |
@Lotterleben, if you don't want to review just re-assign to me (or someone else). I'm definitely interested in reviewing, but my backlog is increasing by the minute... |
Squashed. Only merge conflict was regarding the change in 6eb6367. |
WTF … okay somehow the history is broken… Will fix |
Somehow the commit that is now d5d4b3f was deleted when I squashed in bulk. Now that I squashed and reordered step by step everything is fine. The statement to merge conflicts still upholds, its SHA is now 089bbdb |
PR needed some fixing. Can I have a re-ACK? |
re-ACK, but don't merge yet. @haukepetersen wanted to review, too. |
Japp, doing it as we speak |
Squashed and fixed the disconcerning naming of |
dev->dst.u64[0] = dst->u64[0]; | ||
dev->dst.u64[1] = dst->u64[1]; | ||
dev->dst_port = dst_port; | ||
dev->version = 2; |
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 the version expected to change? Otherwise we could throw it out and make it constants?!
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.
Not in the current version. An older version of this implementation send version 1 packets and it is still possible with an easy update of ng_netconf.h
(and setting this variable), which I neglected for now.
TL;DR changing the version is possible, but not implemented yet though.
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 see
Rebased to current master to simplify testing and updated for changes in #3159 |
Code wise I am fine with the PR for now. Though it does not work on my system: When rebasing on the newest master, initialize zep on two nodes and ping from one to the other, the receiver crashes (segfaults) when receiving neighbor solicitations over the ZEP interface. I put this in our debugging list... So if this PR is working for other people, I am ok with merging ZEP as is and fixing the findings in a next step. If it is working for no-one, it needs to be fixed first! :-) |
It works for me and @PeterKietzmann in the most current version (which is already rebased to the most current master) so what's the verdict? Should I squash? |
ack |
Squashed |
net: initial import of the ZEP protocol
\o/ |
Main idea is to use this with native as "fully" supported IEEE 802.15.4 device.
This modules is both a
ng_netdev
andng_netapi
module. It speaks through UDP viang_netapi
, but imitates an IEEE 802.15.4 device throughng_netdev
to be indistinguishable from normal devices.Depends on #2430.(merged)Fixes #163