build: Requiring boost >=1.48 during configure step
Change-Id: I09110e9993903a3157be22948a7275c4625cd393
Refs: #1186
diff --git a/daemon/face/tcp-channel.cpp b/daemon/face/tcp-channel.cpp
index bb47ab3..34b734a 100644
--- a/daemon/face/tcp-channel.cpp
+++ b/daemon/face/tcp-channel.cpp
@@ -124,7 +124,7 @@
tcp::Endpoint remoteEndpoint = socket->remote_endpoint();
shared_ptr<Face> face;
- if (is_loopback(socket->local_endpoint().address()))
+ if (socket->local_endpoint().address().is_loopback())
face = make_shared<TcpLocalFace>(boost::cref(socket));
else
face = make_shared<TcpFace>(boost::cref(socket));
diff --git a/daemon/face/tcp-face.hpp b/daemon/face/tcp-face.hpp
index 21b13f2..1686403 100644
--- a/daemon/face/tcp-face.hpp
+++ b/daemon/face/tcp-face.hpp
@@ -41,32 +41,6 @@
TcpLocalFace(const shared_ptr<protocol::socket>& socket);
};
-//
-
-inline bool
-is_loopback(const boost::asio::ip::address& address)
-{
-#if BOOST_VERSION < 104700
- if (address.is_v4())
- {
- return (address.to_v4().to_ulong() & 0xFF000000) == 0x7F000000;
- }
- else
- {
- boost::asio::ip::address_v6::bytes_type v6_addr = address.to_v6().to_bytes();
- return ((v6_addr[0] == 0) && (v6_addr[1] == 0)
- && (v6_addr[2] == 0) && (v6_addr[3] == 0)
- && (v6_addr[4] == 0) && (v6_addr[5] == 0)
- && (v6_addr[6] == 0) && (v6_addr[7] == 0)
- && (v6_addr[8] == 0) && (v6_addr[9] == 0)
- && (v6_addr[10] == 0) && (v6_addr[11] == 0)
- && (v6_addr[12] == 0) && (v6_addr[13] == 0)
- && (v6_addr[14] == 0) && (v6_addr[15] == 1));
- }
-#else
- return address.is_loopback();
-#endif
-}
/** \brief Class validating use of TcpLocalFace
*/
@@ -80,8 +54,8 @@
static void
validateSocket(boost::asio::ip::tcp::socket& socket)
{
- if (!is_loopback(socket.local_endpoint().address()) ||
- !is_loopback(socket.remote_endpoint().address()))
+ if (!socket.local_endpoint().address().is_loopback() ||
+ !socket.remote_endpoint().address().is_loopback())
{
throw Face::Error("TcpLocalFace can be created only on loopback interface");
}
diff --git a/daemon/face/unix-stream-channel-factory.cpp b/daemon/face/unix-stream-channel-factory.cpp
index cc86333..ededecd 100644
--- a/daemon/face/unix-stream-channel-factory.cpp
+++ b/daemon/face/unix-stream-channel-factory.cpp
@@ -6,9 +6,7 @@
#include "unix-stream-channel-factory.hpp"
-#if BOOST_VERSION >= 104800
#include <boost/filesystem.hpp> // for canonical()
-#endif
namespace nfd {
@@ -20,13 +18,9 @@
shared_ptr<UnixStreamChannel>
UnixStreamChannelFactory::create(const std::string& unixSocketPath)
{
-#if BOOST_VERSION >= 104800
boost::filesystem::path p(unixSocketPath);
p = boost::filesystem::canonical(p.parent_path()) / p.filename();
unix_stream::Endpoint endpoint(p.string());
-#else
- unix_stream::Endpoint endpoint(unixSocketPath);
-#endif
shared_ptr<UnixStreamChannel> channel = find(endpoint);
if (channel)
diff --git a/wscript b/wscript
index 8591b35..c46c2d0 100644
--- a/wscript
+++ b/wscript
@@ -53,8 +53,10 @@
conf.check_boost(lib=boost_libs)
boost_version = conf.env.BOOST_VERSION.split('_')
- if int(boost_version[0]) < 1 or int(boost_version[1]) < 42:
- Logs.error ("Minumum required boost version is 1.42")
+ if int(boost_version[0]) < 1 or int(boost_version[1]) < 48:
+ Logs.error ("Minimum required boost version is 1.48")
+ Logs.error ("Please upgrade your distribution or install custom boost libraries" +
+ " (http://redmine.named-data.net/projects/nfd/wiki/Boost_FAQ)")
return
conf.load('unix-socket')