Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 02 Sep 2002 13:44:45 +0300
From:      Maxim Sobolev <sobomax@FreeBSD.org>
To:        Kris Kennaway <kris@obsecurity.org>
Cc:        Kris Kennaway <kris@FreeBSD.org>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/usr.sbin/pkg_install/lib plist.c
Message-ID:  <3D73411D.8B09EB77@FreeBSD.org>
References:  <200208312021.g7VKLlhh009121@freefall.freebsd.org> <20020901061408.GA12651@vega.vega.com> <20020901190704.GA21494@xor.obsecurity.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Kris Kennaway wrote:
> 
> On Sun, Sep 01, 2002 at 09:14:08AM +0300, Maxim Sobolev wrote:
> > On Sat, Aug 31, 2002 at 01:21:47PM -0700, Kris Kennaway wrote:
> > > kris        2002/08/31 13:21:47 PDT
> > >
> > >   Modified files:
> > >     usr.sbin/pkg_install/lib plist.c
> > >   Log:
> > >   Don't treat unknown commands as fatal errors: they are probably just
> > >   the signature of out-of-date pkg_tools and newer packages.
> >
> > I don't really think that we need something like that. Older
> > versions of pkg_tools should be protected from the new packages
> > with unknown commands by the `packing list format version'
> > (see pkg_install/lib/version.c).
> 
> The problem I'm trying to guard against is people with old pkg_tools
> downloading new packages from the FTP site and being unable to use
> them because of a new command introduced in the package.  Chances are
> the pkg_tools can safely ignore this command and proceed with what it
> knows about.
> 
> In other words, extensions to the command set should not be fatal;
> revisions to the command set which break backwards compatibility
> should be fatal (and this is achieved by bumping the version)

There is already such mechanism - when reading packing list, any
package tool will warn the user about minor version mismatch (for
example user has tools that support packing list revision 1.2, while
package being installed has revision 1.3), while will refuse to
install package when major of installed tools is less than recorded in
the packing list (1.2 vs. 2.1 for example).

The version of packing list format is placed at the very top of the
packing list, therefore your change is actually a NOP - any new
command added would trigger major version bump, so that installation
would explode with error before that.

-Maxim

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3D73411D.8B09EB77>