-
Couldn't load subscription status.
- Fork 90
IP6NDSolicitor: Make batch compatible #408
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
Conversation
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.
This patch has been tested and is functional modulo the few fixes proposed in comments.
Thanks !
elements/ethernet/ip6ndsolicitor.cc
Outdated
| Packet* p = handle_ip6(p); | ||
| if (p) | ||
| output_push(0, p); |
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.
Segfault here because of variable capture.
Packet* out = handle_ip6(p);
if (out)
output_push(0, out);
elements/ethernet/ip6ndsolicitor.cc
Outdated
| return q; | ||
| } | ||
| }; | ||
| EXECUTE_FOR_EACH_PACKET_DROPPABLE(fnt, batch); |
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.
There is a missing argument in the macro call.
EXECUTE_FOR_EACH_PACKET_DROPPABLE(fnt, batch, [](Packet*){});| Packet* | ||
| IP6NDSolicitor::handle_response(Packet *p) | ||
| { | ||
| if (p->length() < sizeof(click_ether) + sizeof(click_ip6) + sizeof(click_nd_sol)) |
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.
The following return should return 0. Same comment for the return at L270.
|
Can you do a PR with the fix ? |
|
Proposed fixes are defined in #411. |
3d71a30 to
d434ebd
Compare
No description provided.