Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
Merge mainline to pick up c7513c2a27
("crypto/arm64: aes-ce-gcm -
add missing kernel_neon_begin/end pair").
This commit is contained in:
@@ -1060,12 +1060,19 @@ void af_alg_async_cb(struct crypto_async_request *_req, int err)
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(af_alg_async_cb);
|
||||
|
||||
__poll_t af_alg_poll_mask(struct socket *sock, __poll_t events)
|
||||
/**
|
||||
* af_alg_poll - poll system call handler
|
||||
*/
|
||||
__poll_t af_alg_poll(struct file *file, struct socket *sock,
|
||||
poll_table *wait)
|
||||
{
|
||||
struct sock *sk = sock->sk;
|
||||
struct alg_sock *ask = alg_sk(sk);
|
||||
struct af_alg_ctx *ctx = ask->private;
|
||||
__poll_t mask = 0;
|
||||
__poll_t mask;
|
||||
|
||||
sock_poll_wait(file, sk_sleep(sk), wait);
|
||||
mask = 0;
|
||||
|
||||
if (!ctx->more || ctx->used)
|
||||
mask |= EPOLLIN | EPOLLRDNORM;
|
||||
@@ -1075,7 +1082,7 @@ __poll_t af_alg_poll_mask(struct socket *sock, __poll_t events)
|
||||
|
||||
return mask;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(af_alg_poll_mask);
|
||||
EXPORT_SYMBOL_GPL(af_alg_poll);
|
||||
|
||||
/**
|
||||
* af_alg_alloc_areq - allocate struct af_alg_async_req
|
||||
@@ -1148,8 +1155,10 @@ int af_alg_get_rsgl(struct sock *sk, struct msghdr *msg, int flags,
|
||||
|
||||
/* make one iovec available as scatterlist */
|
||||
err = af_alg_make_sg(&rsgl->sgl, &msg->msg_iter, seglen);
|
||||
if (err < 0)
|
||||
if (err < 0) {
|
||||
rsgl->sg_num_bytes = 0;
|
||||
return err;
|
||||
}
|
||||
|
||||
/* chain the new scatterlist with previous one */
|
||||
if (areq->last_rsgl)
|
||||
|
@@ -375,7 +375,7 @@ static struct proto_ops algif_aead_ops = {
|
||||
.sendmsg = aead_sendmsg,
|
||||
.sendpage = af_alg_sendpage,
|
||||
.recvmsg = aead_recvmsg,
|
||||
.poll_mask = af_alg_poll_mask,
|
||||
.poll = af_alg_poll,
|
||||
};
|
||||
|
||||
static int aead_check_key(struct socket *sock)
|
||||
@@ -471,7 +471,7 @@ static struct proto_ops algif_aead_ops_nokey = {
|
||||
.sendmsg = aead_sendmsg_nokey,
|
||||
.sendpage = aead_sendpage_nokey,
|
||||
.recvmsg = aead_recvmsg_nokey,
|
||||
.poll_mask = af_alg_poll_mask,
|
||||
.poll = af_alg_poll,
|
||||
};
|
||||
|
||||
static void *aead_bind(const char *name, u32 type, u32 mask)
|
||||
|
@@ -206,7 +206,7 @@ static struct proto_ops algif_skcipher_ops = {
|
||||
.sendmsg = skcipher_sendmsg,
|
||||
.sendpage = af_alg_sendpage,
|
||||
.recvmsg = skcipher_recvmsg,
|
||||
.poll_mask = af_alg_poll_mask,
|
||||
.poll = af_alg_poll,
|
||||
};
|
||||
|
||||
static int skcipher_check_key(struct socket *sock)
|
||||
@@ -302,7 +302,7 @@ static struct proto_ops algif_skcipher_ops_nokey = {
|
||||
.sendmsg = skcipher_sendmsg_nokey,
|
||||
.sendpage = skcipher_sendpage_nokey,
|
||||
.recvmsg = skcipher_recvmsg_nokey,
|
||||
.poll_mask = af_alg_poll_mask,
|
||||
.poll = af_alg_poll,
|
||||
};
|
||||
|
||||
static void *skcipher_bind(const char *name, u32 type, u32 mask)
|
||||
|
@@ -249,6 +249,15 @@ int x509_note_signature(void *context, size_t hdrlen,
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (strcmp(ctx->cert->sig->pkey_algo, "rsa") == 0) {
|
||||
/* Discard the BIT STRING metadata */
|
||||
if (vlen < 1 || *(const u8 *)value != 0)
|
||||
return -EBADMSG;
|
||||
|
||||
value++;
|
||||
vlen--;
|
||||
}
|
||||
|
||||
ctx->cert->raw_sig = value;
|
||||
ctx->cert->raw_sig_size = vlen;
|
||||
return 0;
|
||||
|
@@ -274,8 +274,9 @@ static void crypto_morus640_decrypt_chunk(struct morus640_state *state, u8 *dst,
|
||||
union morus640_block_in tail;
|
||||
|
||||
memcpy(tail.bytes, src, size);
|
||||
memset(tail.bytes + size, 0, MORUS640_BLOCK_SIZE - size);
|
||||
|
||||
crypto_morus640_load_a(&m, src);
|
||||
crypto_morus640_load_a(&m, tail.bytes);
|
||||
crypto_morus640_core(state, &m);
|
||||
crypto_morus640_store_a(tail.bytes, &m);
|
||||
memset(tail.bytes + size, 0, MORUS640_BLOCK_SIZE - size);
|
||||
|
@@ -152,7 +152,7 @@ static SHA3_INLINE void keccakf_round(u64 st[25])
|
||||
st[24] ^= bc[ 4];
|
||||
}
|
||||
|
||||
static void __optimize("O3") keccakf(u64 st[25])
|
||||
static void keccakf(u64 st[25])
|
||||
{
|
||||
int round;
|
||||
|
||||
|
Reference in New Issue
Block a user