Force rawrtc to load ice candidates on ports 5800-5810
For forcing chrome (on Windows) to do a similar limit, see
https://getadmx.com/?Category=Chrome&Policy=Google.Policies.Chrome::WebRtcUdpPortRange
wherein you set the Software\Policies\Google\Chrome\WebRtcUdpPortRange
registry setting to "5800-5810"
Change-Id: I943b75b83eb93b4931f2b0cde799d82dcaac2b84
Signed-off-by: James Kuszmaul <jabukuszmaul@gmail.com>
diff --git a/aos/network/rawrtc.cc b/aos/network/rawrtc.cc
index a92b408..89141db 100644
--- a/aos/network/rawrtc.cc
+++ b/aos/network/rawrtc.cc
@@ -12,6 +12,11 @@
#include "flatbuffers/flatbuffers.h"
#include "glog/logging.h"
+DEFINE_int32(min_ice_port, -1,
+ "Minimum port number to use for ICE candidates.");
+DEFINE_int32(max_ice_port, -1,
+ "Maximum port number to use for ICE candidates.");
+
namespace aos {
namespace web_proxy {
namespace {
@@ -186,6 +191,13 @@
CHECK_RAWRTC(rawrtc_peer_connection_configuration_set_sctp_buffer_length(
configuration, TRANSPORT_BUFFER_LENGTH, TRANSPORT_BUFFER_LENGTH));
+ if (FLAGS_min_ice_port >= 0 && FLAGS_max_ice_port >= 0) {
+ CHECK_LT(FLAGS_min_ice_port, FLAGS_max_ice_port);
+ // Set the port range to use for ICE candidates.
+ CHECK_RAWRTC(rawrtc_peer_connection_configuration_set_ice_udp_port_range(
+ configuration, FLAGS_min_ice_port, FLAGS_max_ice_port));
+ }
+
// Create peer connection
CHECK_RAWRTC(rawrtc_peer_connection_create(
&connection_, configuration, StaticNegotiationNeededHandler,