commit | 9b1e22d8d5148c66f1bc756806b5153d0f588eee | [log] [tgz] |
---|---|---|
author | Philipp Maier <pmaier@sysmocom.de> | Mon Dec 04 12:20:17 2023 +0100 |
committer | Philipp Maier <pmaier@sysmocom.de> | Thu Jan 04 13:55:31 2024 +0100 |
tree | c4d5f50d4cc7f2685b9029a397942e260be7e7e4 | |
parent | 21b297bee9b1354b718c4701f6bebc4521742396 [diff] |
ecu: fix alignment of fr_ecu_state The member data[0] in struct osmo_ecu_state is used as an anchor to attach private structs for a concrete ECU implementation. This works by allocating more memory then struct osmo_ecu_state actually needs and then using the excess memory to store the private struct of the concrete ECU implementation. However, this poses a problem since data[0] is at the end of the struct it may land in an unaligned position. This also means that the struct we store there is also unaligned. We should fix this enclosing the public struct osmo_ecu_state into our private struct fr_ecu_state. Then we can use container_of to cast from osmo_ecu_state to fr_ecu_state and correct alignment is ensured as well. Related: OS#6286 Change-Id: I28672856e8e8f47e04ffe09ee3e07b577108cdc7
This repository contains a set of C-language libraries that form the core infrastructure of many Osmocom Open Source Mobile Communications projects.
Historically, a lot of this code was developed as part of the OpenBSC project, but which are of a more generic nature and thus useful to (at least) other programs that we develop in the sphere of Free Software / Open Source mobile communications.
There is no clear scope of it. We simply move all shared code between the various Osmocom projects in this library to avoid code duplication.
The libosmocore.git repository build multiple libraries:
The official homepage of the project is https://osmocom.org/projects/libosmocore/wiki/Libosmocore
You can clone from the official libosmocore.git repository using
git clone https://gitea.osmocom.org/osmocom/libosmocore
There is a web interface at https://gitea.osmocom.org/osmocom/libosmocore
Doxygen-generated API documentation is generated during the build process, but also available online for each of the sub-libraries at https://ftp.osmocom.org/api/latest/libosmocore/
Discussions related to libosmocore are happening on the openbsc@lists.osmocom.org mailing list, please see https://lists.osmocom.org/mailman/listinfo/openbsc for subscription options and the list archive.
Please observe the Osmocom Mailing List Rules when posting.
Our coding standards are described at https://osmocom.org/projects/cellular-infrastructure/wiki/Coding_standards
We us a gerrit based patch submission/review process for managing contributions. Please see https://osmocom.org/projects/cellular-infrastructure/wiki/Gerrit for more details
The current patch queue for libosmocore can be seen at https://gerrit.osmocom.org/#/q/project:libosmocore+status:open