git: 6cfb1cf3c9d4 - stable/13 - tcp: improve error handling of net.inet.tcp.udp_tunneling_port

From: Michael Tuexen <tuexen_at_FreeBSD.org>
Date: Mon, 06 Feb 2023 22:21:03 UTC
The branch stable/13 has been updated by tuexen:

URL: https://cgit.FreeBSD.org/src/commit/?id=6cfb1cf3c9d4cdf9bc39566f6a94bae4a60096c7

commit 6cfb1cf3c9d4cdf9bc39566f6a94bae4a60096c7
Author:     Michael Tuexen <tuexen@FreeBSD.org>
AuthorDate: 2023-01-26 21:55:22 +0000
Commit:     Michael Tuexen <tuexen@FreeBSD.org>
CommitDate: 2023-02-06 22:17:09 +0000

    tcp: improve error handling of net.inet.tcp.udp_tunneling_port
    
    In case the new port can't be set, set the port to 0.
    
    Sponsored by:   Netflix, Inc.
    
    (cherry picked from commit e2d14a04c5fc49ad1aab280e3c2e7283bbacc948)
---
 sys/netinet/tcp_subr.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c
index 62042df50d18..811e6e10354c 100644
--- a/sys/netinet/tcp_subr.c
+++ b/sys/netinet/tcp_subr.c
@@ -843,6 +843,9 @@ sysctl_net_inet_tcp_udp_tunneling_port_check(SYSCTL_HANDLER_ARGS)
 			}
 			if (new != 0) {
 				error = tcp_over_udp_start();
+				if (error != 0) {
+					V_tcp_udp_tunneling_port = 0;
+				}
 			}
 		}
 	}