The indentation of the output of the fields in the dissectors for
body composition measurement and weight measurement should be at the
top level, not a child the Timestamp node.
Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@yahoo.com>
The channel numbers are not necessarily the same on either side.
Process the SSH_MSG_CHANNEL_OPEN_CONFIRMATION to set up channel
pairings. Previously it was creating a channel pairing when
a subdissector was set but always using channel 0 for both sides.
The message that sets the channel mapping (CONFIRMATION) is from the
opposite side from messages that configure the channel (CHANNEL_OPEN,
CHANNEL_REQUEST), so try to handle this.
We can set a subdissector to one side even if we don't get the
above message (a one sided capture?)
Change a few unsigned ints to uint32_t (as specified in RFC 4254),
and ensure that strings are retrieved in UTF-8 (per RFC 4254).
Note that we still don't handle closed and reassigned channel numbers
for random packet access, which requires something like a multimap
instead of maps.
Related to #16054
Ethernet (ext) is a bit different as it has not only a channel but also
a hwchannel, which seems to be the port of a multiport interface.
This patch takes this into account by creating interfaces like ETH-1-1.
This is one part of the solution for issue #19380
In [g_]strlcpy, the dest_size parameter is the buffer size, not the
number of bytes to copy. Fix truncating the last byte of the string
of the checksum type when copying. This affects display in the
SCTP association dialogs, etc.
Now that we can set the endianness for ENC_BCD_DIGITS_0_9 header fields,
we can use proto_tree_add_item for the portable identity fields instead
of fetching the bcd string and adding it manually.
Only try to decrypt packets on the first pass. Avoid creating
file scoped memory for packets that fail decryption. Retrieve
the decrypted message on the second pass, and if decryption
failed, dissect the packet as encrypted instead of showing
lots of malformed packets (especially as this can currently happen
with a known cipher but no keys or DSB.)
Set the sequence number items as generated.
Related to #16054
Start dissecting the requests and responses of the Communications Gatway
peripheral.
We use the complete address + command byte to identify a command. This
is different from the Cashless peripherals, where we use only the command
bits.
Dissect MDB messages related to the actual vending operation.
Make the header fields 32bit long in preparation for Expanded Currency
Mode, but don't dissect the longer version of the messages for now.
When dissecting a pcapng file (MIME Files Format) and parsing a SHB,
check its endianness before using its length field to mark bytes for
that block. Prevents the dissector from marking more bytes for a block
than actually belong to that block, in the specific case where a file
contains a second SHB of different endianness than that of the first
SHB.
Eliminate a few cases where tvb_get_ptr() is used with a certain
length, but then the pointer can be accessed beyond that length,
such as when an entire block is not present, or the SSH message
length is (incorrectly) not a multiple of the block length.
Don't return the offset on failure; return the entire tvb. The
offset isn't incremented in that function, and returning the
starting offset causes an infinite loop in dissect_ssh.
For AES CBC we do *not* want GCRY_CIPHER_CBC_CTS (cipher text stealing)
mode, which makes it impossible to use gcrypt on multiple blocks at
a time.
Fix#19369
Since we always close the gcrypt cipher contexts when destroying
the file scoped data (07448c57b3), don't
close it on error. (Unless we were to remove the wmem callback.)
As the PCRE2 documentation notes, "Setting startoffset differs from passing
over a shortened string and setting PCRE2_NOTBOL in the case of a pattern
that begins with any kind of lookbehind."
For the purposes of finding regex matches starting at a particular
offset in the packet bytes, we will need to handle that properly.
Syntax nodes always have one type and the compiler
can check it. Reserve magic numbers for data contained
inside syntax node. Remove the magic number field in
stnode_t and the STNODE_MAGIC define. Keep the other
magic values for type checking.
This exposed a bug with an assertion for oper type syntax
nodes. Fix the assertion to check the correct pointer value
against the magic number.
There's a lot of potentially confusing arithmetic from setting
search_pos to the last byte of a match. We can always test
search_len against zero to see if we actually had a match for
hightlighting purposes. (The ordinary byte searches won't find
zero length matches, but the regex search might, and not even
necessarily at the start of the bytes if there's a lookbehind term,
and currently they're handled incorrectly.)
We can't find fields with length zero based on an offset currently
anyway. (If we tried, would we match fields that contained the byte
before or after the zero length offset?)
Perhaps we shouldn't allow zero length regex matches for packet
byte searches at all; PCRE2 has an option to prevent such matches.
CMake will add NDEBUG with RelWithDebInfo. Fix that entry.
CMake will not add -O0 with Debug. Fix that entry.
Remove the WS_DEBUG_UTF_8 flag. It is too much detail in
this context.