From 76dc7af5f8c9c9c63abaff586c5279054d5eedea Mon Sep 17 00:00:00 2001
From: Michael Tuexen <tuexen@fh-muenster.de>
Date: Sun, 18 Oct 2015 22:39:52 +0200
Subject: [PATCH] Set sin_len and sin6_len on *BSD.

---
 gtests/net/packetdrill/parser.y | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/gtests/net/packetdrill/parser.y b/gtests/net/packetdrill/parser.y
index 180003ae..1b74def5 100644
--- a/gtests/net/packetdrill/parser.y
+++ b/gtests/net/packetdrill/parser.y
@@ -2527,6 +2527,9 @@ sockaddr
 		struct sockaddr_in *ipv4 = malloc(sizeof(struct sockaddr_in));
 		memset(ipv4, 0, sizeof(*ipv4));
 		ipv4->sin_family = AF_INET;
+#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)
+		ipv4->sin_len = sizeof(*ipv4);
+#endif
 		ipv4->sin_port = htons($10);
 		if (inet_pton(AF_INET, $17, &ipv4->sin_addr) == 1) {
 			$$ = new_expression(EXPR_SOCKET_ADDRESS_IPV4);
@@ -2539,6 +2542,9 @@ sockaddr
 		struct sockaddr_in6 *ipv6 = malloc(sizeof(struct sockaddr_in6));
 		memset(ipv6, 0, sizeof(*ipv6));
 		ipv6->sin6_family = AF_INET6;
+#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)
+		ipv6->sin6_len = sizeof(*ipv6);
+#endif
 		ipv6->sin6_port = htons($10);
 		if (inet_pton(AF_INET6, $17, &ipv6->sin6_addr) == 1) {
 			$$ = new_expression(EXPR_SOCKET_ADDRESS_IPV6);
-- 
GitLab