[PATCH v4 1/4] Bluetooth: net: add hci_iso_hdr function for iso data

Luiz Augusto von Dentz luiz.dentz at gmail.com
Thu Jun 6 13:10:17 PDT 2024


Hi Chris,

On Thu, Jun 6, 2024 at 7:43 AM Chris Lu <chris.lu at mediatek.com> wrote:
>
> Add function hci_iso_hdr to get skb->data when packet type is ISO.
>
> Signed-off-by: Chris Lu <chris.lu at mediatek.com>
> Signed-off-by: Sean Wang <sean.wang at mediatek.com>
> ---
>  include/net/bluetooth/hci.h | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/include/net/bluetooth/hci.h b/include/net/bluetooth/hci.h
> index e372a88e8c3f..b9f8f91f6c7f 100644
> --- a/include/net/bluetooth/hci.h
> +++ b/include/net/bluetooth/hci.h
> @@ -2898,6 +2898,11 @@ static inline struct hci_sco_hdr *hci_sco_hdr(const struct sk_buff *skb)
>         return (struct hci_sco_hdr *) skb->data;
>  }
>
> +static inline struct hci_iso_hdr *hci_iso_hdr(const struct sk_buff *skb)
> +{
> +       return (struct hci_iso_hdr *) skb->data;
> +}

We might as well check the skb->len before attempting to cast
skb->data or better yet use skb_pull_data but I guess that is not
possible since you don't want to consume the skb?

>  /* Command opcode pack/unpack */
>  #define hci_opcode_pack(ogf, ocf)      ((__u16) ((ocf & 0x03ff)|(ogf << 10)))
>  #define hci_opcode_ogf(op)             (op >> 10)
> --
> 2.18.0
>


-- 
Luiz Augusto von Dentz



More information about the Linux-mediatek mailing list