1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
--- 4 unchanged lines hidden (view full) ---
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 *
21 * $FreeBSD: head/cddl/lib/libdtrace/tcp.d 273293 2014-10-19 23:13:16Z gnn $
22 */
23/*
24 * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
25 * Copyright (c) 2013 Mark Johnston <markj@freebsd.org>
26 */
27
28#pragma D depends_on library ip.d
29#pragma D depends_on provider tcp
--- 81 unchanged lines hidden (view full) ---
111 int32_t tcps_rcv_ws; /* receive window scaling */
112 uint32_t tcps_cwnd; /* congestion window */
113 uint32_t tcps_cwnd_ssthresh; /* threshold for congestion avoidance */
114 uint32_t tcps_sack_fack; /* SACK sequence # we have acked */
115 uint32_t tcps_sack_snxt; /* next SACK seq # for retransmission */
116 uint32_t tcps_rto; /* round-trip timeout, msec */
117 uint32_t tcps_mss; /* max segment size */
118 int tcps_retransmit; /* retransmit send event, boolean */
119 int tcps_srtt; /* smoothed RTT in units of (TCP_RTT_SCALE*hz) */
120} tcpsinfo_t;
121
122/*
123 * tcplsinfo provides the old tcp state for state changes.
124 */
125typedef struct tcplsinfo {
126 int32_t tcps_state; /* previous TCP state */
127} tcplsinfo_t;
--- 68 unchanged lines hidden (view full) ---
196 tcps_rcv_ws = p == NULL ? -1 : p->rcv_scale;
197 tcps_cwnd = p == NULL ? -1 : p->snd_cwnd;
198 tcps_cwnd_ssthresh = p == NULL ? -1 : p->snd_ssthresh;
199 tcps_sack_fack = p == NULL ? 0 : p->snd_fack;
200 tcps_sack_snxt = p == NULL ? 0 : p->sack_newdata;
201 tcps_rto = p == NULL ? -1 : p->t_rxtcur / 1000; /* XXX */
202 tcps_mss = p == NULL ? -1 : p->t_maxseg;
203 tcps_retransmit = p == NULL ? -1 : p->t_rxtshift > 0 ? 1 : 0;
204 tcps_srtt = p == NULL ? -1 : p->t_srtt; /* smoothed RTT in units of (TCP_RTT_SCALE*hz) */
205};
206
207#pragma D binding "1.6.3" translator
208translator tcpinfo_t < struct tcphdr *p > {
209 tcp_sport = p == NULL ? 0 : ntohs(p->th_sport);
210 tcp_dport = p == NULL ? 0 : ntohs(p->th_dport);
211 tcp_seq = p == NULL ? -1 : ntohl(p->th_seq);
212 tcp_ack = p == NULL ? -1 : ntohl(p->th_ack);
--- 31 unchanged lines hidden ---
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
--- 4 unchanged lines hidden (view full) ---
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 *
21 * $FreeBSD: head/cddl/lib/libdtrace/tcp.d 273293 2014-10-19 23:13:16Z gnn $
22 */
23/*
24 * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
25 * Copyright (c) 2013 Mark Johnston <markj@freebsd.org>
26 */
27
28#pragma D depends_on library ip.d
29#pragma D depends_on provider tcp
--- 81 unchanged lines hidden (view full) ---
111 int32_t tcps_rcv_ws; /* receive window scaling */
112 uint32_t tcps_cwnd; /* congestion window */
113 uint32_t tcps_cwnd_ssthresh; /* threshold for congestion avoidance */
114 uint32_t tcps_sack_fack; /* SACK sequence # we have acked */
115 uint32_t tcps_sack_snxt; /* next SACK seq # for retransmission */
116 uint32_t tcps_rto; /* round-trip timeout, msec */
117 uint32_t tcps_mss; /* max segment size */
118 int tcps_retransmit; /* retransmit send event, boolean */
119 int tcps_srtt; /* smoothed RTT in units of (TCP_RTT_SCALE*hz) */
120} tcpsinfo_t;
121
122/*
123 * tcplsinfo provides the old tcp state for state changes.
124 */
125typedef struct tcplsinfo {
126 int32_t tcps_state; /* previous TCP state */
127} tcplsinfo_t;
--- 68 unchanged lines hidden (view full) ---
196 tcps_rcv_ws = p == NULL ? -1 : p->rcv_scale;
197 tcps_cwnd = p == NULL ? -1 : p->snd_cwnd;
198 tcps_cwnd_ssthresh = p == NULL ? -1 : p->snd_ssthresh;
199 tcps_sack_fack = p == NULL ? 0 : p->snd_fack;
200 tcps_sack_snxt = p == NULL ? 0 : p->sack_newdata;
201 tcps_rto = p == NULL ? -1 : p->t_rxtcur / 1000; /* XXX */
202 tcps_mss = p == NULL ? -1 : p->t_maxseg;
203 tcps_retransmit = p == NULL ? -1 : p->t_rxtshift > 0 ? 1 : 0;
204 tcps_srtt = p == NULL ? -1 : p->t_srtt; /* smoothed RTT in units of (TCP_RTT_SCALE*hz) */
205};
206
207#pragma D binding "1.6.3" translator
208translator tcpinfo_t < struct tcphdr *p > {
209 tcp_sport = p == NULL ? 0 : ntohs(p->th_sport);
210 tcp_dport = p == NULL ? 0 : ntohs(p->th_dport);
211 tcp_seq = p == NULL ? -1 : ntohl(p->th_seq);
212 tcp_ack = p == NULL ? -1 : ntohl(p->th_ack);
--- 31 unchanged lines hidden ---