mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	Bind and connect to localhost. There is no reason for this test to use non-localhost interface. This lets us run this test in a network namespace. Signed-off-by: Stanislav Fomichev <sdf@google.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
		
			
				
	
	
		
			50 lines
		
	
	
	
		
			912 B
		
	
	
	
		
			Python
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
	
		
			912 B
		
	
	
	
		
			Python
		
	
	
		
			Executable file
		
	
	
	
	
#!/usr/bin/env python3
 | 
						|
#
 | 
						|
# SPDX-License-Identifier: GPL-2.0
 | 
						|
#
 | 
						|
 | 
						|
import sys, os, os.path, getopt
 | 
						|
import socket, time
 | 
						|
import subprocess
 | 
						|
import select
 | 
						|
 | 
						|
def read(sock, n):
 | 
						|
    buf = b''
 | 
						|
    while len(buf) < n:
 | 
						|
        rem = n - len(buf)
 | 
						|
        try: s = sock.recv(rem)
 | 
						|
        except (socket.error) as e: return b''
 | 
						|
        buf += s
 | 
						|
    return buf
 | 
						|
 | 
						|
def send(sock, s):
 | 
						|
    total = len(s)
 | 
						|
    count = 0
 | 
						|
    while count < total:
 | 
						|
        try: n = sock.send(s)
 | 
						|
        except (socket.error) as e: n = 0
 | 
						|
        if n == 0:
 | 
						|
            return count;
 | 
						|
        count += n
 | 
						|
    return count
 | 
						|
 | 
						|
 | 
						|
serverPort = int(sys.argv[1])
 | 
						|
 | 
						|
# create active socket
 | 
						|
sock = socket.socket(socket.AF_INET6, socket.SOCK_STREAM)
 | 
						|
try:
 | 
						|
    sock.connect(('localhost', serverPort))
 | 
						|
except socket.error as e:
 | 
						|
    sys.exit(1)
 | 
						|
 | 
						|
buf = b''
 | 
						|
n = 0
 | 
						|
while n < 1000:
 | 
						|
    buf += b'+'
 | 
						|
    n += 1
 | 
						|
 | 
						|
sock.settimeout(1);
 | 
						|
n = send(sock, buf)
 | 
						|
n = read(sock, 500)
 | 
						|
sys.exit(0)
 |