summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Stahl <michael.stahl@allotropia.de>2022-04-20 13:16:31 +0200
committerXisco Fauli <xiscofauli@libreoffice.org>2022-04-21 14:15:23 +0200
commit3fe6a03426a86ec6b18a9b712588619f19a72897 (patch)
tree86c1723d47b11e299551ecd5ba85ac919e151e09
parent93234133477d5f3268ffd441b1e2b7758c809dd4 (diff)
tdf#146460 tdf#148429 ucb: webdav-curl: censor "curl" in UserAgent
This is now the second bug filed because a server replies with 403 if the UserAgent contains the string "curl". Change-Id: I25ca2d255af76a7ff4e64dad900b1bf0b78de59f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133212 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> (cherry picked from commit 8d9c56e8f42428fd6695942c673bffb985d22ad5) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133146 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
-rw-r--r--ucb/source/ucp/webdav-curl/CurlSession.cxx7
1 files changed, 4 insertions, 3 deletions
diff --git a/ucb/source/ucp/webdav-curl/CurlSession.cxx b/ucb/source/ucp/webdav-curl/CurlSession.cxx
index 813988c78489..66232a73a15f 100644
--- a/ucb/source/ucp/webdav-curl/CurlSession.cxx
+++ b/ucb/source/ucp/webdav-curl/CurlSession.cxx
@@ -620,9 +620,10 @@ CurlSession::CurlSession(uno::Reference<uno::XComponentContext> const& xContext,
// en.wikipedia.org:80 forces back 403 "Scripts should use an informative
// User-Agent string with contact information, or they may be IP-blocked
// without notice" otherwise:
- OString const useragent(OString::Concat("LibreOffice " LIBO_VERSION_DOTTED " curl/")
- + ::std::string_view(pVersion->version, strlen(pVersion->version)) + " "
- + pVersion->ssl_version);
+ OString const useragent(
+ OString::Concat("LibreOffice " LIBO_VERSION_DOTTED " denylistedbackend/")
+ + ::std::string_view(pVersion->version, strlen(pVersion->version)) + " "
+ + pVersion->ssl_version);
// looks like an explicit "User-Agent" header in CURLOPT_HTTPHEADER
// will override CURLOPT_USERAGENT, see Curl_http_useragent(), so no need
// to check anything here