-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # 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)