From f4ae71be70d9975bdf2e27859e6c6e2dbcbd5150 Mon Sep 17 00:00:00 2001 From: Anthony Merlino Date: Sun, 13 Jan 2019 14:26:00 +0000 Subject: [PATCH] Merged in antmerlino/nuttx/sixlowpan-input-fix (pull request #812) net/sixlowpan: sixlowpan_input should always return 0 if the incoming frame was consumed. Approved-by: GregoryN --- net/sixlowpan/sixlowpan_input.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/net/sixlowpan/sixlowpan_input.c b/net/sixlowpan/sixlowpan_input.c index bda19090ac..2f991236c1 100644 --- a/net/sixlowpan/sixlowpan_input.c +++ b/net/sixlowpan/sixlowpan_input.c @@ -836,7 +836,6 @@ int sixlowpan_input(FAR struct radio_driver_s *radio, { nwarn("WARNING: Unsupported protoype: %u\n", ipv6hdr->proto); - ret = -EPROTO; goto drop; } } @@ -845,7 +844,6 @@ int sixlowpan_input(FAR struct radio_driver_s *radio, { nwarn("WARNING: Packet too small: Have %u need >%u\n", radio->r_dev.d_len, hdrlen); - ret = -ENOBUFS; goto drop; } @@ -858,6 +856,10 @@ int sixlowpan_input(FAR struct radio_driver_s *radio, &destmac); drop: radio->r_dev.d_len = 0; + + /* We consumed the frame, so we must return 0. */ + + ret = 0; } } }