tree ecdce6466c31de81a9f029b449464cc8f62e9bca
parent 2431859dc77400eef4b5aedceebd34f76df35f22
author Gilles Peskine <Gilles.Peskine@arm.com> 1564515124 +0200
committer Gilles Peskine <Gilles.Peskine@arm.com> 1564575410 +0200

Store the key size in the slot in memory

There is now a field for the key size in the key slot in memory. Use
it.

This makes psa_get_key_attributes() marginally faster at the expense
of memory that is available anyway in the current memory layout (16
bits for the size, 16 bits for flags). That's not the goal, though:
the goal is to simplify the code, in particular to make it more
uniform between transparent keys (whose size can be recomputed) and
keys in secure elements (whose size cannot be recomputed).

For keys in a secure element, the bit size is now saved by serializing
the type psa_key_bits_t (which is an alias for uint16_t) rather than
size_t.
