diff --git a/gtests/net/packetdrill/packet_to_string.c b/gtests/net/packetdrill/packet_to_string.c
index 2123549a1bd98973b1d2e380dc334a0fee996ffd..c3a354cb6fd929c1b5456c232b5010b2b2ec6874 100644
--- a/gtests/net/packetdrill/packet_to_string.c
+++ b/gtests/net/packetdrill/packet_to_string.c
@@ -100,6 +100,7 @@ static int tcp_packet_to_string(FILE *s, struct packet *packet,
 			result = STATUS_ERR;
 		else
 			fprintf(s, "<%s>", tcp_options);
+		free(tcp_options);
 	}
 
 	if (format == DUMP_VERBOSE)