summaryrefslogtreecommitdiff
path: root/community-testing/pion-net/boost_1.50_support.diff
blob: 7b82f34b952e2f6972290e1f3b0054d8c6aa7814 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
diff -rup pion-net-4.0.12/common/src/PionPlugin.cpp pion-net-4.0.12-new/common/src/PionPlugin.cpp
--- pion-net-4.0.12/common/src/PionPlugin.cpp	2011-03-22 04:35:12.000000000 +0100
+++ pion-net-4.0.12-new/common/src/PionPlugin.cpp	2012-07-07 20:42:22.084660696 +0200
@@ -58,7 +58,7 @@ void PionPlugin::addPluginDirectory(cons
 	if (! boost::filesystem::exists(plugin_path) )
 		throw DirectoryNotFoundException(dir);
 	boost::mutex::scoped_lock plugin_lock(m_plugin_mutex);
-	m_plugin_dirs.push_back(plugin_path.directory_string());
+	m_plugin_dirs.push_back(plugin_path.string());
 }
 
 void PionPlugin::resetPluginDirectories(void)
@@ -204,7 +204,7 @@ bool PionPlugin::checkForFile(std::strin
 	try {
 		// is_regular may throw if directory is not readable
 		if (boost::filesystem::is_regular(test_path)) {
-			final_path = test_path.file_string();
+			final_path = test_path.string();
 			return true;
 		}
 	} catch (...) {}
@@ -225,7 +225,7 @@ bool PionPlugin::checkForFile(std::strin
 	try {
 		// is_regular may throw if directory is not readable
 		if (boost::filesystem::is_regular(test_path)) {
-			final_path = test_path.file_string();
+			final_path = test_path.string();
 			return true;
 		}
 	} catch (...) {}
@@ -291,7 +291,7 @@ void PionPlugin::getAllPluginNames(std::
 		for (boost::filesystem::directory_iterator it2(*it); it2 != end; ++it2) {
 			if (boost::filesystem::is_regular(*it2)) {
 				if (boost::filesystem::extension(it2->path()) == PionPlugin::PION_PLUGIN_EXTENSION) {
-					plugin_names.push_back(PionPlugin::getPluginName(it2->path().leaf()));
+					plugin_names.push_back(PionPlugin::getPluginName(it2->path().filename().string()));
 				}
 			}
 		}
@@ -309,11 +309,11 @@ void *PionPlugin::loadDynamicLibrary(con
 #else
 	// convert into a full/absolute/complete path since dlopen()
 	// does not always search the CWD on some operating systems
-	const boost::filesystem::path full_path = boost::filesystem::complete(plugin_file);
+	const boost::filesystem::path full_path = boost::filesystem::absolute(plugin_file);
 	// NOTE: you must load shared libraries using RTLD_GLOBAL on Unix platforms
 	// due to a bug in GCC (or Boost::any, depending on which crowd you want to believe).
 	// see: http://svn.boost.org/trac/boost/ticket/754
-	return dlopen(full_path.file_string().c_str(), RTLD_LAZY | RTLD_GLOBAL);
+	return dlopen(full_path.string().c_str(), RTLD_LAZY | RTLD_GLOBAL);
 #endif
 }
 
diff -rup pion-net-4.0.12/common/src/PionScheduler.cpp pion-net-4.0.12-new/common/src/PionScheduler.cpp
--- pion-net-4.0.12/common/src/PionScheduler.cpp	2008-11-08 00:41:17.000000000 +0100
+++ pion-net-4.0.12-new/common/src/PionScheduler.cpp	2012-07-07 20:42:22.084660696 +0200
@@ -102,7 +102,7 @@ boost::xtime PionScheduler::getWakeupTim
 										  boost::uint32_t sleep_nsec)
 {
 	boost::xtime wakeup_time;
-	boost::xtime_get(&wakeup_time, boost::TIME_UTC);
+	boost::xtime_get(&wakeup_time, boost::TIME_UTC_);
 	wakeup_time.sec += sleep_sec;
 	wakeup_time.nsec += sleep_nsec;
 	if (static_cast<boost::uint32_t>(wakeup_time.nsec) >= NSEC_IN_SECOND) {
diff -rup pion-net-4.0.12/common/tests/PionPluginPtrTests.cpp pion-net-4.0.12-new/common/tests/PionPluginPtrTests.cpp
--- pion-net-4.0.12/common/tests/PionPluginPtrTests.cpp	2009-10-13 18:20:43.000000000 +0200
+++ pion-net-4.0.12-new/common/tests/PionPluginPtrTests.cpp	2012-07-07 20:42:22.084660696 +0200
@@ -230,7 +230,7 @@ BOOST_AUTO_TEST_SUITE_END()
 class Sandbox_F {
 public:
 	Sandbox_F() {
-		m_cwd = boost::filesystem::current_path().directory_string();
+		m_cwd = boost::filesystem::current_path().string();
 		boost::filesystem::remove_all("sandbox");
 		BOOST_REQUIRE(boost::filesystem::create_directory("sandbox"));
 		BOOST_REQUIRE(boost::filesystem::create_directory("sandbox/dir1"));
diff -rup pion-net-4.0.12/configure pion-net-4.0.12-new/configure
--- pion-net-4.0.12/configure	2012-03-24 08:00:10.000000000 +0100
+++ pion-net-4.0.12-new/configure	2012-07-07 20:42:22.094660551 +0200
@@ -22091,7 +22091,7 @@ fi
 
 
 # AC_MSG_NOTICE(Boost home directory: $BOOST_HOME_DIR)
-CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS -DBOOST_FILESYSTEM_VERSION=2"
+CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS -DBOOST_FILESYSTEM_VERSION=3"
 LDFLAGS="$LDFLAGS $BOOST_LDFLAGS"
 
 # Check for Boost library extension
@@ -22197,7 +22197,7 @@ LIBS="$LIBS_SAVED"
 BOOST_TRY_LIB=thread
 BOOST_TRY_LINK="boost_${BOOST_TRY_LIB}${BOOST_LIB_EXTENSION}"
 LIBS_SAVED="$LIBS"
-LIBS="$LIBS_SAVED -l${BOOST_TRY_LINK} ${BOOST_DATE_TIME_LIB}"
+LIBS="$LIBS_SAVED -lboost_system -l${BOOST_TRY_LINK} ${BOOST_DATE_TIME_LIB}"
 echo "$as_me:$LINENO: checking for boost::${BOOST_TRY_LIB} library" >&5
 echo $ECHO_N "checking for boost::${BOOST_TRY_LIB} library... $ECHO_C" >&6
 cat >conftest.$ac_ext <<_ACEOF
diff -rup pion-net-4.0.12/net/include/pion/net/TCPConnection.hpp pion-net-4.0.12-new/net/include/pion/net/TCPConnection.hpp
--- pion-net-4.0.12/net/include/pion/net/TCPConnection.hpp	2012-01-12 17:30:03.000000000 +0100
+++ pion-net-4.0.12-new/net/include/pion/net/TCPConnection.hpp	2012-07-07 20:43:34.530273709 +0200
@@ -26,6 +26,7 @@
 #include <boost/array.hpp>
 #include <boost/function.hpp>
 #include <boost/function/function1.hpp>
+#include <boost/system/system_error.hpp>
 #include <pion/PionConfig.hpp>
 #include <string>
 
diff -rup pion-net-4.0.12/net/services/FileService.cpp pion-net-4.0.12-new/net/services/FileService.cpp
--- pion-net-4.0.12/net/services/FileService.cpp	2009-08-06 20:58:13.000000000 +0200
+++ pion-net-4.0.12-new/net/services/FileService.cpp	2012-07-07 20:42:22.097993836 +0200
@@ -137,8 +137,8 @@ void FileService::operator()(HTTPRequest
 
 	// make sure that the requested file is within the configured directory
 	file_path.normalize();
-	std::string file_string = file_path.file_string();
-	if (file_string.find(m_directory.directory_string()) != 0) {
+	std::string file_string = file_path.string();
+	if (file_string.find(m_directory.string()) != 0) {
 		PION_LOG_WARN(m_logger, "Request for file outside of directory ("
 					  << getResource() << "): " << relative_path);
 		static const std::string FORBIDDEN_HTML_START =
@@ -319,7 +319,7 @@ void FileService::operator()(HTTPRequest
 						   << getResource() << "): " << relative_path);
 
 			// determine the MIME type
-			response_file.setMimeType(findMIMEType( response_file.getFilePath().leaf() ));
+			response_file.setMimeType(findMIMEType( response_file.getFilePath().filename().string() ));
 
 			// get the file_size and last_modified timestamp
 			response_file.update();
@@ -597,7 +597,7 @@ void FileService::stop(void)
 void FileService::scanDirectory(const boost::filesystem::path& dir_path)
 {
 	PION_LOG_DEBUG(m_logger, "Scanning directory (" << getResource() << "): "
-				   << dir_path.directory_string());
+				   << dir_path.string());
 
 	// iterate through items in the directory
 	boost::filesystem::directory_iterator end_itr;
@@ -614,8 +614,8 @@ void FileService::scanDirectory(const bo
 			// item is a regular file
 
 			// figure out relative path to the file
-			std::string file_path_string( itr->path().file_string() );
-			std::string relative_path( file_path_string.substr(m_directory.directory_string().size() + 1) );
+			std::string file_path_string( itr->path().string() );
+			std::string relative_path( file_path_string.substr(m_directory.string().size() + 1) );
 
 			// add item to cache (use placeholder if scan == 1)
 			addCacheEntry(relative_path, *itr, m_scan_setting == 1);
@@ -628,7 +628,7 @@ FileService::addCacheEntry(const std::st
 						   const boost::filesystem::path& file_path,
 						   const bool placeholder)
 {
-	DiskFile cache_entry(file_path, NULL, 0, 0, findMIMEType(file_path.leaf()));
+	DiskFile cache_entry(file_path, NULL, 0, 0, findMIMEType(file_path.filename().string()));
 	if (! placeholder) {
 		cache_entry.update();
 		// only read the file if its size is <= max_cache_size
@@ -636,7 +636,7 @@ FileService::addCacheEntry(const std::st
 			try { cache_entry.read(); }
 			catch (std::exception&) {
 				PION_LOG_ERROR(m_logger, "Unable to add file to cache: "
-							   << file_path.file_string());
+							   << file_path.string());
 				return std::make_pair(m_cache_map.end(), false);
 			}
 		}
@@ -647,10 +647,10 @@ FileService::addCacheEntry(const std::st
 
 	if (add_entry_result.second) {
 		PION_LOG_DEBUG(m_logger, "Added file to cache: "
-					   << file_path.file_string());
+					   << file_path.string());
 	} else {
 		PION_LOG_ERROR(m_logger, "Unable to insert cache entry for file: "
-					   << file_path.file_string());
+					   << file_path.string());
 	}
 
 	return add_entry_result;
@@ -713,7 +713,7 @@ void DiskFile::read(void)
 
 	// read the file into memory
 	if (!file_stream.is_open() || !file_stream.read(m_file_content.get(), m_file_size))
-		throw FileService::FileReadException(m_file_path.file_string());
+		throw FileService::FileReadException(m_file_path.string());
 }
 
 bool DiskFile::checkUpdated(void)
@@ -751,7 +751,7 @@ DiskFileSender::DiskFileSender(DiskFile&
 {
 	PION_LOG_DEBUG(m_logger, "Preparing to send file"
 				   << (m_disk_file.hasFileContent() ? " (cached): " : ": ")
-				   << m_disk_file.getFilePath().file_string());
+				   << m_disk_file.getFilePath().string());
 
 		// set the Content-Type HTTP header using the file's MIME type
 	m_writer->getResponse().setContentType(m_disk_file.getMimeType());
@@ -795,7 +795,7 @@ void DiskFileSender::send(void)
 			m_file_stream.open(m_disk_file.getFilePath(), std::ios::in | std::ios::binary);
 			if (! m_file_stream.is_open()) {
 				PION_LOG_ERROR(m_logger, "Unable to open file: "
-							   << m_disk_file.getFilePath().file_string());
+							   << m_disk_file.getFilePath().string());
 				return;
 			}
 		}
@@ -811,10 +811,10 @@ void DiskFileSender::send(void)
 		if (! m_file_stream.read(m_content_buf.get(), m_file_bytes_to_send)) {
 			if (m_file_stream.gcount() > 0) {
 				PION_LOG_ERROR(m_logger, "File size inconsistency: "
-							   << m_disk_file.getFilePath().file_string());
+							   << m_disk_file.getFilePath().string());
 			} else {
 				PION_LOG_ERROR(m_logger, "Unable to read file: "
-							   << m_disk_file.getFilePath().file_string());
+							   << m_disk_file.getFilePath().string());
 			}
 			return;
 		}