<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/include/crypto/internal, branch v4.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v4.2</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v4.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2015-06-22T07:49:18Z</updated>
<entry>
<title>crypto: rng - Do not free default RNG when it becomes unused</title>
<updated>2015-06-22T07:49:18Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2015-06-21T11:11:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7cecadb7cca83953e7857fe9f7273b705cb8ebe7'/>
<id>urn:sha1:7cecadb7cca83953e7857fe9f7273b705cb8ebe7</id>
<content type='text'>
Currently we free the default RNG when its use count hits zero.
This was OK when the IV generators would latch onto the RNG at
instance creation time and keep it until the instance is torn
down.

Now that IV generators only keep the RNG reference during init
time this scheme causes the default RNG to come and go at a high
frequencey.  This is highly undesirable as we want to keep a single
RNG in use unless the admin wants it to be removed.

This patch changes the scheme so that the system RNG once allocated
is never removed unless a specifically requested.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aead - Fix aead_instance struct size</title>
<updated>2015-06-19T06:16:30Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2015-06-18T06:00:49Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f5d8660acb9623470adcef426c6ff7b07cbe4b74'/>
<id>urn:sha1:f5d8660acb9623470adcef426c6ff7b07cbe4b74</id>
<content type='text'>
The struct aead_instance is meant to extend struct crypto_instance
by incorporating the extra members of struct aead_alg.  However,
the current layout which is copied from shash/ahash does not specify
the struct fully.  In particular only aead_alg is present.

For shash/ahash this works because users there add extra headroom
to sizeof(struct crypto_instance) when allocating the instance.
Unfortunately for aead, this bit was lost when the new aead_instance
was added.

Rather than fixing it like shash/ahash, this patch simply expands
struct aead_instance to contain what is supposed to be there, i.e.,
adding struct crypto_instance.

In order to not break existing AEAD users, this is done through an
anonymous union.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: rsa - add a new rsa generic implementation</title>
<updated>2015-06-17T09:03:53Z</updated>
<author>
<name>Tadeusz Struk</name>
<email>tadeusz.struk@intel.com</email>
</author>
<published>2015-06-16T17:31:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=cfc2bb32b31371d6bffc6bf2da3548f20ad48c83'/>
<id>urn:sha1:cfc2bb32b31371d6bffc6bf2da3548f20ad48c83</id>
<content type='text'>
Add a new rsa generic SW implementation.
This implements only cryptographic primitives.

Signed-off-by: Tadeusz Struk &lt;tadeusz.struk@intel.com&gt;

Added select on ASN1.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: akcipher - add PKE API</title>
<updated>2015-06-17T09:03:14Z</updated>
<author>
<name>Tadeusz Struk</name>
<email>tadeusz.struk@intel.com</email>
</author>
<published>2015-06-16T17:30:55Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=3c339ab83fc09d9d91fb7e8b4a60e8ddc91de417'/>
<id>urn:sha1:3c339ab83fc09d9d91fb7e8b4a60e8ddc91de417</id>
<content type='text'>
Add Public Key Encryption API.

Signed-off-by: Tadeusz Struk &lt;tadeusz.struk@intel.com&gt;

Made CRYPTO_AKCIPHER invisible like other type config options.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aead - Add multiple algorithm registration interface</title>
<updated>2015-06-03T02:48:35Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2015-05-28T14:07:59Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=caab94612ac677523d2bf4a4904c8d080c2c7f73'/>
<id>urn:sha1:caab94612ac677523d2bf4a4904c8d080c2c7f73</id>
<content type='text'>
This patch adds the helpers that allow the registration and removal
of multiple algorithms.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aead - Ignore return value from crypto_unregister_alg</title>
<updated>2015-06-03T02:48:34Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2015-05-28T14:07:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=43615369ab79f2c06532ea1607266b8307ccce82'/>
<id>urn:sha1:43615369ab79f2c06532ea1607266b8307ccce82</id>
<content type='text'>
No new code should be using the return value of crypto_unregister_alg
as it will become void soon.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aead - Add aead_alg_instance</title>
<updated>2015-06-03T02:48:33Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2015-05-28T14:07:55Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5c98d62059faf7c59211cb591da671eaac7b7c3c'/>
<id>urn:sha1:5c98d62059faf7c59211cb591da671eaac7b7c3c</id>
<content type='text'>
Now that type-safe init/exit functions exist, they often need
to access the underlying aead_instance.  So this patch adds the
helper aead_alg_instance to access aead_instance from a crypto_aead
object.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aead - Add common IV generation code</title>
<updated>2015-05-28T03:23:17Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2015-05-27T06:37:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=6350449fbf269aa78281b08852e64d5a4845df96'/>
<id>urn:sha1:6350449fbf269aa78281b08852e64d5a4845df96</id>
<content type='text'>
This patch adds some common IV generation code currently duplicated
by seqiv and echainiv.  For example, the setkey and setauthsize
functions are completely identical.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: aead - Add crypto_aead_alg_ivsize/maxauthsize</title>
<updated>2015-05-25T10:41:25Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2015-05-22T08:30:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=30e4c010aefdbb81b2aaf64758850432eb289f47'/>
<id>urn:sha1:30e4c010aefdbb81b2aaf64758850432eb289f47</id>
<content type='text'>
AEAD algorithm implementors need to figure out a given algorithm's
IV size and maximum authentication size.  During the transition
this is difficult to do as an algorithm could be new style or old
style.

This patch creates two helpers to make this easier.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
<entry>
<title>crypto: seqiv - Add support for new AEAD interface</title>
<updated>2015-05-22T03:25:56Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2015-05-21T07:11:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=856e3f4092cfd9ea6d6564e73f5bce5a0ac3cae3'/>
<id>urn:sha1:856e3f4092cfd9ea6d6564e73f5bce5a0ac3cae3</id>
<content type='text'>
This patch converts the seqiv IV generator to work with the new
AEAD interface where IV generators are just normal AEAD algorithms.

Full backwards compatibility is paramount at this point since
no users have yet switched over to the new interface.  Nor can
they switch to the new interface until IV generation is fully
supported by it.

So this means we are adding two versions of seqiv alongside the
existing one.  The first one is the one that will be used when
the underlying AEAD algorithm has switched over to the new AEAD
interface.  The second one handles the current case where the
underlying AEAD algorithm still uses the old interface.

Both versions export themselves through the new AEAD interface.

Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
</feed>
