[Bug libc/28350] ping receives SIGABRT on lib32-qemux86-64 caused by recvmsg()
cvs-commit at gcc dot gnu.org
sourceware-bugzilla@sourceware.org
Wed Jan 12 13:30:40 GMT 2022
https://sourceware.org/bugzilla/show_bug.cgi?id=28350
--- Comment #3 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Adhemerval Zanella
<azanella@sourceware.org>:
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=21e0f45c7d73df6fe30c77ffcc9f81410e2ee369
commit 21e0f45c7d73df6fe30c77ffcc9f81410e2ee369
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Mon Sep 27 16:07:08 2021 -0300
linux: Fix ancillary 64-bit time timestamp conversion (BZ #28349, BZ
#28350)
The __convert_scm_timestamps() only updates the control message last
pointer for SOL_SOCKET type, so if the message control buffer contains
multiple ancillary message types the converted timestamp one might
overwrite a valid message.
The test check if the extra ancillary space is correctly handled
by recvmsg/recvmmsg, where if there is no extra space for the 64-bit
time_t converted message the control buffer should be marked with
MSG_TRUNC. It also check if recvmsg/recvmmsg handle correctly multiple
ancillary data.
Checked on x86_64-linux and on i686-linux-gnu on both 5.11 and
4.15 kernel.
Co-authored-by: Fabian Vogt <fvogt@suse.de>
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Glibc-bugs
mailing list