From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.haj.ipfire.org (localhost [IPv6:::1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4gLNLL73CJz2xxR for ; Wed, 20 May 2026 20:24:26 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [IPv6:2001:678:b28::25]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519) (Client CN "mail01.haj.ipfire.org", Issuer "R12" (not verified)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4gLNLH4sKZz2xM3 for ; Wed, 20 May 2026 20:24:23 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4gLNLG6RWmzV2; Wed, 20 May 2026 20:24:22 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1779308663; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=evdmKe4c4fBBjaa5SuboA5dPu94B2Ot5IZBou2wbS0Y=; b=n+Z3KL2wjfYyy5FQwccrb0NNJTvATRW7hAPrWtbWmm5D/r/SnLowhIIijQFZUqi1Wvd3QB /QdhKWodm+4qCVAw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1779308663; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=evdmKe4c4fBBjaa5SuboA5dPu94B2Ot5IZBou2wbS0Y=; b=a9paRyqkMSElOB4eRf+jTFUQv4vGyyWyG7UZIVVFdTOolA5OzZNK7eBe/y+I1Yi1QTzgw/ bgx3yIO9xkYZBX8Ec5jK8UIYUFa+EM7TtecqhBc91t6NZn1lgKm5PKOkWiSPGjku2LuEiV oyHOTwb4QkYd3ujn0XqLeJj+visUYVIqhOdJur5YaHmdoZLkS6u5F85w/s+S7hcTKtqjuZ lqHKnwKtWqAWHkx/NINEG/Hwxb1nCLSF1JSwLw0nLjBUPq7gmztwQGB14Ha6ylPgndk4XO e95ChgjkSBfWAWW0TdsalqJQklRnymD5mUjJljo4Jh/p01cDnl6PevXliiA/Ew== Message-ID: <11fd6a87-12df-4e8a-be58-f27b00368bec@ipfire.org> Date: Wed, 20 May 2026 22:24:18 +0200 Precedence: list List-Id: List-Subscribe: , List-Unsubscribe: , List-Post: List-Help: Sender: Mail-Followup-To: MIME-Version: 1.0 Subject: Re: Problem with update of nettle to 4.0 To: Matthias Fischer References: <6AE8ADFC-BBFE-485D-A646-7C9705C0782C@ipfire.org> <8e583f1f-c676-40bd-8ec5-971f37192d1d@ipfire.org> Content-Language: en-GB Cc: "IPFire: Development-List" From: Adolf Belka In-Reply-To: <8e583f1f-c676-40bd-8ec5-971f37192d1d@ipfire.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Matthias, On 20/05/2026 19:36, Matthias Fischer wrote: > Hi, > > On 20.05.2026 17:57, Adolf Belka wrote: >> Hi Michael, >> >> On 20/05/2026 17:32, Michael Tremer wrote: >>> Hello Adolf, >>> >>> Thanks for looking into this. >>> >>> I wasn’t quite aware how outdated we are on squid, so let’s change that. >> >> I think Matthias looked at updating squid from the 6.x to 7.x branch but felt uncomfortable with how to deal with some of the changes in that new branch. > > I'm watching - and yes, I'm feeling very uncomfortable with these v7.x > changes. ;-)) > > But I got 'squid 7.xx' running without seen problems - currently v7.5 > with Core 201. But I was in fact "very unpleased" with the various > changes which came with v7.0.1. > > A lot of features were removed - Ident protocol support, cache object > protocol support, 'cachemgr.cgi' tool, just to name a few. Because of > these changes, the ‘proxy.cgi’ file should to be revised in a few > places. And this was a job I avoided until now, I just hadn't the > nerves. I took a look at the code and wasn't sure which parts should be > removed and which parts need to stay. So I didn't touch the CGI, crossed > my fingers and started 'squid 7.5'. It works. >> Maybe we can both have a try and see what happens. Check if we can we make it work as expected. I will look back at the previous email chain on the discussion on moving to squid-7.x > > Yep. We can try this together. At the moment I'm only unsure which parts > of 'proxy.cgi' must be removed and which have to stay. The whole thing > is currently running - I use only the basic squid functions without any > authentication. With a few changes I even got 'privoxy 4.1.0' running. > > First thing I could do (e.g.) is trying to get 'squid 7.5' compiling and > running without nettle support as you wrote below. Would that help as a > first step? I think that is a good approach. You did the previous evaluation of squid.7.x so you can take this as far as you feel comfortable taking it and I can then have a look at the things you are unsure about and if there are things neither of us are sure how to approach then we ask the other devs for their help. Good luck and I will wait to hear your feedback. Regards, Adolf. > > Best > Matthias > >>> I checked the code and there are exactly two places where nettle is being used: >>> >>> * The base64 encoder/decoder >>> https://git.ipfire.org/?p=thirdparty/squid.git;a=blob;f=include/base64.h;hb=5c1d937d2068e4861f206884cebb02d2958d3563#l13 >>> >>> * Some code to compute MD5 checksums >>> https://git.ipfire.org/?p=thirdparty/squid.git;a=blob;f=include/md5.h;hb=5c1d937d2068e4861f206884cebb02d2958d3563#l13 >> >> This was the bit where the build failed as it could not find MD5_DIGEST_SIZE. It could be that the base64 encoder/decoder might have been next in line. >> >>> >>> Both have an alternative implementation, so it is absolutely safe for us to build squid with --without-nettle. That way we won’t be held back until they have agreed on a unified API. >>>> Let me know if this helps. >> >> I will try it and see. Everything before the squid build had no problems with nettle-4.0, I just need to see if there is anything still to come in the build tree. I will look at it when/if it comes. >> >> Regards, >> >> Adolf. >> >>> >>> All the best, >>> -Michael >>> >>>> On 20 May 2026, at 13:47, Adolf Belka wrote: >>>> >>>> Hi all, >>>> >>>> For information. >>>> >>>> A new nettle version has come out. Our old version was 3.10.2 and the new one is 4.0 >>>> >>>> Unfortunately nettle-4.0 has a new API/ABI and several packages that use nettle have found that it won't build for them. >>>> >>>> Many of those packages have already issued updated versions that now work with nettle-4.0 >>>> >>>> That is not the case with squid. Here we have a greater problem. >>>> >>>> Currently we are on squid-6.14 and the current release is squid-7.5. squid-6.14 fails to build with nettle-4.0 as there are changes in various variables/parameters. >>>> >>>> squid-7.5 does not yet have any fix for the nettle API/ABI changes. I did find some discussion on it in the Pull Requests section but there seems to be some disagreement between various of the squid contributors which seems to be blocking anything being accepted. It is also not clear if that pull request would fix the error that I found in my build with squid-6.14 >>>> >>>> squid has not been updated to the 7.x branch in IPFire because there were a lot of significant changes in it which would require some re-write of our web proxy code. >>>> >>>> It is probably worth noting that squid-6.14 stopped getting any security support in July 2025. >>>> >>>> There also seems to be questions about squid-8.x and if it will have even more major changes to options. >>>> >>>> squid typically is having a two year cycle on their major branch changes and so the expectation is that squid-7.x will go EOL somewhere around July 2027 with squid-8.x having beta status in Feb 2027 and stable declaration in July 2027 when 7.x is EOL'd >>>> >>>> I will try and see if any other packages we run have any linkage to nettle. >>>> >>>> Regards, >>>> >>>> Adolf. >>>> >>> >> >> > >