Skip to content

Commit e69adc4

Browse files
Geliang Tangintel-lab-lkp
authored andcommitted
Squash to "selftests/bpf: Add getsockopt to inspect mptcp subflow"
Update error messages: run_subflow:FAIL:mark unexpected mark: actual 3 != expected 0 run_subflow:FAIL:cc unexpected cc: actual 'reno' != expected 'cubic' Signed-off-by: Geliang Tang <[email protected]>
1 parent 12be656 commit e69adc4

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

tools/testing/selftests/bpf/progs/mptcp_subflow.c

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ int mptcp_subflow(struct bpf_sock_ops *skops)
6363
static int _check_getsockopt_subflow_mark(struct mptcp_sock *msk, struct bpf_sockopt *ctx)
6464
{
6565
struct mptcp_subflow_context *subflow;
66+
int *optval = ctx->optval;
6667
int i = 0;
6768

6869
mptcp_for_each_subflow(msk, subflow) {
@@ -72,7 +73,10 @@ static int _check_getsockopt_subflow_mark(struct mptcp_sock *msk, struct bpf_soc
7273
struct mptcp_subflow_context));
7374

7475
if (ssk->sk_mark != ++i) {
75-
ctx->retval = -2;
76+
if (ctx->optval + sizeof(int) <= ctx->optval_end) {
77+
*optval = ssk->sk_mark;
78+
ctx->retval = 0;
79+
}
7680
break;
7781
}
7882
}
@@ -83,6 +87,7 @@ static int _check_getsockopt_subflow_mark(struct mptcp_sock *msk, struct bpf_soc
8387
static int _check_getsockopt_subflow_cc(struct mptcp_sock *msk, struct bpf_sockopt *ctx)
8488
{
8589
struct mptcp_subflow_context *subflow;
90+
char *optval = ctx->optval;
8691

8792
mptcp_for_each_subflow(msk, subflow) {
8893
struct inet_connection_sock *icsk;
@@ -94,7 +99,10 @@ static int _check_getsockopt_subflow_cc(struct mptcp_sock *msk, struct bpf_socko
9499

95100
if (ssk->sk_mark == 2 &&
96101
__builtin_memcmp(icsk->icsk_ca_ops->name, cc, TCP_CA_NAME_MAX)) {
97-
ctx->retval = -2;
102+
if (ctx->optval + TCP_CA_NAME_MAX <= ctx->optval_end) {
103+
__builtin_memcpy(optval, icsk->icsk_ca_ops->name, TCP_CA_NAME_MAX);
104+
ctx->retval = 0;
105+
}
98106
break;
99107
}
100108
}

0 commit comments

Comments
 (0)