crypto: vmac - Make VMAC work when blocks aren't aligned
VMAC implementation, as it is, does not work with blocks that are not multiples of 128-bytes. Furthermore, this is a problem when using the implementation on scatterlists, even when the complete plain text is 128-byte multiple, as the pieces that get passed to vmac_update can be pretty much any size. I also added test cases for unaligned blocks. Signed-off-by: Salman Qazi <sqazi@google.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
@@ -56,6 +56,8 @@ typedef u64 vmac_t;
|
||||
struct vmac_ctx_t {
|
||||
struct crypto_cipher *child;
|
||||
struct vmac_ctx __vmac_ctx;
|
||||
u8 partial[VMAC_NHBYTES]; /* partial block */
|
||||
int partial_size; /* size of the partial block */
|
||||
};
|
||||
|
||||
#endif /* __CRYPTO_VMAC_H */
|
||||
|
Reference in New Issue
Block a user