Add a first implementation of the CustomProbeService interface to the bonnet.

The stubby prober code is mostly stolen from stubby_reachable, but with some tweaks to not use the epoll server. May also need some further customization later.

PiperOrigin-RevId: 661346088
diff --git a/quiche/quic/qbone/bonnet/mock_qbone_tunnel.h b/quiche/quic/qbone/bonnet/mock_qbone_tunnel.h
index a1d0254..c164148 100644
--- a/quiche/quic/qbone/bonnet/mock_qbone_tunnel.h
+++ b/quiche/quic/qbone/bonnet/mock_qbone_tunnel.h
@@ -35,6 +35,8 @@
 
   MOCK_METHOD(bool, use_quarantine_mode, (), (const override));
 
+  MOCK_METHOD(bool, routes_set, (), (const override));
+
   MOCK_METHOD(State, state, ());
 
   MOCK_METHOD(std::string, HealthString, ());
diff --git a/quiche/quic/qbone/bonnet/qbone_tunnel_interface.h b/quiche/quic/qbone/bonnet/qbone_tunnel_interface.h
index 920f213..410a73e 100644
--- a/quiche/quic/qbone/bonnet/qbone_tunnel_interface.h
+++ b/quiche/quic/qbone/bonnet/qbone_tunnel_interface.h
@@ -60,6 +60,8 @@
 
   virtual bool use_quarantine_mode() const = 0;
 
+  virtual bool routes_set() const = 0;
+
   virtual State state() = 0;
 
   virtual std::string HealthString() = 0;