Commit 9363dc8d authored by Vadim Fedorenko's avatar Vadim Fedorenko Committed by Alexei Starovoitov

selftests: bpf: crypto: use NULL instead of 0-sized dynptr

Adjust selftests to use nullable option for state and IV arg.
Reviewed-by: default avatarEduard Zingerman <eddyz87@gmail.com>
Signed-off-by: default avatarVadim Fedorenko <vadfed@meta.com>
Link: https://lore.kernel.org/r/20240613211817.1551967-4-vadfed@meta.comSigned-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
parent 65d6d61d
...@@ -89,7 +89,7 @@ int decrypt_sanity(struct __sk_buff *skb) ...@@ -89,7 +89,7 @@ int decrypt_sanity(struct __sk_buff *skb)
{ {
struct __crypto_ctx_value *v; struct __crypto_ctx_value *v;
struct bpf_crypto_ctx *ctx; struct bpf_crypto_ctx *ctx;
struct bpf_dynptr psrc, pdst, iv; struct bpf_dynptr psrc, pdst;
int err; int err;
err = skb_dynptr_validate(skb, &psrc); err = skb_dynptr_validate(skb, &psrc);
...@@ -114,12 +114,8 @@ int decrypt_sanity(struct __sk_buff *skb) ...@@ -114,12 +114,8 @@ int decrypt_sanity(struct __sk_buff *skb)
* production code, a percpu map should be used to store the result. * production code, a percpu map should be used to store the result.
*/ */
bpf_dynptr_from_mem(dst, sizeof(dst), 0, &pdst); bpf_dynptr_from_mem(dst, sizeof(dst), 0, &pdst);
/* iv dynptr has to be initialized with 0 size, but proper memory region
* has to be provided anyway
*/
bpf_dynptr_from_mem(dst, 0, 0, &iv);
status = bpf_crypto_decrypt(ctx, &psrc, &pdst, &iv); status = bpf_crypto_decrypt(ctx, &psrc, &pdst, NULL);
return TC_ACT_SHOT; return TC_ACT_SHOT;
} }
...@@ -129,7 +125,7 @@ int encrypt_sanity(struct __sk_buff *skb) ...@@ -129,7 +125,7 @@ int encrypt_sanity(struct __sk_buff *skb)
{ {
struct __crypto_ctx_value *v; struct __crypto_ctx_value *v;
struct bpf_crypto_ctx *ctx; struct bpf_crypto_ctx *ctx;
struct bpf_dynptr psrc, pdst, iv; struct bpf_dynptr psrc, pdst;
int err; int err;
status = 0; status = 0;
...@@ -156,12 +152,8 @@ int encrypt_sanity(struct __sk_buff *skb) ...@@ -156,12 +152,8 @@ int encrypt_sanity(struct __sk_buff *skb)
* production code, a percpu map should be used to store the result. * production code, a percpu map should be used to store the result.
*/ */
bpf_dynptr_from_mem(dst, sizeof(dst), 0, &pdst); bpf_dynptr_from_mem(dst, sizeof(dst), 0, &pdst);
/* iv dynptr has to be initialized with 0 size, but proper memory region
* has to be provided anyway
*/
bpf_dynptr_from_mem(dst, 0, 0, &iv);
status = bpf_crypto_encrypt(ctx, &psrc, &pdst, &iv); status = bpf_crypto_encrypt(ctx, &psrc, &pdst, NULL);
return TC_ACT_SHOT; return TC_ACT_SHOT;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment