Wireshark-dev: Re: [Wireshark-dev] RTP-MIDI strange field masks?

From: Evan Huus <eapache@xxxxxxxxx>
Date: Thu, 8 Jul 2021 14:33:45 -0400
I haven’t actually looked at the code, so it’s possible we’re doing the masking but not actually combining the bits into a single 14-bit value properly still. I wouldn’t expect a simple mask value to accomplish that.

Evan

On Thu, Jul 8, 2021 at 14:32 Evan Huus <eapache@xxxxxxxxx> wrote:
Based on the 0xxxxxxx of your example and references like [1], I believe the masks are correct. MIDI seems to mostly use seven bit bytes schmucked together for some reason, so ignoring the high bit of each byte seems correct to me.

Evan


On Thu, Jul 8, 2021 at 13:58 Martin Mathieson via Wireshark-dev <wireshark-dev@xxxxxxxxxxxxx> wrote:
These mask fields (0x7f7f, 0x7f7f7f7f, etc) look wrong to me, but I am worried I might be missing something?
Looking at an example in RFC 4695 (Song Position Pointer) I think this (on page 157) is saying that is it just a 2-byte field (and should therefore have a non-mask of 0x0)?

| Song Position Pointer          | 11110010 0xxxxxxx 0yyyyyyy |

These warnings are from ./tools/check_typed_item_calls.py --mask


Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.deltatime_2  - mask with non-contiguous bits 0x7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.deltatime_3  - mask with non-contiguous bits 0x7f7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.deltatime_4  - mask with non-contiguous bits 0x7f7f7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.pitch_bend  - mask with non-contiguous bits 0x7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sj_chapter_x_first_2  - mask with non-contiguous bits 0x7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sj_chapter_x_first_3  - mask with non-contiguous bits 0x7f7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sj_chapter_x_first_4  - mask with non-contiguous bits 0x7f7f7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.song_position_pointer  - mask with non-contiguous bits 0x7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_non_realtime_general_information_device_family  - mask with non-contiguous bits 0x7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_non_realtime_general_information_device_family_member  - mask with non-contiguous bits 0x7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_non_realtime_general_information_software_revision  - mask with non-contiguous bits 0x7f7f7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_non_realtime_sample_dump_sample_number  - mask with non-contiguous bits 0x7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_non_realtime_sample_dump_sample_period  - mask with non-contiguous bits 0x7f7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_non_realtime_sample_dump_sample_length  - mask with non-contiguous bits 0x7f7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_non_realtime_sample_dump_loop_start  - mask with non-contiguous bits 0x7f7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_non_realtime_sample_dump_loop_end  - mask with non-contiguous bits 0x7f7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_non_realtime_sample_dump_lp_trans_ln  - mask with non-contiguous bits 0x7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_non_realtime_fd_length  - mask with non-contiguous bits 0x7f7f7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_tune_freq  - mask with non-contiguous bits 0x7f7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_rt_ni_barnum  - mask with non-contiguous bits 0x7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_rt_dc_volume  - mask with non-contiguous bits 0x7f7f
Warning:  epan/dissectors/packet-rtp-midi.c filter= rtpmidi.sysex_common_rt_dc_balance  - mask with non-contiguous bits 0x7f7f
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev@xxxxxxxxxxxxx>
Archives:    https://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-request@xxxxxxxxxxxxx?subject=unsubscribe