HomeFreeBSD

libc: Add missing object size check to qsort_s(3)

Description

libc: Add missing object size check to qsort_s(3)

When sorting, both the C11 standard (ISO/IEC 9899:2011, K.3.6.3.2) and
the ISO/IEC JTC1 SC22 WG14 N1172 standard, does not define objects of
zero size as undefined behaviour. However Microsoft's cpp-docs does.

Add proper checks for this. Found while working on bsort(3).

Reviewed by: kib@ and emaste@
Sponsored by: NVIDIA Networking
Differential Revision: https://reviews.freebsd.org/D39687

(cherry picked from commit 27bb0d337c0d82a1a4f310315840236eb239963c)

Details

Provenance
hselaskyAuthored on Apr 19 2023, 10:22 AM
Differential Revision
D39687: libc: Add missing size check to qsort_s(3)
Parents
rG49012db42f3d: libc: Sorting is not needed when there are less than two elements
Branches
Unknown
Tags
Unknown