Skip to content
GitLab
    • GitLab: the DevOps platform
    • Explore GitLab
    • Install GitLab
    • How GitLab compares
    • Get started
    • GitLab docs
    • GitLab Learn
  • Pricing
  • Talk to an expert
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
    Projects Groups Topics Snippets
  • Register
  • Sign in
  • wireshark wireshark
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
    • Locked files
  • Issues 1.4k
    • Issues 1.4k
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 182
    • Merge requests 182
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Artifacts
    • Schedules
    • Test cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Model experiments
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • External wiki
    • External wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Wireshark FoundationWireshark Foundation
  • wiresharkwireshark
  • Issues
  • #17278
Closed
Open
Issue created Mar 09, 2021 by Darren Chen@darren_chen

NDPE attribute of NAN packet is not dissected

Summary

Data Path Response of NAN packet(nan.action.subtype == 0x06) is malformed.

Steps to reproduce

Setup a NAN data path link and it will generate a Data Path Response packet. I am not sure if you can reproduce it.

What is the current bug behavior?

I have checked the sourced code in version wireshark-3.4.2. In packet-wifi-nan.c ->dissect_attr_ndpe guint8 bits_type = tvb_get_bits8(tvb, offset * 8 + 4, 4); guint8 bit_offset = (offset * 8) + 4; guint8 bits_status = tvb_get_bits8(tvb, bit_offset, 4);

bit_offset is declared a gunit8, but offset is a guint. bit_offset will overflow once offset is too big.

bits_status will become a wrong value and hf_nan_attr_ndp_responder_ndi can not be dissected.

What is the expected correct behavior?

NDPE attribute of in Data Path Response can be dissected.

Sample capture file

bug_reoprt.pkt

Relevant logs and/or screenshots

image

Build information

Wireshark 3.4.2 (Git commit a889cf1b)

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking