Patch "samples/bpf: Fix incorrect use of strlen in xdp_redirect_cpu" has been added to the 5.15-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    samples/bpf: Fix incorrect use of strlen in xdp_redirect_cpu

to the 5.15-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     samples-bpf-fix-incorrect-use-of-strlen-in-xdp_redir.patch
and it can be found in the queue-5.15 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit b90479d36d9296f5b3fba0a55238d59c3f9530ca
Author: Kumar Kartikeya Dwivedi <memxor@xxxxxxxxx>
Date:   Fri Nov 12 07:33:01 2021 +0530

    samples/bpf: Fix incorrect use of strlen in xdp_redirect_cpu
    
    [ Upstream commit 2453afe3845523d9dfe89dbfb3d71abfa095e260 ]
    
    Commit b599015f044d ("samples/bpf: Fix application of sizeof to pointer")
    tried to fix a bug where sizeof was incorrectly applied to a pointer instead
    of the array string was being copied to, to find the destination buffer size,
    but ended up using strlen, which is still incorrect. However, on closer look
    ifname_buf has no other use, hence directly use optarg.
    
    Fixes: b599015f044d ("samples/bpf: Fix application of sizeof to pointer")
    Fixes: e531a220cc59 ("samples: bpf: Convert xdp_redirect_cpu to XDP samples helper")
    Signed-off-by: Kumar Kartikeya Dwivedi <memxor@xxxxxxxxx>
    Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
    Reviewed-by: Alexander Lobakin <alexandr.lobakin@xxxxxxxxx>
    Tested-by: Alexander Lobakin <alexandr.lobakin@xxxxxxxxx>
    Link: https://lore.kernel.org/bpf/20211112020301.528357-1-memxor@xxxxxxxxx
    Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/samples/bpf/xdp_redirect_cpu_user.c b/samples/bpf/xdp_redirect_cpu_user.c
index d84e6949007cc..a81704d3317ba 100644
--- a/samples/bpf/xdp_redirect_cpu_user.c
+++ b/samples/bpf/xdp_redirect_cpu_user.c
@@ -309,7 +309,6 @@ int main(int argc, char **argv)
 	const char *mprog_filename = NULL, *mprog_name = NULL;
 	struct xdp_redirect_cpu *skel;
 	struct bpf_map_info info = {};
-	char ifname_buf[IF_NAMESIZE];
 	struct bpf_cpumap_val value;
 	__u32 infosz = sizeof(info);
 	int ret = EXIT_FAIL_OPTION;
@@ -390,10 +389,10 @@ int main(int argc, char **argv)
 		case 'd':
 			if (strlen(optarg) >= IF_NAMESIZE) {
 				fprintf(stderr, "-d/--dev name too long\n");
+				usage(argv, long_options, __doc__, mask, true, skel->obj);
 				goto end_cpu;
 			}
-			safe_strncpy(ifname_buf, optarg, strlen(ifname_buf));
-			ifindex = if_nametoindex(ifname_buf);
+			ifindex = if_nametoindex(optarg);
 			if (!ifindex)
 				ifindex = strtoul(optarg, NULL, 0);
 			if (!ifindex) {



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux