linux/tools/testing/vsock
Sebastien Boeuf 9de9f7d1cb tools: testing: vsock: Test when server is bound but not listening
Whenever the server side of vsock is binding to the socket, but not
listening yet, we expect the behavior from the client to be identical to
what happens when the server is not even started.

This new test runs the server side so that it binds to the socket
without ever listening to it. The client side will try to connect and
should receive an ECONNRESET error.

This new test provides a way to validate the previously introduced patch
for making sure the server side will always answer with a RST packet in
case the client requested a new connection.

Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2020-02-16 19:01:49 -08:00
..
.gitignore VSOCK: add AF_VSOCK test cases 2019-12-20 21:09:21 -08:00
control.c testing/vsock: add parameters to list and skip tests 2019-12-20 21:09:21 -08:00
control.h testing/vsock: add parameters to list and skip tests 2019-12-20 21:09:21 -08:00
Makefile VSOCK: add AF_VSOCK test cases 2019-12-20 21:09:21 -08:00
README VSOCK: add AF_VSOCK test cases 2019-12-20 21:09:21 -08:00
timeout.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 2019-06-05 17:37:17 +02:00
timeout.h VSOCK: add SPDX identifiers to vsock tests 2019-12-20 21:09:21 -08:00
util.c testing/vsock: add parameters to list and skip tests 2019-12-20 21:09:21 -08:00
util.h testing/vsock: add parameters to list and skip tests 2019-12-20 21:09:21 -08:00
vsock_diag_test.c testing/vsock: print list of options and description 2019-12-20 21:09:21 -08:00
vsock_test.c tools: testing: vsock: Test when server is bound but not listening 2020-02-16 19:01:49 -08:00

AF_VSOCK test suite
-------------------
These tests exercise net/vmw_vsock/ host<->guest sockets for VMware, KVM, and
Hyper-V.

The following tests are available:

  * vsock_test - core AF_VSOCK socket functionality
  * vsock_diag_test - vsock_diag.ko module for listing open sockets

The following prerequisite steps are not automated and must be performed prior
to running tests:

1. Build the kernel, make headers_install, and build these tests.
2. Install the kernel and tests on the host.
3. Install the kernel and tests inside the guest.
4. Boot the guest and ensure that the AF_VSOCK transport is enabled.

Invoke test binaries in both directions as follows:

  # host=server, guest=client
  (host)# $TEST_BINARY --mode=server \
                       --control-port=1234 \
                       --peer-cid=3
  (guest)# $TEST_BINARY --mode=client \
                        --control-host=$HOST_IP \
                        --control-port=1234 \
                        --peer-cid=2

  # host=client, guest=server
  (guest)# $TEST_BINARY --mode=server \
                        --control-port=1234 \
                        --peer-cid=2
  (host)# $TEST_BINARY --mode=client \
                       --control-port=$GUEST_IP \
                       --control-port=1234 \
                       --peer-cid=3