Skip to content

Commit c36106a

Browse files
committed
2026-04-20
1 parent 80bb961 commit c36106a

17 files changed

Lines changed: 597 additions & 45 deletions

squid-dev/2026-April.txt

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1358,3 +1358,141 @@ Kind regards,
13581358
An HTML attachment was scrubbed...
13591359
URL: <http://lists.squid-cache.org/pipermail/squid-dev/attachments/20260420/b4759344/attachment.htm>
13601360

1361+
From rousskov at measurement-factory.com Mon Apr 20 14:14:11 2026
1362+
From: rousskov at measurement-factory.com (Alex Rousskov)
1363+
Date: Mon, 20 Apr 2026 10:14:11 -0400
1364+
Subject: [squid-dev] NO_SPECIAL_HANDLING define for HTTP methods
1365+
In-Reply-To: <CA+Y8hcMtE4VTDJ1SAxmTgkmuTtZRKCjD0YCE9Gmv7z9zMZMHag@mail.gmail.com>
1366+
References: <CA+Y8hcMtE4VTDJ1SAxmTgkmuTtZRKCjD0YCE9Gmv7z9zMZMHag@mail.gmail.com>
1367+
Message-ID: <8e930040-e70c-4d8a-95ca-c1a29c709980@measurement-factory.com>
1368+
1369+
On 2026-04-19 17:35, Francesco Chemolli wrote:
1370+
1371+
> I stumbled upon src/http/MethodType.h and the fact that a lot of
1372+
> methods are hidden behind a NO_SPECIAL_HANDLING preprocessor macro.
1373+
> Does anyone have any memory about what the purpose of that exclusion?
1374+
1375+
I can only speculate why those "hidden" methods were added, and I do not
1376+
want to do that.
1377+
1378+
We should remove those "hidden" methods (and the macro) -- that enum is
1379+
not the right place to enumerate the names of various methods (and their
1380+
specs) that Squid never uses by name because Squid does not handle them
1381+
"specially".
1382+
1383+
Alex.
1384+
1385+
1386+
From rousskov at measurement-factory.com Mon Apr 20 17:37:58 2026
1387+
From: rousskov at measurement-factory.com (Alex Rousskov)
1388+
Date: Mon, 20 Apr 2026 13:37:58 -0400
1389+
Subject: [squid-dev] Issue with acl note (without -m) splitting helper
1390+
tokens containing commas
1391+
In-Reply-To: <CADJd0Y2eRvv9dtZKRFgzQk3bRZJCXvzxkYCAzSgqw-fweGd7MA@mail.gmail.com>
1392+
References: <CADJd0Y1M=Z9VY6spPMcR1SoFgrfDKuWdbWM=6=A=CEoS+oi+Og@mail.gmail.com>
1393+
<CADJd0Y2eRvv9dtZKRFgzQk3bRZJCXvzxkYCAzSgqw-fweGd7MA@mail.gmail.com>
1394+
Message-ID: <5c838da1-984d-4089-af25-d18a833582b6@measurement-factory.com>
1395+
1396+
On 2026-04-20 05:50, Andrey K wrote:
1397+
1398+
> I think I?ve come up with a way to minimize the impact of removing the
1399+
> default comma delimiter on existing Squid setups.
1400+
> We can introduce a new build-time configuration option,
1401+
> --with-annotation-values-default-delimiter, so that users who rely on
1402+
> the comma separator can rebuild Squid with
1403+
> --with-annotation-values-default-delimiter=,.
1404+
1405+
Please do not introduce ./configure options for functionality that can
1406+
be configured by more dynamic means (e.g., via squid.conf).
1407+
1408+
1409+
> While this approach is more conceptually sound and aligns better with
1410+
> the documentation, I am concerned that many users rely on
1411+
> vendor-provided binary packages and won't have the opportunity to
1412+
> recompile Squid from source.
1413+
1414+
Your concern is valid, and there are other reasons we should avoid
1415+
avoidable ./configure options.
1416+
1417+
I will respond to your other suggestions separately.
1418+
1419+
1420+
Thank you,
1421+
1422+
Alex.
1423+
1424+
1425+
> ??, 17 ???. 2026??. ? 16:08, Andrey K <ankor2023 at gmail.com
1426+
> <mailto:ankor2023 at gmail.com>>:
1427+
>
1428+
> Hello,
1429+
>
1430+
> While working with annotations, I?ve noticed an inconsistency in how
1431+
> acl note (without the -m option) handles tokens received from
1432+
> helpers when they contain a comma.
1433+
>
1434+
> According to the documentation, an ACL like this:
1435+
> ? ? acl staff note group Staff:accountants,lawyers,security
1436+
> should match a helper response such as:
1437+
> ? ? group="Staff:accountants,lawyers,security"
1438+
>
1439+
> However, this is not the case. The helper's response is split into
1440+
> tokens using a comma as the default delimiter. As a result, only
1441+
> ACLs like the following will match:
1442+
> ? ? acl staff note group lawyers
1443+
>
1444+
> This behavior occurs because in Acl::NoteCheck::matchNotes(), a
1445+
> comma is passed as the default delimiter to the expandListEntries()
1446+
> function:
1447+
> ? ? bool
1448+
> ? ? ACLNoteStrategy::matchNotes(ACLData<MatchType> *noteData, const
1449+
> NotePairs *note) const
1450+
> ? ? {
1451+
> ? ? ? ? const NotePairs::Entries &entries =
1452+
> note->expandListEntries(&delimiters.value);
1453+
> ? ? ? ? for (auto e: entries)
1454+
> ? ? ? ? ? ? if (noteData->match(e.getRaw()))
1455+
> ? ? ? ? ? ? ? ? return true;
1456+
> ? ? ? ? return false;
1457+
> ? ? }
1458+
>
1459+
> After reviewing the source code, I found that the comma is added in
1460+
> src/acl/Note.h within the AnnotationCheck class constructor:
1461+
> ? ? AnnotationCheck(): delimiters(CharacterSet("__FILE__", ",")) {}
1462+
>
1463+
> Using a comma as the default delimiter makes it difficult to
1464+
> validate full tokens that may naturally contain commas.
1465+
>
1466+
> I would like to propose two changes:
1467+
> 1. Removing the default comma delimiter.
1468+
> I am prepared to submit a simple PR to exclude this comma to fix the
1469+
> incorrect matching of strings containing commas.
1470+
> However, I realize this might be a breaking change for users who
1471+
> currently rely on this implicit splitting behavior.
1472+
>
1473+
> 2. Supporting custom delimiters in helper responses.
1474+
> I also propose a PR to support a format where tag values can be
1475+
> passed as a list with a custom delimiter:
1476+
> ? ? <key>=<delimiter>"<value1><delimiter><value2>..."
1477+
> For example:
1478+
> ? ? group=,"group1,group2,group3"
1479+
> ? ? clt_con_tag=;"tag1;tag2;tag3"
1480+
> In this PR, the helper response would be tokenized based on the
1481+
> specified custom delimiter, while still supporting delimiter
1482+
> escaping with a backslash (\).
1483+
> In this scenario, having a hardcoded comma as the default delimiter
1484+
> in the AnnotationCheck class would also create complications.
1485+
>
1486+
> I would appreciate your thoughts on these proposals and whether they
1487+
> align with the project's roadmap.
1488+
>
1489+
> Kind regards,
1490+
> ? ? Ankor.
1491+
>
1492+
>
1493+
> _______________________________________________
1494+
> squid-dev mailing list
1495+
> squid-dev at lists.squid-cache.org
1496+
> https://lists.squid-cache.org/listinfo/squid-dev
1497+
1498+

squid-dev/2026-April/010018.html

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@
1212
}
1313
</style>
1414
<META http-equiv="Content-Type" content="text/html; charset=us-ascii">
15-
<LINK REL="Previous" HREF="010019.html">
16-
15+
<LINK REL="Previous" HREF="010021.html">
16+
<LINK REL="Next" HREF="010020.html">
1717
</HEAD>
1818
<BODY BGCOLOR="#ffffff">
1919
<H1>[squid-dev] NO_SPECIAL_HANDLING define for HTTP methods</H1>
@@ -23,9 +23,10 @@ <H1>[squid-dev] NO_SPECIAL_HANDLING define for HTTP methods</H1>
2323
</A><BR>
2424
<I>Sun Apr 19 21:35:02 UTC 2026</I>
2525
<P><UL>
26-
<LI>Previous message (by thread): <A HREF="010019.html">[squid-dev] Issue with acl note (without -m) splitting helper tokens containing commas
26+
<LI>Previous message (by thread): <A HREF="010021.html">[squid-dev] Issue with acl note (without -m) splitting helper tokens containing commas
27+
</A></li>
28+
<LI>Next message (by thread): <A HREF="010020.html">[squid-dev] NO_SPECIAL_HANDLING define for HTTP methods
2729
</A></li>
28-
2930
<LI> <B>Messages sorted by:</B>
3031
<a href="date.html#10018">[ date ]</a>
3132
<a href="thread.html#10018">[ thread ]</a>
@@ -46,13 +47,16 @@ <H1>[squid-dev] NO_SPECIAL_HANDLING define for HTTP methods</H1>
4647
</PRE>
4748

4849

50+
51+
4952
<!--endarticle-->
5053
<HR>
5154
<P><UL>
5255
<!--threads-->
53-
<LI>Previous message (by thread): <A HREF="010019.html">[squid-dev] Issue with acl note (without -m) splitting helper tokens containing commas
56+
<LI>Previous message (by thread): <A HREF="010021.html">[squid-dev] Issue with acl note (without -m) splitting helper tokens containing commas
57+
</A></li>
58+
<LI>Next message (by thread): <A HREF="010020.html">[squid-dev] NO_SPECIAL_HANDLING define for HTTP methods
5459
</A></li>
55-
5660
<LI> <B>Messages sorted by:</B>
5761
<a href="date.html#10018">[ date ]</a>
5862
<a href="thread.html#10018">[ thread ]</a>

squid-dev/2026-April/010019.html

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
</style>
1414
<META http-equiv="Content-Type" content="text/html; charset=us-ascii">
1515
<LINK REL="Previous" HREF="010017.html">
16-
<LINK REL="Next" HREF="010018.html">
16+
<LINK REL="Next" HREF="010021.html">
1717
</HEAD>
1818
<BODY BGCOLOR="#ffffff">
1919
<H1>[squid-dev] Issue with acl note (without -m) splitting helper tokens containing commas</H1>
@@ -25,7 +25,7 @@ <H1>[squid-dev] Issue with acl note (without -m) splitting helper tokens contain
2525
<P><UL>
2626
<LI>Previous message (by thread): <A HREF="010017.html">[squid-dev] Issue with acl note (without -m) splitting helper tokens containing commas
2727
</A></li>
28-
<LI>Next message (by thread): <A HREF="010018.html">[squid-dev] NO_SPECIAL_HANDLING define for HTTP methods
28+
<LI>Next message (by thread): <A HREF="010021.html">[squid-dev] Issue with acl note (without -m) splitting helper tokens containing commas
2929
</A></li>
3030
<LI> <B>Messages sorted by:</B>
3131
<a href="date.html#10019">[ date ]</a>
@@ -129,13 +129,14 @@ <H1>[squid-dev] Issue with acl note (without -m) splitting helper tokens contain
129129
URL: &lt;<A HREF="http://lists.squid-cache.org/pipermail/squid-dev/attachments/20260420/b4759344/attachment.htm">http://lists.squid-cache.org/pipermail/squid-dev/attachments/20260420/b4759344/attachment.htm</A>&gt;
130130
</PRE>
131131

132+
132133
<!--endarticle-->
133134
<HR>
134135
<P><UL>
135136
<!--threads-->
136137
<LI>Previous message (by thread): <A HREF="010017.html">[squid-dev] Issue with acl note (without -m) splitting helper tokens containing commas
137138
</A></li>
138-
<LI>Next message (by thread): <A HREF="010018.html">[squid-dev] NO_SPECIAL_HANDLING define for HTTP methods
139+
<LI>Next message (by thread): <A HREF="010021.html">[squid-dev] Issue with acl note (without -m) splitting helper tokens containing commas
139140
</A></li>
140141
<LI> <B>Messages sorted by:</B>
141142
<a href="date.html#10019">[ date ]</a>

squid-dev/2026-April/010020.html

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2+
<HTML>
3+
<HEAD>
4+
<TITLE> [squid-dev] NO_SPECIAL_HANDLING define for HTTP methods
5+
</TITLE>
6+
<LINK REL="Index" HREF="index.html" >
7+
<LINK REL="made" HREF="mailto:squid-dev%40lists.squid-cache.org?Subject=Re%3A%20%5Bsquid-dev%5D%20NO_SPECIAL_HANDLING%20define%20for%20HTTP%20methods&In-Reply-To=%3C8e930040-e70c-4d8a-95ca-c1a29c709980%40measurement-factory.com%3E">
8+
<META NAME="robots" CONTENT="index,nofollow">
9+
<style type="text/css">
10+
pre {
11+
white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */
12+
}
13+
</style>
14+
<META http-equiv="Content-Type" content="text/html; charset=us-ascii">
15+
<LINK REL="Previous" HREF="010018.html">
16+
17+
</HEAD>
18+
<BODY BGCOLOR="#ffffff">
19+
<H1>[squid-dev] NO_SPECIAL_HANDLING define for HTTP methods</H1>
20+
<B>Alex Rousskov</B>
21+
<A HREF="mailto:squid-dev%40lists.squid-cache.org?Subject=Re%3A%20%5Bsquid-dev%5D%20NO_SPECIAL_HANDLING%20define%20for%20HTTP%20methods&In-Reply-To=%3C8e930040-e70c-4d8a-95ca-c1a29c709980%40measurement-factory.com%3E"
22+
TITLE="[squid-dev] NO_SPECIAL_HANDLING define for HTTP methods">rousskov at measurement-factory.com
23+
</A><BR>
24+
<I>Mon Apr 20 14:14:11 UTC 2026</I>
25+
<P><UL>
26+
<LI>Previous message (by thread): <A HREF="010018.html">[squid-dev] NO_SPECIAL_HANDLING define for HTTP methods
27+
</A></li>
28+
29+
<LI> <B>Messages sorted by:</B>
30+
<a href="date.html#10020">[ date ]</a>
31+
<a href="thread.html#10020">[ thread ]</a>
32+
<a href="subject.html#10020">[ subject ]</a>
33+
<a href="author.html#10020">[ author ]</a>
34+
</LI>
35+
</UL>
36+
<HR>
37+
<!--beginarticle-->
38+
<PRE>On 2026-04-19 17:35, Francesco Chemolli wrote:
39+
40+
&gt;<i> I stumbled upon src/http/MethodType.h and the fact that a lot of
41+
</I>&gt;<i> methods are hidden behind a NO_SPECIAL_HANDLING preprocessor macro.
42+
</I>&gt;<i> Does anyone have any memory about what the purpose of that exclusion?
43+
</I>
44+
I can only speculate why those &quot;hidden&quot; methods were added, and I do not
45+
want to do that.
46+
47+
We should remove those &quot;hidden&quot; methods (and the macro) -- that enum is
48+
not the right place to enumerate the names of various methods (and their
49+
specs) that Squid never uses by name because Squid does not handle them
50+
&quot;specially&quot;.
51+
52+
Alex.
53+
54+
</PRE>
55+
56+
57+
<!--endarticle-->
58+
<HR>
59+
<P><UL>
60+
<!--threads-->
61+
<LI>Previous message (by thread): <A HREF="010018.html">[squid-dev] NO_SPECIAL_HANDLING define for HTTP methods
62+
</A></li>
63+
64+
<LI> <B>Messages sorted by:</B>
65+
<a href="date.html#10020">[ date ]</a>
66+
<a href="thread.html#10020">[ thread ]</a>
67+
<a href="subject.html#10020">[ subject ]</a>
68+
<a href="author.html#10020">[ author ]</a>
69+
</LI>
70+
</UL>
71+
72+
<hr>
73+
<a href="https://lists.squid-cache.org/listinfo/squid-dev">More information about the squid-dev
74+
mailing list</a><br>
75+
</body></html>

0 commit comments

Comments
 (0)