diff options
author | joschiwald <joschiwald.trinity@gmail.com> | 2018-03-04 13:55:03 +0100 |
---|---|---|
committer | joschiwald <joschiwald.trinity@gmail.com> | 2018-03-04 13:55:03 +0100 |
commit | 7e643662fda63c92f32cf78323acdbd08732ccea (patch) | |
tree | ea51e86fe77738f9595529d0e243de7b09819821 | |
parent | 16a7a414abcc93c4514905b871f53c1049261c12 (diff) |
Tools/ConnectionPatcher: Dropped obsolete function DownloadFile
* Also broken in boost 1.66
-rw-r--r-- | src/tools/connection_patcher/Helper.cpp | 65 | ||||
-rw-r--r-- | src/tools/connection_patcher/Helper.hpp | 7 |
2 files changed, 1 insertions, 71 deletions
diff --git a/src/tools/connection_patcher/Helper.cpp b/src/tools/connection_patcher/Helper.cpp index 408f12f9db2..6a4f0d0f07d 100644 --- a/src/tools/connection_patcher/Helper.cpp +++ b/src/tools/connection_patcher/Helper.cpp @@ -17,6 +17,7 @@ */ #include "Helper.hpp" +#include "Patterns/Common.hpp" namespace Connection_Patcher { @@ -45,70 +46,6 @@ namespace Connection_Patcher } } - // adapted from http://stackoverflow.com/questions/21422094/boostasio-download-image-file-from-server - void DownloadFile(const std::string& serverName, int port, const std::string& getCommand, std::ostream& out) - { - using namespace boost::asio; - using boost::asio::ip::tcp; - - io_service io_service; - - // Get a list of endpoints corresponding to the server name. - tcp::resolver resolver(io_service); - tcp::resolver::query query(serverName, std::to_string(port)); - tcp::resolver::iterator endpoint_iterator = resolver.resolve(query); - tcp::resolver::iterator end; - - // Try each endpoint until we successfully establish a connection. - tcp::socket socket(io_service); - boost::system::error_code error = boost::asio::error::host_not_found; - while (error && endpoint_iterator != end) - { - socket.close(); - socket.connect(*endpoint_iterator++, error); - } - - boost::asio::streambuf request; - std::ostream request_stream(&request); - - request_stream << "GET " << getCommand << " HTTP/1.0\r\n"; - request_stream << "Host: " << serverName << ':' << port << "\r\n"; - request_stream << "Accept: */*\r\n"; - request_stream << "Connection: close\r\n\r\n"; - - // Send the request. - boost::asio::write(socket, request); - - // Read the response status line. - boost::asio::streambuf response; - boost::asio::read_until(socket, response, "\r\n"); - - // Check that response is OK. - std::istream response_stream(&response); - std::string http_version; - response_stream >> http_version; - unsigned int status_code; - response_stream >> status_code; - std::string status_message; - std::getline(response_stream, status_message); - - // Read the response headers, which are terminated by a blank line. - boost::asio::read_until(socket, response, "\r\n\r\n"); - - // Process the response headers. - std::string header; - while (std::getline(response_stream, header) && header != "\r") - { } - - // Write whatever content we already have to output. - if (response.size() > 0) - out << &response; - - // Read until EOF, writing data to output as we go. - while (boost::asio::read(socket, response, boost::asio::transfer_at_least(1), error)) - out << &response; - } - Constants::BinaryTypes GetBinaryType(std::vector<unsigned char> const& data) { // Check MS-DOS magic diff --git a/src/tools/connection_patcher/Helper.hpp b/src/tools/connection_patcher/Helper.hpp index 3469150057d..e847e911a3f 100644 --- a/src/tools/connection_patcher/Helper.hpp +++ b/src/tools/connection_patcher/Helper.hpp @@ -20,23 +20,16 @@ #define CONNECTION_PATCHER_HELPER_HPP #include "Constants/BinaryTypes.hpp" -#include "Patterns/Common.hpp" #include <boost/filesystem.hpp> -#include <boost/asio.hpp> #include <vector> #include <set> -#include <string> -#include <stdexcept> -#include <SHA256.h> -#include <Util.h> namespace Connection_Patcher { namespace Helper { void CopyDir(boost::filesystem::path const & source, boost::filesystem::path const & destination); - void DownloadFile(const std::string& serverName, int port, const std::string& getCommand, std::ostream& out); Constants::BinaryTypes GetBinaryType(std::vector<unsigned char> const& data); std::set<size_t> SearchOffset(std::vector<unsigned char> const& binary, std::vector<unsigned char> const& pattern); uint32_t GetBuildNumber(std::vector<unsigned char> const& binary); |