Ethereal-dev: Re: [Ethereal-dev] PDML output - creator attribute

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Gilbert Ramirez <gram@xxxxxxxxxxxxxxx>
Date: Sat, 03 Jan 2004 19:19:37 -0000
On Sat, 2004-01-03 at 07:50, Olivier Biot wrote:
> I'm more in favor of saying that the creator is "ethereal/0.10.0". As Fulvio
> already said, the PDML *format* does not change, and this is reflected in
> the version attribute of the pdml tag.

No, those are two different "versions". The "version" attribute tag
reflects the "official" PDML format; since it's still in flux, we're
setting "version" to "0". What Fulvio was emphasizing is that Ethereal
produces a specific type of PDML, and format changes independently of
the addition or modification of protocol dissectors to Ethereal.

For example, when Ethereal 0.10.1 comes out, there will be changes to
the dissectors, but more than likely, unless someone modifies print.c,
there won't be any change to the format of the PDML produced by
Ethereal. So, these two snippets, produced by different versions of
Ethereal, hide information:

<pdml version="0" creator="Ethereal/0.10.0">
<pdml version="0" creator="Ethereal/0.10.1">

They hide the fact that the format of the PDML is the same.
Let's say in Ethereal 0.10.2 that the PDML format *does* change. If we
use the same system:

<pdml version="0" creator="Ethereal/0.10.2">

well... it's hard to tell if the *format* of the PDML changed. You'd
have to encode the fact that the PDML formats that Ethereal produced
changed at version 0.10.2. It's easier to encode that information in
Ethereal itself, i.e., have a version number for the PDML that ethereal
produces, and increment it every time the format of ethereal's PDML
changes.

Maybe we stick the ethereal PDML version number it in the "creator"
attribute, or maybe we add a new attribute, say "creator-version":

<pdml version="0" creator="Ethereal/0/0.10.0">
<pdml version="0" creator="Ethereal/0/0.10.1"> ethereal PDML format stayed the same
<pdml version="0" creator="Ethereal/1/0.10.2"> ethereal PDML format changed

or

<pdml version="0" creator="Ethereal/0.10.0" creator-version="0">
<pdml version="0" creator="Ethereal/0.10.1" creator-version="0">
<pdml version="0" creator="Ethereal/0.10.2" creator-version="1">

Once Analyzer and Ethereal can use the same PDML format, the PDML
version ("version" attribute) will become 1, and we can then drop the
creator attribute, if we want to.

--gilbert