From: Patrick Steinhardt <ps@pks.im>
To: Ramsay Jones <ramsay@ramsayjones.plus.com>
Cc: Junio C Hamano <gitster@pobox.com>,
"brian m. carlson" <sandals@crustytoothpaste.net>,
GIT Mailing-list <git@vger.kernel.org>,
Adam Dinwoodie <git@dinwoodie.org>
Subject: Re: [PATCH 12/12] config.mak.uname: add a note about CSPRNG_METHOD for Linux
Date: Thu, 20 Mar 2025 06:20:34 +0100 [thread overview]
Message-ID: <Z9ulomq1tDrZRsmL@pks.im> (raw)
In-Reply-To: <74b2838e-1d7b-4ee0-a4a7-e3d21f4e6597@ramsayjones.plus.com>
On Thu, Mar 20, 2025 at 01:28:31AM +0000, Ramsay Jones wrote:
>
>
> On 19/03/2025 13:30, Patrick Steinhardt wrote:
> > On Sun, Mar 16, 2025 at 01:41:40PM -0700, Junio C Hamano wrote:
> >> "brian m. carlson" <sandals@crustytoothpaste.net> writes:
> >>
> >>> When arc4random was added to glibc, the Linux kernel CSPRNG maintainer
> >>> argued that it was not a secure approach (I disagree), and convinced the
> >>> glibc maintainers to just make it a wrapper around the Linux kernel
> >>> CSPRNG, which it now is. So there's no actual benefit to calling
> >>> arc4random versus getrandom, and since it's newer and less commonly
> >>> available than getrandom, as well as slightly slower (because of an
> >>> extra function call), getrandom should be preferred.
> >>
> >> This
> >>
> >> https://www.phoronix.com/news/GNU-Glibc-arc4random-Functions
> >>
> >> was the first hit of my search in the area, but I think you are
> >> referring to
> >>
> >> https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=eaad4f9
> >>
> >> that happened 5 days after the thing got in and the code there tells
> >> me that your summary of the situation is quite accurate.
> >>
> >> So I agree that dropping this patch makes sense, but do we want to
> >> do a bit more to improve the situation?
> >>
> >> Here is an attempt to improve what we have in Makefile (and possibly
> >> the Linux section in config.mak.uname, but that is improving what we
> >> do not have) to tell folks that arc4random in glibc is only for
> >> compatibility and they should pick getrandom() until the situation
> >> changes.
> >>
> >> --- >8 ---
> >> Subject: config/Makefile: a note on CSPRNG_METHOD choice for Linux
> >>
> >> arc4random() was added to glibc in July 2022, but quickly replaced
> >> by a stub implementation that wraps around getrandom(). Hence there
> >> is no actual benefit to calling arc4random() over getrandom() on
> >> glibc based systems, at least for now.
> >>
> >> To avoid enticing Linux users to choose arc4random(), leave a note
> >> that their arc4random() in glibc is not the same as what their
> >> friends use on other platforms, and guide them to use getrandom()
> >> instead in the meantime.
> >
> > Makes me wonder whether we should also change the order in which Meson
> > auto-detects functions. That is, do we want the following patch that
> > favors getrandom over arc4random?
> >
>
> That was my immediate thought also. :)
Okay. Will you pick it up in v2 of this patch series?
Thanks!
Patrick
next prev parent reply other threads:[~2025-03-20 5:20 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-15 2:49 [PATCH 12/12] config.mak.uname: add a note about CSPRNG_METHOD for Linux Ramsay Jones
2025-03-16 0:28 ` brian m. carlson
2025-03-16 20:41 ` Junio C Hamano
2025-03-16 21:57 ` Ramsay Jones
2025-03-19 13:30 ` Patrick Steinhardt
2025-03-20 1:28 ` Ramsay Jones
2025-03-20 5:20 ` Patrick Steinhardt [this message]
2025-03-20 16:41 ` Ramsay Jones
2025-03-16 21:51 ` Ramsay Jones
2025-03-16 23:52 ` brian m. carlson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Z9ulomq1tDrZRsmL@pks.im \
--to=ps@pks.im \
--cc=git@dinwoodie.org \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=ramsay@ramsayjones.plus.com \
--cc=sandals@crustytoothpaste.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.