diff options
author | David Gibson <david@gibson.dropbear.id.au> | 2023-08-22 15:29:54 +1000 |
---|---|---|
committer | Stefano Brivio <sbrivio@redhat.com> | 2023-08-22 12:15:24 +0200 |
commit | bccfbff1936f5878a9dd9718200a1751f3bff64b (patch) | |
tree | 08a33c2e2054c571c173afe862bf74c781902ef4 /tcp_conn.h | |
parent | cee4a2da48ba2518b1b5f7a05f0c26381272fb91 (diff) | |
download | passt-bccfbff1936f5878a9dd9718200a1751f3bff64b.tar passt-bccfbff1936f5878a9dd9718200a1751f3bff64b.tar.gz passt-bccfbff1936f5878a9dd9718200a1751f3bff64b.tar.bz2 passt-bccfbff1936f5878a9dd9718200a1751f3bff64b.tar.lz passt-bccfbff1936f5878a9dd9718200a1751f3bff64b.tar.xz passt-bccfbff1936f5878a9dd9718200a1751f3bff64b.tar.zst passt-bccfbff1936f5878a9dd9718200a1751f3bff64b.zip |
tcp: More precise terms for addresses and ports
In a number of places the comments and variable names we use to describe
addresses and ports are ambiguous. It's not sufficient to describe a port
as "tap-facing" or "socket-facing", because on both the tap side and the
socket side there are two ports for the two ends of the connection.
Similarly, "local" and "remote" aren't particularly helpful, because it's
not necessarily clear whether we're talking from the point of view of the
guest/namespace, the host, or passt itself.
This patch makes a number of changes to be more precise about this. It
introduces two new terms in aid of this:
A "forwarding" address (or port) refers to an address which is local
from the point of view of passt itself. That is a source address for
traffic sent by passt, whether it's to the guest via the tap interface
or to a host on the internet via a socket.
The "endpoint" address (or port) is the reverse: a remote address
from passt's point of view, the destination address for traffic sent
by passt.
Between them the "side" (either tap/guest-facing or sock/host-facing)
and forwarding vs. endpoint unambiguously describes which address or
port we're talking about.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Diffstat (limited to 'tcp_conn.h')
-rw-r--r-- | tcp_conn.h | 12 |
1 files changed, 6 insertions, 6 deletions
@@ -35,9 +35,9 @@ extern const char *tcp_common_flag_str[]; * @ws_to_tap: Window scaling factor advertised to tap/guest * @sndbuf: Sending buffer in kernel, rounded to 2 ^ SNDBUF_BITS * @seq_dup_ack_approx: Last duplicate ACK number sent to tap - * @addr: Remote address (IPv4 or IPv6) - * @tap_port: Guest-facing tap port - * @sock_port: Remote, socket-facing port + * @faddr: Guest side forwarding address (guest's remote address) + * @eport: Guest side endpoint port (guest's local port) + * @fport: Guest side forwarding port (guest's remote port) * @wnd_from_tap: Last window size from tap, unscaled (as received) * @wnd_to_tap: Sending window advertised to tap, unscaled (as sent) * @seq_to_tap: Next sequence for packets to tap @@ -105,9 +105,9 @@ struct tcp_tap_conn { uint8_t seq_dup_ack_approx; - union inany_addr addr; - in_port_t tap_port; - in_port_t sock_port; + union inany_addr faddr; + in_port_t eport; + in_port_t fport; uint16_t wnd_from_tap; uint16_t wnd_to_tap; |