-
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
ng_ipv6: initial import #2454
ng_ipv6: initial import #2454
Conversation
5cced28
to
19a67f5
Compare
8fa3e88
to
db2208e
Compare
Rebased to master and depending PRs |
db2208e
to
ed5c474
Compare
ed5c474
to
d5bc04c
Compare
Rebased to current master and the depending PRs |
d5bc04c
to
cca046a
Compare
ng_ipv6.h line 14 and onwards contains my idea of how to document NETAPI behavior. @haukepetersen, @jfischer-phytec-iot, @LudwigOrtmann, @Lotterleben, @OlegHahm, @PeterKietzmann, @thomaseichinger what do you think? |
c96df1e
to
beeca50
Compare
No longer WIP, squashed and rebased to master and depending PRs. |
(tests are still missing) |
62e7134
to
9f57476
Compare
f242596
to
6f1d810
Compare
Rebased to current master. |
@@ -58,6 +58,20 @@ ifneq (,$(filter ng_ipv6_hdr,$(USEMODULE))) | |||
USEMODULE += ng_pktbuf | |||
endif | |||
|
|||
ifneq (,$(filter ng_ipv6_router,$(USEMODULE))) | |||
USEMODULE += ng_ipv6 | |||
USEMODULE += ng_fib |
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.
Why is this dependency? (I understand the conceptional dependency, but I couldn't find the implementational dependency.)
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.
You're right. Since I kept routing out for now (and it will become part of the neighbor discovery anyways), this whole ifneq
can be removed. Will do.
Addressed comments so far. |
ng_pktsnip_t *tmp = ng_pktbuf_start_write(pkt); | ||
|
||
if (tmp == NULL) { | ||
ng_pktbuf_release(pkt); |
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.
Why is this released here again?
Addressed more comments |
ACK. Please squash. |
1a51135
to
a719a3f
Compare
Squashed |
a719a3f
to
a0c6db6
Compare
Applied the following bugfix and squashed immediately: diff --git a/sys/net/network_layer/ng_ipv6/ng_ipv6.c b/sys/net/network_layer/ng_ipv6/ng_ipv6.c
index 1be5142..b53d5d3 100644
--- a/sys/net/network_layer/ng_ipv6/ng_ipv6.c
+++ b/sys/net/network_layer/ng_ipv6/ng_ipv6.c
@@ -236,7 +236,8 @@ static int _fill_ipv6_hdr(kernel_pid_t iface, ng_pktsnip_t *ipv6,
return 0;
}
-static inline void _send_multicast_over_iface(kernel_pid_t iface, ng_pktsnip_t *pkt)
+static inline void _send_multicast_over_iface(kernel_pid_t iface, ng_pktsnip_t *pkt,
+ ng_pktsnip_t *netif)
{
DEBUG("ipv6: send multicast over interface %" PRIkernel_pid "\n", ifs[i]);
/* mark as multicast */
@@ -299,7 +300,7 @@ static void _send_multicast(kernel_pid_t iface, ng_pktsnip_t *pkt,
LL_PREPEND(pkt, netif);
- _send_multicast_over_iface(iface, pkt);
+ _send_multicast_over_iface(iface, pkt, netif);
}
}
else {
@@ -312,7 +313,7 @@ static void _send_multicast(kernel_pid_t iface, ng_pktsnip_t *pkt,
}
}
- _send_multicast_over_iface(iface, pkt);
+ _send_multicast_over_iface(iface, pkt, netif);
}
} |
Depends on
pktbuf: port to use pkt_t instead of void* #2285(merged)ng_ipv6_addr: initial import #2433(merged)ng_ipv6: provide support for ng_netif #2437(merged)net: added generic network interface header format #2449(merged)ng_protonum: Initial import of protocol number defines #2455(merged)net: initial import of an IPv6 neighbor cache #2461(merged)[RFC] ng_ipv6_addr: add (optional) string conversion functions #2546(merged)ng_net: introduce checksum calculation #2553(merged)ng_net: header building facilities #2575(merged)[RFC] ng_netif_hdr: add flags for multicast and broadcast #2600(merged)ipv6_hdr: Initial import #2731(merged)ipv6_netif: expand interface #2735(merged)