From 2024bd0e8867f4f0e2a4561b570259cf3058f7b9 Mon Sep 17 00:00:00 2001 From: Michael Tuexen <tuexen@fh-muenster.de> Date: Sat, 16 May 2015 13:13:45 +0200 Subject: [PATCH] Add simple HEARTBEAT test. This test is used to test the injecting of correct HEARTBEAT-ACK chunks for outbound HEARTBEAT chunks. --- .../packetdrill/tests/bsd/sctp/sctp_hb.pkt | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 gtests/net/packetdrill/tests/bsd/sctp/sctp_hb.pkt diff --git a/gtests/net/packetdrill/tests/bsd/sctp/sctp_hb.pkt b/gtests/net/packetdrill/tests/bsd/sctp/sctp_hb.pkt new file mode 100644 index 00000000..0869034e --- /dev/null +++ b/gtests/net/packetdrill/tests/bsd/sctp/sctp_hb.pkt @@ -0,0 +1,21 @@ + 0.0 `sysctl -w net.inet.sctp.heartbeat_interval=100` +// First, actively establish an SCTP assocation ++0.0 socket(..., SOCK_STREAM, IPPROTO_SCTP) = 3 ++0.0 fcntl(3, F_GETFL) = 0x2 (flags O_RDWR) ++0.0 fcntl(3, F_SETFL, O_RDWR|O_NONBLOCK) = 0 ++0.1 connect(3, ..., ...) = -1 EINPROGRESS (Operation now in progress) ++0.0 > sctp: INIT[tag=1 tsn=1] // FIXME ++0.0 < sctp: INIT_ACK[tag=2 a_rwnd=1500 os=1 is =1 tsn=1] // FIXME ++0.0 > sctp: COOKIE_ECHO[] // FIXME ++0.0 < sctp: COOKIE_ACK[] ++0.0 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 +// then respond to two HEARTBEATs + * > sctp: HEARTBEAT[] ++0.0 < sctp: HEARTBEAT_ACK[] + * > sctp: HEARTBEAT[] ++0.0 < sctp: HEARTBEAT_ACK[] +// and finally perform a graceful shutdown ++0.0 close(3) = 0 ++0.0 > sctp: SHUTDOWN[tsn=0] ++0.0 < sctp: SHUTDOWN_ACK[] ++0.0 > sctp: SHUTDOWN_COMPLETE[] -- GitLab