mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	selftests: mptcp: join: fix 'implicit EP' test
mptcp_join 'implicit EP' test currently fails when using ip mptcp:
  $ ./mptcp_join.sh -iI
  <snip>
  001 implicit EP    creation[fail] expected '10.0.2.2 10.0.2.2 id 1 implicit' found '10.0.2.2 id 1 rawflags 10 '
  Error: too many addresses or duplicate one: -22.
                     ID change is prevented[fail] expected '10.0.2.2 10.0.2.2 id 1 implicit' found '10.0.2.2 id 1 rawflags 10 '
                     modif is allowed[fail] expected '10.0.2.2 10.0.2.2 id 1 signal' found '10.0.2.2 id 1 signal '
This happens because of two reasons:
- iproute v6.3.0 does not support the implicit flag, fixed with
  iproute2-next commit 3a2535a41854 ("mptcp: add support for implicit
  flag")
- pm_nl_check_endpoint wrongly expects the ip address to be repeated two
  times in iproute output, and does not account for a final whitespace
  in it.
This fixes the issue trimming the whitespace in the output string and
removing the double address in the expected string.
Fixes: 69c6ce7b6e ("selftests: mptcp: add implicit endpoint test case")
Cc: stable@vger.kernel.org
Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
Reviewed-by: Matthieu Baerts <matthieu.baerts@tessares.net>
Signed-off-by: Matthieu Baerts <matthieu.baerts@tessares.net>
Link: https://lore.kernel.org/r/20230803-upstream-net-20230803-misc-fixes-6-5-v1-2-6671b1ab11cc@tessares.net
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
			
			
This commit is contained in:
		
							parent
							
								
									aaf2123a5c
								
							
						
					
					
						commit
						c8c101ae39
					
				
					 1 changed files with 3 additions and 2 deletions
				
			
		| 
						 | 
					@ -796,10 +796,11 @@ pm_nl_check_endpoint()
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if [ $ip_mptcp -eq 1 ]; then
 | 
						if [ $ip_mptcp -eq 1 ]; then
 | 
				
			||||||
 | 
							# get line and trim trailing whitespace
 | 
				
			||||||
		line=$(ip -n $ns mptcp endpoint show $id)
 | 
							line=$(ip -n $ns mptcp endpoint show $id)
 | 
				
			||||||
 | 
							line="${line% }"
 | 
				
			||||||
		# the dump order is: address id flags port dev
 | 
							# the dump order is: address id flags port dev
 | 
				
			||||||
		expected_line="$addr"
 | 
							[ -n "$addr" ] && expected_line="$addr"
 | 
				
			||||||
		[ -n "$addr" ] && expected_line="$expected_line $addr"
 | 
					 | 
				
			||||||
		expected_line="$expected_line $id"
 | 
							expected_line="$expected_line $id"
 | 
				
			||||||
		[ -n "$_flags" ] && expected_line="$expected_line ${_flags//","/" "}"
 | 
							[ -n "$_flags" ] && expected_line="$expected_line ${_flags//","/" "}"
 | 
				
			||||||
		[ -n "$dev" ] && expected_line="$expected_line $dev"
 | 
							[ -n "$dev" ] && expected_line="$expected_line $dev"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue