Add bind to interface socket option support to QuicClientDefaultNetworkHelper.

Similar to cl/468270056, but as per cl/470077005, Bonnet no longer uses QuicClientEpollNetworkHelper (which is being deprecated).

PiperOrigin-RevId: 473049356
diff --git a/quiche/quic/tools/quic_client_default_network_helper.cc b/quiche/quic/tools/quic_client_default_network_helper.cc
index a408a8f..2db9768 100644
--- a/quiche/quic/tools/quic_client_default_network_helper.cc
+++ b/quiche/quic/tools/quic_client_default_network_helper.cc
@@ -233,6 +233,17 @@
 
   *overflow_supported = api.EnableDroppedPacketCount(fd);
   api.EnableReceiveTimestamp(fd);
+
+  std::string interface_name = client_->interface_name();
+  if (!interface_name.empty()) {
+    if (!api.BindInterface(fd, interface_name)) {
+      QUIC_DLOG(WARNING) << "Failed to bind socket (" << fd
+                         << ") to interface (" << interface_name << ").";
+      CleanUpUDPSocket(fd);
+      return kQuicInvalidSocketFd;
+    }
+  }
+
   return fd;
 }