i2pd/util.h

66 lines
1.6 KiB
C
Raw Normal View History

2014-01-30 07:28:07 +04:00
#ifndef UTIL_H
#define UTIL_H
#include <map>
#include <string>
2014-12-23 05:20:39 +03:00
#include <iostream>
2014-10-31 21:17:52 +03:00
#include <boost/asio.hpp>
#include <boost/filesystem.hpp>
#include <boost/filesystem/fstream.hpp>
2014-01-30 07:28:07 +04:00
#define PAIRTYPE(t1, t2) std::pair<t1, t2>
2014-01-30 07:28:07 +04:00
namespace i2p
{
namespace util
{
namespace filesystem
{
2014-11-17 23:28:52 +03:00
void SetAppName (const std::string& name);
std::string GetAppName ();
2014-02-01 07:51:58 +04:00
const boost::filesystem::path &GetDataDir();
2014-03-13 22:22:32 +04:00
std::string GetFullPath (const std::string& filename);
boost::filesystem::path GetDefaultDataDir();
boost::filesystem::path GetConfigFile();
2015-11-20 15:52:38 +03:00
boost::filesystem::path GetTunnelsConfigFile();
boost::filesystem::path GetCertificatesDir();
}
namespace http
{
2014-12-23 00:45:50 +03:00
const char ETAG[] = "ETag";
2014-12-24 17:45:25 +03:00
const char IF_NONE_MATCH[] = "If-None-Match";
2014-12-23 00:45:50 +03:00
const char IF_MODIFIED_SINCE[] = "If-Modified-Since";
const char LAST_MODIFIED[] = "Last-Modified";
const char TRANSFER_ENCODING[] = "Transfer-Encoding";
2016-02-18 21:19:31 +03:00
const char CONTENT_ENCODING[] = "Content-Encoding";
2016-02-19 04:35:14 +03:00
const char CONTENT_ENCODING1[] = "Content-encoding";
2015-02-20 20:21:33 +03:00
std::string GetHttpContent (std::istream& response);
2014-12-23 05:20:39 +03:00
void MergeChunkedResponse (std::istream& response, std::ostream& merged);
2015-02-07 20:34:25 +03:00
std::string urlDecode(const std::string& data);
2014-04-18 02:54:15 +04:00
struct url {
url(const std::string& url_s); // omitted copy, ==, accessors, ...
private:
void parse(const std::string& url_s);
public:
2014-04-07 00:18:55 +04:00
std::string protocol_, host_, path_, query_;
2014-04-18 00:22:54 +04:00
std::string portstr_;
unsigned int port_;
std::string user_;
std::string pass_;
};
}
2014-10-31 21:17:52 +03:00
namespace net
{
int GetMTU (const boost::asio::ip::address& localAddress);
}
2014-01-30 07:28:07 +04:00
}
}
#endif