Skip to content

Changes

Started by upstream project gerrit-libosmocore #2306
Started 6 hr 45 min ago
Queued 7.7 sec
Took 3 min 0 sec on built-in

Summary

  1. osmo_io: Fix misaligment of iofd->cmsg used as struct cmsghdr (details)
Commit ff8cb3f3b34b299b203970ffdae29f3c9f1e927f by Pau Espin Pedrol
osmo_io: Fix misaligment of iofd->cmsg used as struct cmsghdr

Fixes following ASAN runtime error:
"""
src/stream.c:398:47: runtime error: member access within misaligned address 0x516000012b81 for type 'struct cmsghdr', which requires 8 byte alignment
0x516000012b81: note: pointer points here
51 00 00  00 30 00 00 00 00 00 00  00 84 00 00 00 01 00 00  00 00 00 00 00 00 00 00  00 00 00 00 03
              ^
"""

Current GCC documentation [1] states that __attribute__ ((__aligned__
(alignment))) is the older sytnax. The newer _Alignas mimics the
standarized alignas() in C23. Since we build with CLAGS=-std=gnu11 we
are fine using _Alignas, which was introduced in C11.

[1] https://www.gnu.org/software/c-intro-and-ref/manual/html_node/Type-Alignment.html

Related: OS#6905
Change-Id: Ia80dfc4dbffe85514b18dcf8d36b85bfafd76d64
The file was modifiedsrc/core/osmo_io_internal.h