From: Daan De Meyer <daan.j.demeyer@xxxxxxxxx> Date: Wed, 11 Oct 2023 19:03:11 +0200 [...] > @@ -1483,11 +1488,18 @@ int __cgroup_bpf_run_filter_sock_addr(struct sock *sk, > if (!ctx.uaddr) { > memset(&unspec, 0, sizeof(unspec)); > ctx.uaddr = (struct sockaddr *)&unspec; > - } > + ctx.uaddrlen = 0; > + } else > + ctx.uaddrlen = *uaddrlen; > > cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data); > - return bpf_prog_run_array_cg(&cgrp->bpf, atype, &ctx, bpf_prog_run, > - 0, flags); > + ret = bpf_prog_run_array_cg(&cgrp->bpf, atype, &ctx, bpf_prog_run, > + 0, flags); > + > + if (!ret && uaddrlen) nit: no need to check uaddrlen here or maybe check ctx.uaddrlen. > + *uaddrlen = ctx.uaddrlen; > + > + return ret; > } > EXPORT_SYMBOL(__cgroup_bpf_run_filter_sock_addr); >