diff options
Diffstat (limited to 'net/tls/tls_sw.c')
-rw-r--r-- | net/tls/tls_sw.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/net/tls/tls_sw.c b/net/tls/tls_sw.c index 0d670c8adf18..7453f5ae0819 100644 --- a/net/tls/tls_sw.c +++ b/net/tls/tls_sw.c | |||
@@ -57,14 +57,11 @@ static int tls_do_decryption(struct sock *sk, | |||
57 | struct aead_request *aead_req; | 57 | struct aead_request *aead_req; |
58 | 58 | ||
59 | int ret; | 59 | int ret; |
60 | unsigned int req_size = sizeof(struct aead_request) + | ||
61 | crypto_aead_reqsize(ctx->aead_recv); | ||
62 | 60 | ||
63 | aead_req = kzalloc(req_size, flags); | 61 | aead_req = aead_request_alloc(ctx->aead_recv, flags); |
64 | if (!aead_req) | 62 | if (!aead_req) |
65 | return -ENOMEM; | 63 | return -ENOMEM; |
66 | 64 | ||
67 | aead_request_set_tfm(aead_req, ctx->aead_recv); | ||
68 | aead_request_set_ad(aead_req, TLS_AAD_SPACE_SIZE); | 65 | aead_request_set_ad(aead_req, TLS_AAD_SPACE_SIZE); |
69 | aead_request_set_crypt(aead_req, sgin, sgout, | 66 | aead_request_set_crypt(aead_req, sgin, sgout, |
70 | data_len + tls_ctx->rx.tag_size, | 67 | data_len + tls_ctx->rx.tag_size, |
@@ -86,7 +83,7 @@ static int tls_do_decryption(struct sock *sk, | |||
86 | ctx->saved_data_ready(sk); | 83 | ctx->saved_data_ready(sk); |
87 | 84 | ||
88 | out: | 85 | out: |
89 | kfree(aead_req); | 86 | aead_request_free(aead_req); |
90 | return ret; | 87 | return ret; |
91 | } | 88 | } |
92 | 89 | ||
@@ -224,8 +221,7 @@ static int tls_push_record(struct sock *sk, int flags, | |||
224 | struct aead_request *req; | 221 | struct aead_request *req; |
225 | int rc; | 222 | int rc; |
226 | 223 | ||
227 | req = kzalloc(sizeof(struct aead_request) + | 224 | req = aead_request_alloc(ctx->aead_send, sk->sk_allocation); |
228 | crypto_aead_reqsize(ctx->aead_send), sk->sk_allocation); | ||
229 | if (!req) | 225 | if (!req) |
230 | return -ENOMEM; | 226 | return -ENOMEM; |
231 | 227 | ||
@@ -267,7 +263,7 @@ static int tls_push_record(struct sock *sk, int flags, | |||
267 | 263 | ||
268 | tls_advance_record_sn(sk, &tls_ctx->tx); | 264 | tls_advance_record_sn(sk, &tls_ctx->tx); |
269 | out_req: | 265 | out_req: |
270 | kfree(req); | 266 | aead_request_free(req); |
271 | return rc; | 267 | return rc; |
272 | } | 268 | } |
273 | 269 | ||