From f75bf8536c0ca270a43525ee9c5186df10ed21a9 Mon Sep 17 00:00:00 2001
From: Steffen Vogel <post@steffenvogel.de>
Date: Mon, 27 May 2024 18:09:11 +0200
Subject: [PATCH] webrtc: Enable ICE TCP

Signed-off-by: Steffen Vogel <post@steffenvogel.de>
---
 lib/nodes/webrtc.cpp | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/lib/nodes/webrtc.cpp b/lib/nodes/webrtc.cpp
index fdbb248e6..b51033b9f 100644
--- a/lib/nodes/webrtc.cpp
+++ b/lib/nodes/webrtc.cpp
@@ -81,8 +81,10 @@ int WebRTCNode::parse(json_t *json) {
   if (json_ice) {
     json_t *json_servers = nullptr;
 
-    ret = json_unpack_ex(json_ice, &err, 0, "{ s?: o }", "servers",
-                         &json_servers);
+    int tcp = -1;
+
+    ret = json_unpack_ex(json_ice, &err, 0, "{ s?: o, s?: b }", "servers",
+                         &json_servers, "tcp", &tcp);
     if (ret)
       throw ConfigError(json, err, "node-config-node-webrtc-ice");
 
@@ -105,6 +107,11 @@ int WebRTCNode::parse(json_t *json) {
 
         rtcConf.iceServers.emplace_back(uri);
       }
+
+      if (tcp > 0)
+        rtcConf.enableIceTcp = tcp > 0;
+      else
+        rtcConf.enableIceTcp = true;
     }
   }