Re: pgcrypto: remove useless px_memset() and BF_ASM
Daniel Gustafsson <daniel@yesql.se>
From: Daniel Gustafsson <daniel@yesql.se>
To: Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
Cc: pgsql-hackers@lists.postgresql.org
Date: 2026-04-09T19:07:09Z
Lists: pgsql-hackers
> On 9 Apr 2026, at 13:51, Dagfinn Ilmari Mannsåker <ilmari@ilmari.org> wrote: > In the thread about centralised architecture detection, I noticed that > the BF_ASM macro in crypt-blowfish.c has never been defined to anything > but 0, and the _BF_body_r() function it would call has never existed, so > that can be got rid of. Agreed. I didn't do enough archaeology to figure out what upstream has/had or why it was removed, but it's been dead for 25 odd years so it's about time to remove. > While investigating at that, I also noticed that px_memset(), which has > the comment /* memset that must not be optimized away */, is only ever > called with zero for the value, which could be better written with > explicit_bzero() now that we have that. One could imagine various tricks for rewriting px_memset to explicit_bzero in order to reduce the churn, but since this code is very rarely backpatched into it's not a big problem IMHO. I'll have another look with fresh eyes once back in the office. -- Daniel Gustafsson