crypto: api - Do not displace newly registered algorithms
authorHerbert Xu <herbert@gondor.apana.org.au>
Mon, 31 Aug 2009 05:56:54 +0000 (15:56 +1000)
committerHerbert Xu <herbert@gondor.apana.org.au>
Mon, 31 Aug 2009 05:56:54 +0000 (15:56 +1000)
commit2bf2901669a564b402cd0e40eb3f941c391e64c4
tree2c4d23726c2dbb7624108b6865aea6ebb1d6403e
parenta367b17f34e1280270a6b577c11d5ecff093f9ae
crypto: api - Do not displace newly registered algorithms

We have a mechanism where newly registered algorithms of a higher
priority can displace existing instances that use a different
implementation of the same algorithm with a lower priority.

Unfortunately the same mechanism can cause a newly registered
algorithm to displace itself if it depends on an existing version
of the same algorithm.

This patch fixes this by keeping all algorithms that the newly
reigstered algorithm depends on, thus protecting them from being
removed.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/algapi.c