diff --git a/src/util/dummy-client-face.hpp b/src/util/dummy-client-face.hpp
index 781a797..7d40f65 100644
--- a/src/util/dummy-client-face.hpp
+++ b/src/util/dummy-client-face.hpp
@@ -72,6 +72,12 @@
     std::function<void(time::milliseconds)> processEventsOverride;
   };
 
+  class AlreadyLinkedError : public Error
+  {
+  public:
+    AlreadyLinkedError();
+  };
+
   /** \brief Create a dummy face with internal IO service
    */
   explicit
@@ -92,6 +98,8 @@
   DummyClientFace(boost::asio::io_service& ioService, KeyChain& keyChain,
                   const Options& options = Options());
 
+  ~DummyClientFace();
+
   /** \brief cause the Face to receive an interest
    */
   void
@@ -107,6 +115,16 @@
   void
   receive(const lp::Nack& nack);
 
+  /** \brief link another DummyClientFace through a broadcast media
+   */
+  void
+  linkTo(DummyClientFace& other);
+
+  /** \brief unlink the broadcast media if previously linked
+   */
+  void
+  unlink();
+
 private:
   class Transport;
 
@@ -114,6 +132,9 @@
   construct(const Options& options);
 
   void
+  enableBroadcastLink();
+
+  void
   enablePacketLogging();
 
   void
@@ -165,7 +186,9 @@
    */
   Signal<DummyClientFace, lp::Nack> onSendNack;
 
-private:
+NDN_CXX_PUBLIC_WITH_TESTS_ELSE_PRIVATE:
+  struct BroadcastLink;
+  shared_ptr<BroadcastLink> m_bcastLink;
   std::unique_ptr<KeyChain> m_internalKeyChain;
   KeyChain& m_keyChain;
   std::function<void(time::milliseconds)> m_processEventsOverride;
