All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefan Schmidt <stefan@osg.samsung.com>
To: Luiz Augusto von Dentz <luiz.dentz@gmail.com>,
	linux-bluetooth@vger.kernel.org
Cc: patrik.flykt@linux.intel.com, aar@pengutronix.de,
	linux-wpan@vger.kernel.org
Subject: Re: [PATCH v3 3/5] 6lowpan: iphc: override l2 packet information
Date: Mon, 20 Feb 2017 23:03:34 +0100	[thread overview]
Message-ID: <64530b9e-2be8-0446-cbc2-caf0914a49f7@osg.samsung.com> (raw)
In-Reply-To: <20170217155003.4594-4-luiz.dentz@gmail.com>

Hello.

On 02/17/2017 04:50 PM, Luiz Augusto von Dentz wrote:
> From: Alexander Aring <aar@pengutronix.de>
>
> The skb->pkt_type need to be set by L2, but on 6LoWPAN there exists L2
> e.g. BTLE which doesn't has multicast addressing. If it's a multicast or
> not is detected by IPHC headers multicast bit. The IPv6 layer will
> evaluate this pkt_type, so we force set this type while uncompressing.
> Should be okay for 802.15.4 as well.
>
> Signed-off-by: Alexander Aring <aar@pengutronix.de>
> ---
>  net/6lowpan/iphc.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/net/6lowpan/iphc.c b/net/6lowpan/iphc.c
> index 79f1fa2..fb5f6fa 100644
> --- a/net/6lowpan/iphc.c
> +++ b/net/6lowpan/iphc.c
> @@ -666,6 +666,8 @@ int lowpan_header_decompress(struct sk_buff *skb, const struct net_device *dev,
>
>  	switch (iphc1 & (LOWPAN_IPHC_M | LOWPAN_IPHC_DAC)) {
>  	case LOWPAN_IPHC_M | LOWPAN_IPHC_DAC:
> +		skb->pkt_type = PACKET_BROADCAST;
> +
>  		spin_lock_bh(&lowpan_dev(dev)->ctx.lock);
>  		ci = lowpan_iphc_ctx_get_by_id(dev, LOWPAN_IPHC_CID_DCI(cid));
>  		if (!ci) {
> @@ -681,11 +683,15 @@ int lowpan_header_decompress(struct sk_buff *skb, const struct net_device *dev,
>  		spin_unlock_bh(&lowpan_dev(dev)->ctx.lock);
>  		break;
>  	case LOWPAN_IPHC_M:
> +		skb->pkt_type = PACKET_BROADCAST;
> +
>  		/* multicast */
>  		err = lowpan_uncompress_multicast_daddr(skb, &hdr.daddr,
>  							iphc1 & LOWPAN_IPHC_DAM_MASK);
>  		break;
>  	case LOWPAN_IPHC_DAC:
> +		skb->pkt_type = PACKET_HOST;
> +
>  		spin_lock_bh(&lowpan_dev(dev)->ctx.lock);
>  		ci = lowpan_iphc_ctx_get_by_id(dev, LOWPAN_IPHC_CID_DCI(cid));
>  		if (!ci) {
> @@ -701,6 +707,8 @@ int lowpan_header_decompress(struct sk_buff *skb, const struct net_device *dev,
>  		spin_unlock_bh(&lowpan_dev(dev)->ctx.lock);
>  		break;
>  	default:
> +		skb->pkt_type = PACKET_HOST;
> +
>  		err = lowpan_iphc_uncompress_addr(skb, dev, &hdr.daddr,
>  						  iphc1 & LOWPAN_IPHC_DAM_MASK,
>  						  daddr);
>


Reviewed-by: Stefan Schmidt <stefan@osg.samsung.com>

regards
Stefan Schmidt

  reply	other threads:[~2017-02-20 22:03 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-17 15:49 [PATCH v3 0/5] Bluetooth: 6LoWPAN: Fix lladdr length Luiz Augusto von Dentz
2017-02-17 15:49 ` [PATCH v3 1/5] bluetooth: Set 6 byte device addresses Luiz Augusto von Dentz
2017-02-20 21:56   ` Stefan Schmidt
2017-02-17 15:50 ` [PATCH v3 2/5] 6lowpan: Set MAC address lenght according to LOWPAN_LLTYPE Luiz Augusto von Dentz
2017-02-20 21:58   ` Stefan Schmidt
2017-02-17 15:50 ` [PATCH v3 3/5] 6lowpan: iphc: override l2 packet information Luiz Augusto von Dentz
2017-02-20 22:03   ` Stefan Schmidt [this message]
2017-02-17 15:50 ` [PATCH v3 4/5] ipv6: addrconf: fix 48 bit 6lowpan autoconfiguration Luiz Augusto von Dentz
     [not found]   ` <20170217155003.4594-5-luiz.dentz-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-02-20 22:10     ` Stefan Schmidt
2017-02-20 22:10       ` Stefan Schmidt
2017-02-21  8:49       ` Luiz Augusto von Dentz
2017-02-17 15:50 ` [PATCH v3 5/5] 6lowpan: Use netdev addr_len to determine lladdr len Luiz Augusto von Dentz
2017-02-20 22:15   ` Stefan Schmidt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=64530b9e-2be8-0446-cbc2-caf0914a49f7@osg.samsung.com \
    --to=stefan@osg.samsung.com \
    --cc=aar@pengutronix.de \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=linux-wpan@vger.kernel.org \
    --cc=luiz.dentz@gmail.com \
    --cc=patrik.flykt@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.