Skip to content

Commit 33d8a82

Browse files
committed
Set UserAgent
1 parent f199495 commit 33d8a82

File tree

3 files changed

+18
-8
lines changed

3 files changed

+18
-8
lines changed

lib/curlrequester.cpp

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,11 @@ CurlRequester::CurlRequester(const Url& addr, const SslConfig& sslConfig)
2727
curl_easy_setopt(_curl, CURLOPT_PINNEDPUBLICKEY, sslConfig.pinnedPublicKey.c_str());
2828
}
2929

30-
_opts = nullptr;
31-
#ifdef USER_AGENT
32-
_opts = curl_slist_append(_opts, "User-Agent: " USER_AGENT);
33-
#endif
30+
if(!_userAgent.empty())
31+
{
32+
std::string userAgentOpt = "User-Agent: " + _userAgent;
33+
_opts = curl_slist_append(_opts, userAgentOpt.c_str());
34+
}
3435

3536
}
3637

@@ -67,6 +68,13 @@ CURLcode CurlRequester::await(Bytestream* data)
6768
return _result;
6869
}
6970

71+
void CurlRequester::setUserAgent(std::string userAgent)
72+
{
73+
_userAgent = std::move(userAgent);
74+
}
75+
76+
std::string CurlRequester::_userAgent;
77+
7078
CurlIppPosterBase::~CurlIppPosterBase()
7179
{
7280
CurlIppPosterBase::await();

lib/curlrequester.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,6 @@
99
#include <zlib.h>
1010
#include <mutex>
1111

12-
#ifndef USER_AGENT
13-
#define USER_AGENT ""
14-
#endif
15-
1612
class CurlRequester
1713
{
1814
public:
@@ -30,6 +26,8 @@ class CurlRequester
3026

3127
virtual CURLcode await(Bytestream* = nullptr);
3228

29+
static void setUserAgent(std::string userAgent);
30+
3331
protected:
3432

3533
CurlRequester(const Url& addr, const SslConfig& sslConfig);
@@ -70,6 +68,8 @@ class CurlRequester
7068
struct curl_slist* _opts = nullptr;
7169

7270
LThread _worker;
71+
72+
static std::string _userAgent;
7373
};
7474

7575
class CurlIppPosterBase : public CurlRequester

utils/ippclient.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -308,6 +308,8 @@ int main(int argc, char** argv)
308308
return 1;
309309
}
310310

311+
CurlRequester::setUserAgent("ppm2pwg-ippclient");
312+
311313
IppPrinter printer(addr, {verifySsl, pinnedPublicKey});
312314
Error error = printer.error();
313315
if(error)

0 commit comments

Comments
 (0)