Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
Pull crypto fixes from Herbert Xu: "This fixes a NULL pointer dereference on allocation failure in caam, as well as a regression in the ctr mode on s390 that was added with the recent concurrency fixes" * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: crypto: s390 - fix aes,des ctr mode concurrency finding. crypto: caam - add allocation failure handling in SPRINTFCAT macro
This commit is contained in:
commit
1f5518b4e7
@ -820,6 +820,9 @@ static int ctr_aes_crypt(struct blkcipher_desc *desc, long func,
|
|||||||
else
|
else
|
||||||
memcpy(walk->iv, ctrptr, AES_BLOCK_SIZE);
|
memcpy(walk->iv, ctrptr, AES_BLOCK_SIZE);
|
||||||
spin_unlock(&ctrblk_lock);
|
spin_unlock(&ctrblk_lock);
|
||||||
|
} else {
|
||||||
|
if (!nbytes)
|
||||||
|
memcpy(walk->iv, ctrptr, AES_BLOCK_SIZE);
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* final block may be < AES_BLOCK_SIZE, copy only nbytes
|
* final block may be < AES_BLOCK_SIZE, copy only nbytes
|
||||||
|
@ -429,6 +429,9 @@ static int ctr_desall_crypt(struct blkcipher_desc *desc, long func,
|
|||||||
else
|
else
|
||||||
memcpy(walk->iv, ctrptr, DES_BLOCK_SIZE);
|
memcpy(walk->iv, ctrptr, DES_BLOCK_SIZE);
|
||||||
spin_unlock(&ctrblk_lock);
|
spin_unlock(&ctrblk_lock);
|
||||||
|
} else {
|
||||||
|
if (!nbytes)
|
||||||
|
memcpy(walk->iv, ctrptr, DES_BLOCK_SIZE);
|
||||||
}
|
}
|
||||||
/* final block may be < DES_BLOCK_SIZE, copy only nbytes */
|
/* final block may be < DES_BLOCK_SIZE, copy only nbytes */
|
||||||
if (nbytes) {
|
if (nbytes) {
|
||||||
|
@ -16,9 +16,13 @@
|
|||||||
char *tmp; \
|
char *tmp; \
|
||||||
\
|
\
|
||||||
tmp = kmalloc(sizeof(format) + max_alloc, GFP_ATOMIC); \
|
tmp = kmalloc(sizeof(format) + max_alloc, GFP_ATOMIC); \
|
||||||
sprintf(tmp, format, param); \
|
if (likely(tmp)) { \
|
||||||
strcat(str, tmp); \
|
sprintf(tmp, format, param); \
|
||||||
kfree(tmp); \
|
strcat(str, tmp); \
|
||||||
|
kfree(tmp); \
|
||||||
|
} else { \
|
||||||
|
strcat(str, "kmalloc failure in SPRINTFCAT"); \
|
||||||
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
static void report_jump_idx(u32 status, char *outstr)
|
static void report_jump_idx(u32 status, char *outstr)
|
||||||
|
Loading…
Reference in New Issue
Block a user