management: Add support to local control header.

Change-Id: I17e066ddec5d8b72a732cabe1cf1b305af2eb1a2
refs: #1169, #1170
diff --git a/src/face.hpp b/src/face.hpp
index 6aac1e0..29f80fd 100644
--- a/src/face.hpp
+++ b/src/face.hpp
@@ -238,11 +238,30 @@
    */
   RegisteredPrefixTable::iterator
   getEntryForRegisteredPrefix(const Name& name);
-
   
   void
   checkPitExpire();
-  
+
+  /**
+   * @brief Encode local control header.
+   *
+   * @param blockWithoutHeader Encoded block of interest or data packet.
+   * @param nextHopFaceId Id of the face from which packet will be sent.
+   * @return The encoded block with local control header.
+   */
+  static Block
+  wireEncodeLocalControlHeader(const Block& blockWithoutHeader, uint64_t nextHopFaceId);
+
+  /**
+   * @brief Decode local control header.
+   *
+   * @param blockWithHeader Encoded block with local control header.
+   * @param incomingFaceId On return, the id of the face from which packet is received.
+   * @return The encoded block of interest or data packet.
+   */
+  static Block
+  wireDecodeLocalControlHeader(const Block& blockWithHeader, uint64_t& incomingFaceId);
+
 private:
   shared_ptr<boost::asio::io_service> m_ioService;
   shared_ptr<boost::asio::io_service::work> m_ioServiceWork; // needed if thread needs to be preserved