Index: uspace/srv/net/tl/tcp/pdu.c
===================================================================
--- uspace/srv/net/tl/tcp/pdu.c	(revision bf60051043ce0e8ef47e7fb713e0d5207e009409)
+++ uspace/srv/net/tl/tcp/pdu.c	(revision 5f9ecd34daa4f458c7b11e35f9997672a4507752)
@@ -113,4 +113,5 @@
 {
 	uint16_t doff_flags;
+	uint16_t doff;
 
 	hdr->src_port = host2uint16_t_be(sp->local.port);
@@ -118,5 +119,8 @@
 	hdr->seq = host2uint32_t_be(seg->seq);
 	hdr->ack = host2uint32_t_be(seg->ack);
-	tcp_header_encode_flags(seg->ctrl, 0, &doff_flags);
+
+	doff = (sizeof(tcp_header_t) / sizeof(uint32_t)) << DF_DATA_OFFSET_l;
+	tcp_header_encode_flags(seg->ctrl, doff, &doff_flags);
+
 	hdr->doff_flags = host2uint16_t_be(doff_flags);
 	hdr->window = host2uint16_t_be(seg->wnd);
