Hi Henrik,
At 02.56 27/03/2007, Henrik Nordstrom wrote:
Reviewing Squid-2.HEAD changes and sorting/grouping them a bit I
stumbled over your change to add casts in various isspace() calls which
looks a bit odd.
http://www.squid-cache.org/Versions/v2/HEAD/changesets/11290.patch
- for (; i < hmsg->req_end && (isspace(hmsg->buf[i])); i++);
+ for (; i < hmsg->req_end && (isspace((int) hmsg->buf[i])); i++);
Generally this is not a safe cast. The ctype family of functions want
the same kind of "C character" as returned by getchar etc. That's an
integer carrying an unsigned char or -1.
As it's a very common coding error most C libraries accept char input to
these functions and might even produce correct results on high octets,
but not all (some may even segfault).
What was the warnings you fixed with these casts? I suspect you only
silenced a valid warning here without fixing the cause..
Exactly these:
http://www.squid-cache.org/mail-archive/squid-dev/200702/0128.html
Regards
Guido
-
========================================================
Guido Serassio
Acme Consulting S.r.l. - Microsoft Certified Partner
Via Lucia Savarino, 1 10098 - Rivoli (TO) - ITALY
Tel. : +39.011.9530135 Fax. : +39.011.9781115
Email: [EMAIL PROTECTED]
WWW: http://www.acmeconsulting.it/