rpm5 package verification and md5sum of config files
Jan Rękorajski
baggins at pld-linux.org
Mon Oct 22 15:56:52 CEST 2012
On Mon, 22 Oct 2012, Jeffrey Johnson wrote:
>
> On Oct 22, 2012, at 6:44 AM, Jan Rękorajski wrote:
>
> >
> > Rebuilding ~8500 packages is not an option, unfortunately :(
> >
>
> Um … you managed to *build* ~8500 packages using a buggy
> rpmbuild in rpm-5.4.10.
>
> What makes *rebuilding* harder than building?
>
> Note that not all 8500 packages are affected (only %config iirc).
rpm5 with hmac verification intact (notice package was built with rpm4):
$ rpm -q -yaml rc-scripts | grep Rpmversion
Rpmversion: 4.5
$ rpm -V --nohmacs rc-scripts
.M...... g /var/log/dmesg
$ rpm -V rc-scripts
..5..... c /etc/adjtime
..5..... c /etc/sysconfig/cpusets/cpuset-test
..5..... c /etc/sysconfig/hwprof
..5..... c /etc/sysconfig/i18n
..5..... c /etc/sysconfig/init-colors
..5..... c /etc/sysconfig/interfaces/down.d/ppp/logger
..5..... c /etc/sysconfig/interfaces/ifcfg-eth0
..5..... c /etc/sysconfig/interfaces/up.d/ppp/logger
..5..... c /etc/sysconfig/isapnp/isapnp-kernel.conf
..5..... c /etc/rc.d/rc.local
..5..... c /etc/crypttab
..5..... c /etc/sysconfig/network
..5..... c /etc/sysconfig/static-arp
..5..... c /etc/sysconfig/static-nat
..5..... c /etc/sysconfig/static-routes
..5..... c /etc/sysconfig/static-routes6
..?..... c /etc/sysconfig/system
..5..... c /etc/init/allowlogin.conf
..5..... c /etc/init/cpusets.conf
..5..... c /etc/init/cryptsetup.conf
..5..... c /etc/init/local.conf
..5..... c /etc/init/modules.conf
..5..... c /etc/init/random.conf
..5..... c /etc/sysctl.conf
..5..... c /etc/init/rc.conf
..5..... c /etc/init/rcS-sulogin.conf
..5..... c /etc/init/rcS.conf
..5..... c /etc/init/sys-chroots.conf
..5..... c /etc/init/udev.conf
..5..... c /etc/initlog.conf
..5..... c /etc/inittab
..5..... c /etc/modules
.M...... g /var/log/dmesg
rpm5 with Adam's patch applied (i.e. hmac ripped out):
$ ./rpm -V rc-scripts
..5..... c /etc/sysconfig/interfaces/ifcfg-eth0
..5..... c /etc/adjtime
..5..... c /etc/sysconfig/network
..5..... c /etc/sysconfig/static-routes
..5..... c /etc/sysconfig/static-routes6
..?..... c /etc/sysconfig/system
..5..... c /etc/sysctl.conf
..5..... c /etc/inittab
..5..... c /etc/modules
.M...... g /var/log/dmesg
..5..... c /etc/sysconfig/i18n
> >> * second, fix the verification process only, drop hmac support and do it
> >> the good old way.
> >
> > Quick question, does passing '--nohmacs' option give the same effect as
> > your patch to lib/verify.c? In that case we could just make it default
> > and add '--hmacs' option.
> >
>
> Implementing --nohmac as a disabler was the intent.
It doesn't work as intended then as it disables file digest verification
entirely.
> Meanwhile adding --nohmac, or patching rpm or counting the no of pkgs isn't
> gointg to repair the headers that do not have the right flag bits.
>
> And if you don't fix the metadata soon, then the problem will persist forever,
> and need to be dealt with again and again, because the affected packages
> will be deployed and nothing can change except wait 2-3y.
Metadata will fix itself over time. The problem here is broken file
digest verification.
--
Jan Rękorajski | PLD/Linux
SysAdm | http://www.pld-linux.org/
baggins<at>mimuw.edu.pl
baggins<at>pld-linux.org
More information about the pld-devel-en
mailing list