UNCLASSIFIED
Drew,
What is the technical definition difference between "update" and "patch"?
It appears that Tomcat uses the term "patch" in its changelog. So wouldn't
one expect to see cpe:/a:apache:tomcat:6.0:20 if version, patch, and service
pack use the same space.
R/
Bob
(703) 601-4729 ext 124
-----Original Message-----
From: Banghart, John [mailto:
[hidden email]]
Sent: Wednesday, July 29, 2009 4:08 PM
To:
[hidden email]
Subject: Re: [CPE-DISCUSSION-LIST] when is a version an update?
Drew,
To repeat, the specification says:
"The technical difference between version and update will be different for
certain vendors and products."
In the Tomcat case, this seems to be a version, so
cpe:/a:apache:tomcat:6.0.20
would be the most consistent with the vendor intent and therefore, in my
opinion, the most correct.
More generically, I think your point is interesting, because it tends to
suggest that the "update" field is only relevant if the vendor characterizes
their software that way (therefore subjective), rather then having any
objective value as an identifier. That is consistent with the CPE
Specification quote above.
From an operational perspective, "update", if the vendor provides it as an
identifier, is really just an extension or re-characterization of "version",
which begs the question of why it is needed at all.
-John
On 7/29/09 3:49 PM, "Buttner, Drew" <
[hidden email]> wrote:
Recently we were reviewing some names within the dictionary for both
Apache Tomcat and for Mozilla Firefox. The review prompted an interesting
question. In both cases, the products have multi pointed version numbers.
(e.g. 1.2.3) So at first glance a CPE Name of vendor:product:1.2.3 seems
appropriate.
But looking deeper we realize that the product is released in a way
that some would consider the first 2 points the version and the last point
an update (or bug fix, etc). For Tomcat and Firefox, there is no mention of
update in their release notes or product documentation, but the use of the
version string seems to align with CPE's concept of an update. The CPE
Specification even calls this out:
"The fifth component of a CPE Name is used for update or service
pack information. Sometimes this is referred to as point releases or minor
versions. The technical difference between version and update will be
different for certain vendors and products."
So the question is, when does a version become an update?
Using a specific example, Apache Tomcat is often referred to by the
first two points of the version. Looking at the Tomcat site
(
http://tomcat.apache.org/) we see links for 6.0 and 5.5 and 4.1. So CPE
Names like cpe:/a:apache:tomcat:6.0 makes sense.
Now looking at the changelog for Tomcat
(
http://tomcat.apache.org/tomcat-6.0-doc/changelog.html) we see a third
point added to the version. For example, the latest release is 6.0.20.
What would a CPE Name for this look like?
cpe:/a:apache:tomcat:6.0.20
or
cpe:/a:apache:tomcat:6.0:20
Notice the difference at the end of the name. The first example
uses the version string 6.0.20 in the version component to create the name.
The second example uses 6.0 for the version component and 20 for the update
component.
Thoughts?
Both produce unique ids. The second example will be better for CPE
Matching ... but uses the update component when the vendor never mentions
the term 'update'.
Thanks
Drew
---------
Andrew Buttner
The MITRE Corporation
[hidden email]
781-271-3515