aboutsummaryrefslogtreecommitdiffhomepage
path: root/tdnet
diff options
context:
space:
mode:
authorlevlam <levlam@telegram.org>2026-01-12 01:08:07 +0300
committerlevlam <levlam@telegram.org>2026-01-12 01:08:07 +0300
commit58aa7c40f7dd7117d08ada1d84c5417ed1883eb8 (patch)
tree7cf8c9acaceb65eb69f7df4e4ca77dc82ba095ec /tdnet
parent7c01a8a4ebcd73205f99a00e5d8af978ea26a9aa (diff)
Add HttpHeaderCreator::add_host_header.
Diffstat (limited to 'tdnet')
-rw-r--r--tdnet/td/net/HttpHeaderCreator.cpp10
-rw-r--r--tdnet/td/net/HttpHeaderCreator.h2
2 files changed, 12 insertions, 0 deletions
diff --git a/tdnet/td/net/HttpHeaderCreator.cpp b/tdnet/td/net/HttpHeaderCreator.cpp
index dd70bcb49..a3db8321e 100644
--- a/tdnet/td/net/HttpHeaderCreator.cpp
+++ b/tdnet/td/net/HttpHeaderCreator.cpp
@@ -10,6 +10,16 @@
namespace td {
+void HttpHeaderCreator::add_host_header(HttpUrl::Protocol protocol, Slice host, int32 port) {
+ sb_ << "Host: ";
+ if ((protocol == HttpUrl::Protocol::Https && port == 443) || (protocol == HttpUrl::Protocol::Http && port == 80)) {
+ sb_ << host;
+ } else {
+ sb_ << host << ':' << port;
+ }
+ sb_ << "\r\n";
+}
+
string HttpHeaderCreator::get_host_header(HttpUrl::Protocol protocol, Slice host, int32 port) {
if ((protocol == HttpUrl::Protocol::Https && port == 443) || (protocol == HttpUrl::Protocol::Http && port == 80)) {
return host.str();
diff --git a/tdnet/td/net/HttpHeaderCreator.h b/tdnet/td/net/HttpHeaderCreator.h
index 021f72c17..ede1f9fe7 100644
--- a/tdnet/td/net/HttpHeaderCreator.h
+++ b/tdnet/td/net/HttpHeaderCreator.h
@@ -65,6 +65,8 @@ class HttpHeaderCreator {
add_header("Connection", "keep-alive");
}
+ void add_host_header(HttpUrl::Protocol protocol, Slice host, int32 port);
+
static string get_host_header(HttpUrl::Protocol protocol, Slice host, int32 port);
Result<Slice> finish(Slice content = {}) TD_WARN_UNUSED_RESULT;