diff --git a/daemon/face/tcp-channel.cpp b/daemon/face/tcp-channel.cpp
index 34b734a..a983db6 100644
--- a/daemon/face/tcp-channel.cpp
+++ b/daemon/face/tcp-channel.cpp
@@ -100,7 +100,7 @@
     make_shared<ip::tcp::resolver>(boost::ref(m_ioService));
 
   resolver->async_resolve(query,
-                          bind(&TcpChannel::handleEndpointResoution, this, _1, _2,
+                          bind(&TcpChannel::handleEndpointResolution, this, _1, _2,
                                clientSocket, connectTimeoutTimer,
                                onFaceCreated, onConnectFailed,
                                resolver));
@@ -221,13 +221,13 @@
 }
 
 void
-TcpChannel::handleEndpointResoution(const boost::system::error_code& error,
-                                    ip::tcp::resolver::iterator remoteEndpoint,
-                                    const shared_ptr<boost::asio::ip::tcp::socket>& socket,
-                                    const shared_ptr<boost::asio::monotonic_deadline_timer>& timer,
-                                    const FaceCreatedCallback& onFaceCreated,
-                                    const ConnectFailedCallback& onConnectFailed,
-                                    const shared_ptr<ip::tcp::resolver>& resolver)
+TcpChannel::handleEndpointResolution(const boost::system::error_code& error,
+                                     ip::tcp::resolver::iterator remoteEndpoint,
+                                     const shared_ptr<boost::asio::ip::tcp::socket>& socket,
+                                     const shared_ptr<boost::asio::monotonic_deadline_timer>& timer,
+                                     const FaceCreatedCallback& onFaceCreated,
+                                     const ConnectFailedCallback& onConnectFailed,
+                                     const shared_ptr<ip::tcp::resolver>& resolver)
 {
   if (error ||
       remoteEndpoint == ip::tcp::resolver::iterator())
@@ -253,5 +253,4 @@
                              onFaceCreated, onConnectFailed));
 }
 
-
 } // namespace nfd
