#include <boost/bind/bind.hpp>\r
#include <boost/function.hpp>\r
#include <boost/version.hpp>\r
-\r
-#if BOOST_VERSION >= 103800\r
- #include <boost/spirit/include/classic_core.hpp>\r
- #include <boost/spirit/include/classic_confix.hpp>\r
- #include <boost/spirit/include/classic_escape_char.hpp>\r
- #include <boost/spirit/include/classic_multi_pass.hpp>\r
- #include <boost/spirit/include/classic_position_iterator.hpp>\r
- #define spirit_namespace boost::spirit::classic\r
-#else\r
- #include <boost/spirit/core.hpp>\r
- #include <boost/spirit/utility/confix.hpp>\r
- #include <boost/spirit/utility/escape_char.hpp>\r
- #include <boost/spirit/iterator/multi_pass.hpp>\r
- #include <boost/spirit/iterator/position_iterator.hpp>\r
- #define spirit_namespace boost::spirit\r
-#endif\r
+#include <boost/spirit/include/classic_core.hpp>\r
+#include <boost/spirit/include/classic_confix.hpp>\r
+#include <boost/spirit/include/classic_escape_char.hpp>\r
+#include <boost/spirit/include/classic_multi_pass.hpp>\r
+#include <boost/spirit/include/classic_position_iterator.hpp>\r
\r
#include "include/ceph_assert.h"\r
\r
namespace json_spirit\r
{\r
+ namespace spirit_namespace = boost::spirit::classic;\r
+\r
const spirit_namespace::int_parser < boost::int64_t > int64_p = spirit_namespace::int_parser < boost::int64_t >();\r
const spirit_namespace::uint_parser< boost::uint64_t > uint64_p = spirit_namespace::uint_parser< boost::uint64_t >();\r
\r
using Completion = async::Completion<Signature, async::AsBase<Request>>;
using Clock = ceph::coarse_real_clock;
-#if BOOST_VERSION < 107000
- using Timer = boost::asio::basic_waitable_timer<Clock>;
-#else
using Timer = boost::asio::basic_waitable_timer<Clock,
boost::asio::wait_traits<Clock>, executor_type>;
-#endif
Timer timer; //< timer for the next scheduled request
CephContext *const cct;
ceph::condition_variable cond;
struct Waiter : boost::intrusive::list_base_hook<> {
-#if BOOST_VERSION < 107000
- using Timer = boost::asio::basic_waitable_timer<Clock>;
-#else
using Executor = boost::asio::io_context::executor_type;
using Timer = boost::asio::basic_waitable_timer<Clock,
boost::asio::wait_traits<Clock>, Executor>;
-#endif
Timer timer;
explicit Waiter(boost::asio::io_context& ioc) : timer(ioc) {}
};
keyring = osd_keyring ; osd's keyring\n\
";
-#if BOOST_VERSION < 107200
-// Boost::spirit > 1.72 asserts on chars that are not < 0x7f
-// unicode config file
-const char unicode_config_1[] = "\
-[global]\n\
- log file = \x66\xd1\x86\xd1\x9d\xd3\xad\xd3\xae \n\
- pid file = foo-bar\n\
-[osd0]\n\
-";
-#endif
-
const char override_config_1[] = "\
[global]\n\
log file = global_log\n\
ASSERT_EQ(val, "/quite/a/long/path/for/a/log/file");
ASSERT_EQ(cf1.read("global", "pid file", val), 0);
ASSERT_EQ(val, "spork");
-
-#if BOOST_VERSION < 107200
- std::string unicode_config_1f(next_tempfile(unicode_config_1));
- ConfFile cf2;
- ASSERT_EQ(cf2.parse_file(unicode_config_1f.c_str(), &err), 0);
- ASSERT_EQ(err.tellp(), 0U);
- ASSERT_EQ(cf2.read("global", "log file", val), 0);
- ASSERT_EQ(val, "\x66\xd1\x86\xd1\x9d\xd3\xad\xd3\xae");
-#endif
}
TEST(ConfUtils, IllegalFiles) {