build: Remove unnecessary std::ref, causing compilation issues with Boost 1.70.0

Refs: #4923
Change-Id: Idba1abe89161b11b1ec80fdceac51e2b00ed507b
diff --git a/.gitmodules b/.gitmodules
index 0b8f2ee..edc03cc 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,3 @@
 [submodule "websocketpp"]
     path = websocketpp
-    url = https://github.com/zaphoyd/websocketpp.git
+    url = https://github.com/cawka/websocketpp.git
diff --git a/.waf-tools/websocket.py b/.waf-tools/websocket.py
index 33a1ff6..1c5fef5 100644
--- a/.waf-tools/websocket.py
+++ b/.waf-tools/websocket.py
@@ -65,7 +65,7 @@
             Logs.warn('    git submodule update --init')
             Logs.warn('Otherwise, manually download and extract the websocketpp library:')
             Logs.warn('    mkdir -p websocketpp')
-            Logs.warn('    curl -L https://github.com/zaphoyd/websocketpp/archive/0.8.1.tar.gz > websocketpp.tar.gz')
+            Logs.warn('    curl -L https://github.com/cawka/websocketpp/archive/0.8.1-hotfix.tar.gz > websocketpp.tar.gz')
             Logs.warn('    tar xf websocketpp.tar.gz -C websocketpp/ --strip 1')
             Logs.warn('Alternatively, WebSocket support can be disabled with --without-websocket')
             self.fatal('WebSocket++ not found')
diff --git a/daemon/face/tcp-channel.cpp b/daemon/face/tcp-channel.cpp
index dc0576f..a26c91e 100644
--- a/daemon/face/tcp-channel.cpp
+++ b/daemon/face/tcp-channel.cpp
@@ -83,7 +83,7 @@
     return;
   }
 
-  auto clientSocket = make_shared<ip::tcp::socket>(std::ref(getGlobalIoService()));
+  auto clientSocket = make_shared<ip::tcp::socket>(getGlobalIoService());
   auto timeoutEvent = getScheduler().schedule(timeout, [=] {
     handleConnectTimeout(remoteEndpoint, clientSocket, onConnectFailed);
   });
diff --git a/daemon/face/tcp-transport.cpp b/daemon/face/tcp-transport.cpp
index 58c4add..0da07af 100644
--- a/daemon/face/tcp-transport.cpp
+++ b/daemon/face/tcp-transport.cpp
@@ -133,7 +133,13 @@
   BOOST_ASSERT(getState() == TransportState::DOWN);
 
   // recreate the socket
-  m_socket = protocol::socket(m_socket.get_io_service());
+  m_socket = protocol::socket(
+#if BOOST_VERSION >= 107000
+                              m_socket.get_executor()
+#else
+                              m_socket.get_io_service()
+#endif // BOOST_VERSION >= 107000
+                              );
   this->resetReceiveBuffer();
   this->resetSendQueue();
 
diff --git a/daemon/face/websocket-channel.cpp b/daemon/face/websocket-channel.cpp
index f3f69ba..20b6686 100644
--- a/daemon/face/websocket-channel.cpp
+++ b/daemon/face/websocket-channel.cpp
@@ -123,7 +123,7 @@
   NFD_LOG_CHAN_TRACE("Incoming connection from " << m_server.get_con_from_hdl(hdl)->get_remote_endpoint());
 
   auto linkService = make_unique<GenericLinkService>();
-  auto transport = make_unique<WebSocketTransport>(hdl, std::ref(m_server), m_pingInterval);
+  auto transport = make_unique<WebSocketTransport>(hdl, m_server, m_pingInterval);
   auto face = make_shared<Face>(std::move(linkService), std::move(transport));
 
   BOOST_ASSERT(m_channelFaces.count(hdl) == 0);
diff --git a/tests/daemon/face/tcp-transport.t.cpp b/tests/daemon/face/tcp-transport.t.cpp
index 0b573f3..81da009 100644
--- a/tests/daemon/face/tcp-transport.t.cpp
+++ b/tests/daemon/face/tcp-transport.t.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2014-2018,  Regents of the University of California,
+ * Copyright (c) 2014-2019,  Regents of the University of California,
  *                           Arizona Board of Regents,
  *                           Colorado State University,
  *                           University Pierre & Marie Curie, Sorbonne University,
@@ -177,7 +177,7 @@
   BOOST_REQUIRE_EQUAL(this->limitedIo.run(2, 1_s), LimitedIo::EXCEED_OPS);
 
   auto transportObserver =
-    make_unique<PermanentTcpTransportReconnectObserver>(std::move(sock), std::ref(this->limitedIo));
+    make_unique<PermanentTcpTransportReconnectObserver>(std::move(sock), this->limitedIo);
   BOOST_REQUIRE_EQUAL(transportObserver->getState(), TransportState::UP);
 
   // break the TCP connection
diff --git a/tests/daemon/face/websocket-transport-fixture.hpp b/tests/daemon/face/websocket-transport-fixture.hpp
index bcf9cf9..e49d421 100644
--- a/tests/daemon/face/websocket-transport-fixture.hpp
+++ b/tests/daemon/face/websocket-transport-fixture.hpp
@@ -110,7 +110,7 @@
                                       1_s), LimitedIo::EXCEED_OPS);
 
     face = make_unique<Face>(make_unique<DummyLinkService>(),
-                             make_unique<WebSocketTransport>(serverHdl, std::ref(server), pingInterval));
+                             make_unique<WebSocketTransport>(serverHdl, server, pingInterval));
     transport = static_cast<WebSocketTransport*>(face->getTransport());
     serverReceivedPackets = &static_cast<DummyLinkService*>(face->getLinkService())->receivedPackets;
 
diff --git a/websocketpp b/websocketpp
index c6d7e29..ac4e021 160000
--- a/websocketpp
+++ b/websocketpp
@@ -1 +1 @@
-Subproject commit c6d7e295bf5a0ab9b5f896720cc1a0e0fdc397a7
+Subproject commit ac4e021333675fc80b96eb7be45d218581c897e2