aboutgitcodebugslistschat
path: root/tcp_conn.h
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2023-08-22 15:29:54 +1000
committerStefano Brivio <sbrivio@redhat.com>2023-08-22 12:15:24 +0200
commitbccfbff1936f5878a9dd9718200a1751f3bff64b (patch)
tree08a33c2e2054c571c173afe862bf74c781902ef4 /tcp_conn.h
parentcee4a2da48ba2518b1b5f7a05f0c26381272fb91 (diff)
downloadpasst-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.h12
1 files changed, 6 insertions, 6 deletions
diff --git a/tcp_conn.h b/tcp_conn.h
index 0b36940..e533bd4 100644
--- a/tcp_conn.h
+++ b/tcp_conn.h
@@ -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;