]> git.saurik.com Git - apt.git/commit
* apt-pkg/contrib/sha1.cc:
authorDavid Miller <davem@davemloft.net>
Tue, 26 Jul 2011 07:00:10 +0000 (09:00 +0200)
committerDavid Kalnischkies <kalnischkies@gmail.com>
Tue, 26 Jul 2011 07:00:10 +0000 (09:00 +0200)
commit1edc38abff0bffd56ad7a128f6243050d4064827
tree98524fb434250f5196d9febae4e3650c3d0eb318
parentcd84a799ecbb958af42e554629250a404889c651
* apt-pkg/contrib/sha1.cc:
  - fix illegally casts of on-stack buffer to a type requiring more
    alignment than it has resulting in segfaults on sparc (Closes: #634696)

The problem is how sha1.cc codes the SHA1 transform, it illegally
casts the on-stack workspace buffer to a type requiring more
alignment than 'workspace' is actually declared to have.

This only shows up recently because gcc-4.6 now does a really
aggressive optimization where it gets rid of the workspace
buffer entirely and just accesses 'buffer' directly, and assumes
it has the necessary alignment for 32-bit loads (which it
doesn't).
apt-pkg/contrib/sha1.cc
debian/changelog