Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-15-SP2:GA
squid
SQUID-2023_5.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File SQUID-2023_5.patch of Package squid
From 7de01969a793b2fdb476e354a9fcda272d400d27 Mon Sep 17 00:00:00 2001 From: Alex Rousskov <rousskov@measurement-factory.com> Date: Thu, 25 May 2023 02:10:28 +0000 Subject: [PATCH] Fix userinfo percent-encoding (#1367) %X expects an unsigned int, and that is what we were giving it. However, to get to the correct unsigned int value from a (signed) char, one has to cast to an unsigned char (or equivalent) first. Broken since inception in commit 7b75100. Also adjusted similar (commented out) ext_edirectory_userip_acl code. --- src/acl/external/eDirectory_userip/ext_edirectory_userip_acl.cc | 2 +- src/anyp/Uri.cc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/acl/external/eDirectory_userip/ext_edirectory_userip_acl.cc b/src/acl/external/eDirectory_userip/ext_edirectory_userip_acl.cc index bf124d24f..e3f33e209 100644 --- a/src/acl/external/eDirectory_userip/ext_edirectory_userip_acl.cc +++ b/src/acl/external/eDirectory_userip/ext_edirectory_userip_acl.cc @@ -1555,7 +1555,7 @@ MainSafe(int argc, char **argv) /* BINARY DEBUGGING * local_printfx("while() -> bufa[%" PRIuSIZE "]: %s", k, bufa); for (i = 0; i < k; ++i) - local_printfx("%02X", bufa[i]); + local_printfx("%02X", static_cast<unsigned int>(static_cast<unsigned char>(bufa[i]))); local_printfx("\n"); * BINARY DEBUGGING */ /* Check for CRLF */ diff --git a/src/anyp/Uri.cc b/src/anyp/Uri.cc index e37293996..eca2c2357 100644 --- a/src/anyp/Uri.cc +++ b/src/anyp/Uri.cc @@ -71,7 +71,7 @@ AnyP::Uri::Encode(const SBuf &buf, const CharacterSet &ignore) while (!tk.atEnd()) { // TODO: Add Tokenizer::parseOne(void). const auto ch = tk.remaining()[0]; - output.appendf("%%%02X", static_cast<unsigned int>(ch)); // TODO: Optimize using a table + output.appendf("%%%02X", static_cast<unsigned int>(static_cast<unsigned char>(ch))); // TODO: Optimize using a table (void)tk.skip(ch); if (tk.prefix(goodSection, ignore)) -- 2.25.1
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor