diff --git a/client.conf.sample b/client.conf.sample index 9eae16e7..b1debc86 100644 --- a/client.conf.sample +++ b/client.conf.sample @@ -6,7 +6,10 @@ ; tcp://192.0.2.1 ; tcp4://example.com:6363 ; -transport=unix:///var/run/nfd.sock +; The default value of this field is platform-dependent, being unix:///run/nfd.sock on Linux and +; unix:///var/run/nfd.sock on other platforms. +; +;transport=unix:///var/run/nfd.sock ; "pib" determines which Public Info Base (PIB) should used by default in applications. ; If "pib" is not specified, a platform-dependent default will be used. diff --git a/docs/manpages/ndn-client.conf.rst b/docs/manpages/ndn-client.conf.rst index 62f42ca2..59089720 100644 --- a/docs/manpages/ndn-client.conf.rst +++ b/docs/manpages/ndn-client.conf.rst @@ -19,10 +19,11 @@ NFD --- transport - FaceUri for default connection toward local NDN forwarder. Only ``unix`` and ``tcp4`` FaceUris - can be specified here. + FaceUri for default connection toward local NDN forwarder. Only ``unix``, ``tcp``, ``tcp4``, and + ``tcp6`` FaceUris can be specified here. - By default, ``unix:///var/run/nfd.sock`` is used. + By default, ``unix:///run/nfd.sock`` is used on Linux and ``unix:///var/run/nfd.sock`` is used on + other platforms. .. note:: This value can be overridden using the ``NDN_CLIENT_TRANSPORT`` environment variable. diff --git a/ndn-cxx/face.cpp b/ndn-cxx/face.cpp index 8b20ae30..3843bc66 100644 --- a/ndn-cxx/face.cpp +++ b/ndn-cxx/face.cpp @@ -100,9 +100,6 @@ Face::Face(shared_ptr transport, boost::asio::io_service& ioService, shared_ptr Face::makeDefaultTransport() { - // transport=unix:///var/run/nfd.sock - // transport=tcp://localhost:6363 - std::string transportUri; const char* transportEnviron = getenv("NDN_CLIENT_TRANSPORT"); diff --git a/ndn-cxx/transport/unix-transport.cpp b/ndn-cxx/transport/unix-transport.cpp index 6e909a2e..f1f15265 100644 --- a/ndn-cxx/transport/unix-transport.cpp +++ b/ndn-cxx/transport/unix-transport.cpp @@ -1,6 +1,6 @@ /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ /* - * Copyright (c) 2013-2019 Regents of the University of California. + * Copyright (c) 2013-2020 Regents of the University of California. * * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions). * @@ -42,7 +42,11 @@ std::string UnixTransport::getSocketNameFromUri(const std::string& uriString) { // Assume the default nfd.sock location. +#ifdef __linux__ + std::string path = "/run/nfd.sock"; +#else std::string path = "/var/run/nfd.sock"; +#endif // __linux__ if (uriString.empty()) { return path; diff --git a/tests/unit/transport/unix-transport.t.cpp b/tests/unit/transport/unix-transport.t.cpp index 41c46b91..57118595 100644 --- a/tests/unit/transport/unix-transport.t.cpp +++ b/tests/unit/transport/unix-transport.t.cpp @@ -1,6 +1,6 @@ /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ /* - * Copyright (c) 2013-2018 Regents of the University of California. + * Copyright (c) 2013-2020 Regents of the University of California. * * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions). * @@ -32,27 +32,19 @@ BOOST_FIXTURE_TEST_SUITE(TestUnixTransport, TransportFixture) using ndn::Transport; -BOOST_AUTO_TEST_CASE(GetDefaultSocketNameOk) +BOOST_AUTO_TEST_CASE(GetSocketNameFromUri) { BOOST_CHECK_EQUAL(UnixTransport::getSocketNameFromUri("unix:///tmp/test/nfd.sock"), "/tmp/test/nfd.sock"); -} - -BOOST_AUTO_TEST_CASE(GetDefaultSocketNameOkOmittedSocketOmittedProtocol) -{ +#ifdef __linux__ + BOOST_CHECK_EQUAL(UnixTransport::getSocketNameFromUri(""), "/run/nfd.sock"); +#else BOOST_CHECK_EQUAL(UnixTransport::getSocketNameFromUri(""), "/var/run/nfd.sock"); -} - -BOOST_AUTO_TEST_CASE(GetDefaultSocketNameBadWrongTransport) -{ +#endif // __linux__ BOOST_CHECK_EXCEPTION(UnixTransport::getSocketNameFromUri("tcp://"), Transport::Error, [] (const Transport::Error& error) { return error.what() == "Cannot create UnixTransport from \"tcp\" URI"s; }); -} - -BOOST_AUTO_TEST_CASE(GetDefaultSocketNameBadMalformedUri) -{ BOOST_CHECK_EXCEPTION(UnixTransport::getSocketNameFromUri("unix"), Transport::Error, [] (const Transport::Error& error) {