"That's a file detail that's overkill for reading capture files."
Agreed. I was looking more to diagnose the pcapng issue that Wireshark
flags as trailing characters.
There doesn't seem to be a common code base for writing pcapng so as more
applications support the file format there might be other issues to
investigate in the future.
  https://github.com/pcapng/pcapng/wiki/Implementations#libraries

Thanks for the insight.
I'm still confused about the difference between "Fileshark" and TRB -
https://gitlab.com/wireshark/wireshark/-/wikis/TRB-Protocol
Maybe that's a future lesson. :-)

thanks
chuck


On Fri, Sep 25, 2020 at 12:06 AM Guy Harris <ghar...@sonic.net> wrote:

> On Sep 24, 2020, at 5:41 PM, chuck c <bubbas...@gmail.com> wrote:
>
> > vmware has a packet capture utility (pktcap-uw) which adds packet
> comments when writing a capture as pcapng.
> > Looks like the code that writes the comments is reusing a buffer so that
> when a smaller comment is written there are leftover characters from the
> previous comment.
> > The code is also adding a null terminator to the comment string.
> > When the capture is reloaded in View->Reload as File Format/Capture, the
> comments are flagged with "Trailing stray characters".
> >
> > Question #1.
> > The pcapng draft standard states:
> > "If an option's value is a string, the value is not necessarily
> zero-terminated. Software that reads these files MUST NOT assume that
> strings are zero-terminated, and MUST treat a zero-value octet as a string
> terminator."
> >
> > but also:
> > "opt_comment:
> >
> > The opt_comment option is a UTF-8 string containing human-readable
> comment text that is associated to the current block. Line separators
> SHOULD be a carriage-return + linefeed ('\r\n') or just linefeed ('\n');
> either form may appear and be considered a line separator. The string is
> not zero-terminated."
>
> "The string is not zero-terminated" is a restatement of "If an option's
> value is a string, the value is not necessarily zero-terminated."  It
> should probably be removed, with the general statement about *all* string
> options covering comments.
>
> > Is Wireshark handling comments with embedded nulls properly?
>
> Prior to the master branch,
>
>         If an option's value is a string, the value is not necessarily
> zero-terminated. Software that reads these files MUST NOT assume that
> strings are zero-terminated, and MUST treat a zero-value octet as a string
> terminator.
>
> translates to FT_STRINGZPAD.  However, "frame.comment" is of type
> FT_STRING, so that's incorrect.
>
> In the master branch, we have FT_STRINGZPAD and FT_STRINGZTRUNC; the
> former means "padded, if necessary, entirely with null characters" and the
> latter means "truncated, if necessary, with a null character, with no
> guarantee that anything that *follows* the null character is also null", so
> FT_STRINGZTRUNC would be appropriate there.
>
> > Question #2.
> > Viewing the pcapng internals in the Wireshark gui is great
>
> Presumably you mean "opening a pcapng file using View > Reload as File
> Format/Capture".
>
> > but ....
> >
> > I can view frame.comment in the "Capture" view but not
> pcapng.options.option.length
>
> That's a file detail that's overkill for reading capture files.
>
> > In the "File Format" view I can add option attributes as a column but
> get the values for all the blocks in a single entry.
>
> There is an entry called "Options", which includes all the options, each
> one as a separate entry.
>
> > Has it ever been discussed to turn the Packet List pane into a Block
> List pane?
>
> That's a third issue; comments wouldn't show up separately from the record
> in which they appear.
>
> Any record (a capture-file-type-neutral term I've been using, and that's
> used in libwiretap) that has a time stamp should probably appear in the
> summary pane, as it's probably some sort of event.
>
> For other records, it's less clear.
>
> > Is #1 worthy of opening a bug/issue?
>
> Yes.
>
> > (or alternative, try to open bug with vmware - ugh)
>
> They're not violating the current pcapng spec; we *could* change it to
> require null padding, but 1) Wireshark can handle
> null-truncated-but-not-null-padded strings and 2) most other software
> should be able to handle that with little difficulty, so I wouldn't be
> inclined to make that change.
>
> > Is #2 worthy of an enhancement request?
>
> As per the above, I don't see any need to display the details of comments
> when treating a pcapng file as a capture.  Note that comments won't
> necessarily be pcapng-specific - other capture file formats may have them,
> and they might be in a format that doesn't have anything directly
> corresponding to the option type or length.  libwiretap is intended to
> abstract away as many file-type-specific details as possible.
>
> When treating a pcapng file as "Fileshark" input ("View > Reload as File
> Format/Capture" can be thought of as a first step towards Fileshark), the
> only way not to have "all the blocks in a single entry" would be to remove
> the top-level "Options" entry and put the individual option items directly
> under the "Block Data" item.
> ___________________________________________________________________________
> Sent via:    Wireshark-dev mailing list <wireshark-dev@wireshark.org>
> Archives:    https://www.wireshark.org/lists/wireshark-dev
> Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev
>              mailto:wireshark-dev-requ...@wireshark.org
> ?subject=unsubscribe
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev@wireshark.org>
Archives:    https://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe

Reply via email to