Skip to content
Snippets Groups Projects
Commit 199736d8 authored by Oleg Hahm's avatar Oleg Hahm
Browse files

Merge pull request #3499 from authmillenon/ng_ipv6/enh/send-dispatch-for-6lowpan

ng_ipv6: use ng_netapi_dispatch_send to dispatch to 6LoWPAN
parents 4efdb995 f29f3ab9
Branches
No related tags found
No related merge requests found
...@@ -66,7 +66,7 @@ kernel_pid_t ng_ipv6_init(void) ...@@ -66,7 +66,7 @@ kernel_pid_t ng_ipv6_init(void)
{ {
if (ng_ipv6_pid == KERNEL_PID_UNDEF) { if (ng_ipv6_pid == KERNEL_PID_UNDEF) {
ng_ipv6_pid = thread_create(_stack, sizeof(_stack), NG_IPV6_PRIO, ng_ipv6_pid = thread_create(_stack, sizeof(_stack), NG_IPV6_PRIO,
CREATE_STACKTEST, _event_loop, NULL, "ipv6"); CREATE_STACKTEST, _event_loop, NULL, "ipv6");
} }
return ng_ipv6_pid; return ng_ipv6_pid;
...@@ -201,20 +201,9 @@ static void _send_to_iface(kernel_pid_t iface, ng_pktsnip_t *pkt) ...@@ -201,20 +201,9 @@ static void _send_to_iface(kernel_pid_t iface, ng_pktsnip_t *pkt)
if ((if_entry != NULL) && (if_entry->flags & NG_IPV6_NETIF_FLAGS_SIXLOWPAN)) { if ((if_entry != NULL) && (if_entry->flags & NG_IPV6_NETIF_FLAGS_SIXLOWPAN)) {
DEBUG("ipv6: send to 6LoWPAN instead\n"); DEBUG("ipv6: send to 6LoWPAN instead\n");
ng_netreg_entry_t *reg = ng_netreg_lookup(NG_NETTYPE_SIXLOWPAN, if (!ng_netapi_dispatch_send(NG_NETTYPE_SIXLOWPAN, NG_NETREG_DEMUX_CTX_ALL, pkt)) {
NG_NETREG_DEMUX_CTX_ALL);
if (reg != NULL) {
ng_pktbuf_hold(pkt, ng_netreg_num(NG_NETTYPE_SIXLOWPAN,
NG_NETREG_DEMUX_CTX_ALL) - 1);
}
else {
DEBUG("ipv6: no 6LoWPAN thread found"); DEBUG("ipv6: no 6LoWPAN thread found");
} ng_pktbuf_release(pkt);
while (reg) {
ng_netapi_send(reg->pid, pkt);
reg = ng_netreg_getnext(reg);
} }
} }
else { else {
...@@ -343,7 +332,7 @@ static int _fill_ipv6_hdr(kernel_pid_t iface, ng_pktsnip_t *ipv6, ...@@ -343,7 +332,7 @@ static int _fill_ipv6_hdr(kernel_pid_t iface, ng_pktsnip_t *ipv6,
} }
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) ng_pktsnip_t *netif)
{ {
DEBUG("ipv6: send multicast over interface %" PRIkernel_pid "\n", iface); DEBUG("ipv6: send multicast over interface %" PRIkernel_pid "\n", iface);
/* mark as multicast */ /* mark as multicast */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment