From b36d4f8fb88ff4936b521fcc70042aec68dbad54 Mon Sep 17 00:00:00 2001
From: Michael Tuexen <tuexen@fh-muenster.de>
Date: Fri, 1 May 2015 07:39:10 +0200
Subject: [PATCH] Improve UDPLite tests.

---
 .../tests/bsd/udplite/udplite-cscov-sockopt.pkt     |  2 ++
 .../bsd/udplite/udplite-port-unreachable-alt.pkt    | 13 +++++++++++++
 2 files changed, 15 insertions(+)
 create mode 100644 gtests/net/packetdrill/tests/bsd/udplite/udplite-port-unreachable-alt.pkt

diff --git a/gtests/net/packetdrill/tests/bsd/udplite/udplite-cscov-sockopt.pkt b/gtests/net/packetdrill/tests/bsd/udplite/udplite-cscov-sockopt.pkt
index 8cebe26f..4187babb 100644
--- a/gtests/net/packetdrill/tests/bsd/udplite/udplite-cscov-sockopt.pkt
+++ b/gtests/net/packetdrill/tests/bsd/udplite/udplite-cscov-sockopt.pkt
@@ -1,4 +1,5 @@
  0.000 socket(..., SOCK_DGRAM, IPPROTO_UDPLITE) = 3
+ 0.000 getsockopt(3, IPPROTO_UDPLITE, UDPLITE_SEND_CSCOV, [0], [4]) = 0
 +0.000 setsockopt(3, IPPROTO_UDPLITE, UDPLITE_SEND_CSCOV, [-1], 4) = -1 EINVAL (Invalid parameter)
 +0.000 setsockopt(3, IPPROTO_UDPLITE, UDPLITE_SEND_CSCOV, [0], 4) = 0 
 +0.000 setsockopt(3, IPPROTO_UDPLITE, UDPLITE_SEND_CSCOV, [1], 4) = -1 EINVAL (Invalid parameter)
@@ -13,6 +14,7 @@
 +0.000 setsockopt(3, IPPROTO_UDPLITE, UDPLITE_SEND_CSCOV, [65536], 4) = -1 EINVAL (Invalid parameter)
 +0.000 setsockopt(3, IPPROTO_UDPLITE, UDPLITE_SEND_CSCOV, [4294967295], 4) = -1 (Invalid parameter)
 // 
++0.000 getsockopt(3, IPPROTO_UDPLITE, UDPLITE_RECV_CSCOV, [0], [4]) = 0
 +0.000 setsockopt(3, IPPROTO_UDPLITE, UDPLITE_RECV_CSCOV, [-1], 4) = -1 EINVAL (Invalid parameter)
 +0.000 setsockopt(3, IPPROTO_UDPLITE, UDPLITE_RECV_CSCOV, [0], 4) = 0
 +0.000 setsockopt(3, IPPROTO_UDPLITE, UDPLITE_RECV_CSCOV, [1], 4) = -1 EINVAL (Invalid parameter)
diff --git a/gtests/net/packetdrill/tests/bsd/udplite/udplite-port-unreachable-alt.pkt b/gtests/net/packetdrill/tests/bsd/udplite/udplite-port-unreachable-alt.pkt
new file mode 100644
index 00000000..9ebc32ce
--- /dev/null
+++ b/gtests/net/packetdrill/tests/bsd/udplite/udplite-port-unreachable-alt.pkt
@@ -0,0 +1,13 @@
+// Connect the socket.
+ 0.000 socket(..., SOCK_DGRAM, IPPROTO_UDPLITE) = 3
++0.000 bind(3, ..., ...) = 0
++0.000 connect(3, ..., ...) = 0
+// Trigger the ICMP message.
++0.050 write(3, ..., 1000) = 1000 
++0.000 > udplite(1000, 0)
++0.000 < [udplite(1000, 0)] icmp unreachable port_unreachable
+// Check if applications get notified.
+//+0.050 getsockopt(3, SOL_SOCKET, SO_ERROR, [ECONNREFUSED], [4]) = 0
++0.050 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0
+// Termination of the test.
++0.000 close(3) = 0
-- 
GitLab