Re: Possible incompatible change with initgroups(3)?
- In reply to: Cy Schubert : "Re: Possible incompatible change with initgroups(3)?"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 20 Sep 2025 11:02:17 UTC
On 9/20/25 12:34, Cy Schubert wrote:
> On September 19, 2025 4:13:57 p.m. PDT, Darrin Smith <beldin@worldsmith.org> wrote:
>> On Sat, 20 Sep 2025 08:02:48 +0900 (JST)
>> Yasuhiro Kimura <yasu@FreeBSD.org> wrote:
>>
>>> Today I updated my 16.0-CURRENT amd64 system from
>>> main-n280279-b0e7b55a0e90 to main-n280498-b3468202994f and noticed
>>> Postfix emits such error messages as below.
>>>
>>> ----------------------------------------------------------------------
>>> Sep 20 03:00:11 rolling-vm-freebsd1 postfix/qmgr[2634]: fatal:
>>> initgroups: Socket operation on non-socket Sep 20 03:00:11
>>> rolling-vm-freebsd1 postfix/pickup[2635]: fatal: initgroups: Socket
>>> operation on non-socket Sep 20 03:01:00 rolling-vm-freebsd1
>>> postfix/showq[66274]: fatal: initgroups: Socket operation on
>>> non-socket
>>> ----------------------------------------------------------------------
>>>
>>> So I rebuilt, reinstalled and restared Postfix. Then error message
>>> disappeared.
>>>
>>> I checked commit log between b0e7b55a0e90 and b3468202994f, and found
>>> following one.
>>>
>>> ----------------------------------------------------------------------
>>> commit 0b018cfd81d8
>>> Author: Olivier Certner <olce@FreeBSD.org>
>>> AuthorDate: Tue Sep 16 17:52:20 2025 +0200
>>> Commit: Olivier Certner <olce@FreeBSD.org>
>>> CommitDate: Wed Sep 17 14:16:06 2025 +0200
>>>
>>> initgroups(3): Fix return value on allocation failure
>>>
>>> We must not return ENOMEM, but rather -1 with 'errno' set to
>>> ENOMEM, as described in the manual page and as other implementations
>>> are doing. A malloc() failure actually already sets ENOMEM for us.
>>> Add comments indicating which function set 'errno' each time we
>>> return.
>>> While here, improve style and remove useless headers.
>>>
>>> Reviewed by: kib, emaste
>>> Fixes: 54404cfb13d4 ("In preparation for raising NGROUPS
>>> and NGROUPS_MAX, ...") MFC after: 5 days
>>> Sponsored by: The FreeBSD Foundation
>>> Differential Revision: https://reviews.freebsd.org/D52580
>>> ----------------------------------------------------------------------
>>>
>>> According to commit message, it is likely that the commit introduces
>>> some incompatibility with initgroups(3) and that it causes error
>>> messages of Postfix. And if it is correct, then __FreeBSD_version
>>> should be bumped to force packages that use initgroups(3) to be
>>> rebuilt.
>>>
>>> ---
>>> Yasuhiro Kimura
>>>
>>
>> I can confirm this issue. I've had to recompile audio/musicpd
>> and sysutils/bareos23-client to resolve it. (Also getting
>> the same Socket operation on non-socket in each case).
>>
>
> I can confirm as well with postfix, the krb5 port, nut, openldap26-server, dovecot, and others that I cannot recall ATM.
>
>
Just for the record, lightdm is also affected by this very issue with
the same symptoms.
--
Guido Falsi <mad@madpilot.net>