Improving GCC Buffer Overflow Detection for C Flexible Array Members (Oracle)

Post Syndicated from corbet original https://lwn.net/Articles/1047547/

The Oracle blog has a
lengthy article
on enhancements to GCC to help detect overflows of
flexible array members (FAMs) in C programs.

We describe here two new GNU extensions which specify size
information for FAMs. These are a new attribute,
counted_by” and a new builtin function,
__builtin_counted_by_ref“. Both extensions can be used in
GNU C applications to specify size information for FAMs, improving
the buffer overflow detection for FAMs in general.

This work has been covered on LWN as well.