From d7771f27e366057e318b1d01d260b366dbab9f52 Mon Sep 17 00:00:00 2001 From: "Frank Ch. Eigler" Date: Thu, 14 Mar 2024 14:12:38 -0400 Subject: [PATCH] PR31490, add some tcp.stp tapset extensions Some more little goodies from . --- tapset/linux/tcp.stp | 25 ++++++++++++++++++++++++- testsuite/buildok/tcp-detailed.stp | 4 ++-- 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/tapset/linux/tcp.stp b/tapset/linux/tcp.stp index 9faaa1589..db5f630a1 100644 --- a/tapset/linux/tcp.stp +++ b/tapset/linux/tcp.stp @@ -1,7 +1,7 @@ // TCP tapset // Copyright (C) 2006 IBM Corp. // Copyright (C) 2006 Intel Corporation. -// Copyright (C) 2007, 2010, 2012-2018 Red Hat, Inc. +// Copyright (C) 2007, 2010, 2012-2024 Red Hat, Inc. // // This file is part of systemtap, and is free software. You can // redistribute it and/or modify it under the terms of the GNU General @@ -161,6 +161,21 @@ function __tcp_sock_sport:long (sock:long) return ntohs(port) } +function __tcp_skb_seq:long (tcphdr:long) +{ + return ntohl(@cast(tcphdr, "tcphdr", "kernel")->seq) +} + +function __tcp_skb_ackseq:long (tcphdr:long) +{ + return ntohl(@cast(tcphdr, "tcphdr", "kernel")->ack_seq) +} + +function __tcp_skb_window:long (tcphdr:long) +{ + return ntohs(@cast(tcphdr, "tcphdr", "kernel")->window) +} + @__private30 global sockstate[12] probe init { sockstate[1] = "TCP_ESTABLISHED" @@ -669,6 +684,9 @@ probe tcp.ipv4.receive = kernel.function("tcp_v4_rcv") rst = __tcp_skb_rst(tcphdr) syn = __tcp_skb_syn(tcphdr) fin = __tcp_skb_fin(tcphdr) + seq = __tcp_skb_seq(tcphdr) + ackseq = __tcp_skb_ackseq(tcphdr) + window = __tcp_skb_window(tcphdr) } catch { } } @@ -705,5 +723,10 @@ probe tcp.ipv6.receive = kernel.function("tcp_v6_rcv")!, rst = __tcp_skb_rst(tcphdr) syn = __tcp_skb_syn(tcphdr) fin = __tcp_skb_fin(tcphdr) + seq = __tcp_skb_seq(tcphdr) + ackseq = __tcp_skb_ackseq(tcphdr) + window = __tcp_skb_window(tcphdr) } catch { } } + + diff --git a/testsuite/buildok/tcp-detailed.stp b/testsuite/buildok/tcp-detailed.stp index a6808ff36..20693f503 100755 --- a/testsuite/buildok/tcp-detailed.stp +++ b/testsuite/buildok/tcp-detailed.stp @@ -49,8 +49,8 @@ probe tcp.ipv4.receive, tcp.ipv6.receive { printf("%s %p %d\n", name, iphdr, family) printf("%s %s %d %d\n", saddr, daddr, sport, dport) - printf("%d %p %d %d %d %d %d %d\n", protocol, tcphdr, urg, - ack, psh, rst, syn, fin) + printf("%d %p %d %d %d %d %d %d %d %d %d\n", protocol, tcphdr, urg, + ack, psh, rst, syn, fin, seq, ackseq, window) } probe tcp.receive { -- 2.43.5