Go to file
Zbigniew Jędrzejewski-Szmek fc5688375c meson: enable -Warray-bounds and -fstrict-flex-arrays
-fstrict-flex-arrays means that the compiler doesn't have to assume that any
trailing array is a flex array. I.e. unless the array is declared without a
specified size, only indices in the declared range are valid.

-Warray-bounds turns on the warnings about out-of-bounds array accesses.
-Warray-bounds=2 does some more warnings, with higher false positive rate. But
it doesn't seem to yield any false positives in our codebase, so enable it.

clang supports -Warray-bounds, but not -Warray-bounds=2.
gcc supports both.
gcc-13 supports -fstrict-flex-arrays.

See https://people.kernel.org/kees/bounded-flexible-arrays-in-c for a long
discussion of use in the kernel.
2023-02-06 12:09:55 +01:00
.clusterfuzzlite ci: unpin CFLite 2022-04-26 09:13:57 +00:00
.github ci: Fix Development Freeze Automation 2023-02-03 14:03:39 +00:00
.semaphore semaphore: remove the Semaphore repositories recursively 2022-11-08 01:11:44 +09:00
catalog meson: Install all catalogs 2023-01-27 17:47:09 +01:00
coccinelle coccinelle: skip the empty-to-null transformation on the macro itself 2023-01-25 11:35:06 +01:00
docs docs: tweak rsync flags for moving existing home dir to systemd-homed 2023-02-01 20:47:56 +00:00
factory meson: also allow setting GIT_VERSION via templates 2022-04-05 22:18:31 +02:00
hwdb.d Add hwdb sensor entry for Lenovo IdeaPad Duet 3 10IGL5 (82AT). 2023-02-06 11:54:33 +09:00
LICENSES network: change license of examples to MIT-0 2022-10-26 08:39:34 +02:00
man man: correct path for systemd-pcrphase 2023-02-03 12:51:57 +09:00
mkosi.conf.d mkosi: Drop epel-testing repository from centos config 2023-01-29 11:55:57 +01:00
modprobe.d meson: install the right README file in modprobe.d 2021-07-07 14:52:05 +02:00
network meson: Install missing network file 2023-01-27 17:50:27 +01:00
po po: Translated using Weblate (Portuguese) 2022-12-12 13:26:55 +09:00
presets journal: give the ability to enable/disable systemd-journald-audit.socket 2023-01-11 17:18:57 +01:00
rules.d meson: Install missing udev rule 2023-01-27 18:23:02 +01:00
shell-completion meson: Install missing bash-completions 2023-01-27 17:56:12 +01:00
src shared/json: avoid use of fake flex array 2023-02-06 12:09:55 +01:00
sysctl.d tree-wide: link to docs.kernel.org for kernel documentation 2022-07-04 19:56:53 +02:00
sysusers.d sysusers: insist that root group is 0 2023-02-01 00:02:09 +00:00
test Merge pull request #26269 from keszybz/sysusers-empty-etc-and-improved-messages 2023-02-01 23:14:59 +00:00
tmpfiles.d tmpfiles: automatically create /etc/credstore/ and friends 2023-01-27 10:03:38 +01:00
tools oss-fuzz: include generated corpora in the final zip file 2023-01-07 17:44:23 +01:00
units core: split system/user job timeouts and make them configurable 2023-02-01 11:52:29 +00:00
xorg xorg/50-systemd-user: add a full license header 2021-10-01 14:45:00 +02:00
.clang-format clang-format: Adjust style of pointers 2022-05-30 04:00:54 +09:00
.ctags editors: Prevent ctags from following symlinks 2019-02-15 11:01:20 -08:00
.dir-locals.el scripts: use 4 space indentation 2019-04-12 08:30:31 +02:00
.editorconfig docs: configure editorconfig for css and html 2022-05-17 21:13:17 +02:00
.gitattributes gitattributes: introduce and use "generated" attribute 2021-10-18 09:42:55 +02:00
.gitignore git: Ignore mkosi secure boot keys 2023-02-01 16:52:28 +01:00
.mailmap mailmap: two more names 2021-03-30 13:17:58 +02:00
.packit.yml packit: drop/replace deprecated directives 2022-12-15 21:48:49 +09:00
.vimrc scripts: use 4 space indentation 2019-04-12 08:30:31 +02:00
.ycm_extra_conf.py ycm: add doc string for all the functions in configuration file 2017-11-29 13:21:49 -07:00
configure tools: shellcheck-ify tool scripts 2021-09-30 12:27:06 +02:00
LICENSE.GPL2 relicense to LGPLv2.1 (with exceptions) 2012-04-12 00:24:39 +02:00
LICENSE.LGPL2.1 licence: remove references to old FSF address 2012-12-17 11:41:31 +01:00
Makefile tree-wide: add spdx header on all scripts and helpers 2021-01-28 09:55:35 +01:00
meson.build meson: enable -Warray-bounds and -fstrict-flex-arrays 2023-02-06 12:09:55 +01:00
meson_options.txt core: split system/user job timeouts and make them configurable 2023-02-01 11:52:29 +00:00
mkosi.build mkosi: Drop focal workaround in build script 2023-01-29 17:05:23 +01:00
mkosi.kernel.config mkosi: Enable CONFIG_ZBOOT 2022-12-13 21:27:15 +01:00
mkosi.postinst mkosi: drop spaces after shell redirection operator 2022-11-14 11:59:30 +01:00
mkosi.prepare mkosi: Add back CentOS Stream 8 to CI 2023-01-29 17:05:23 +01:00
NEWS NEWS: adjust commas, avoid double negative 2023-02-06 09:07:42 +01:00
README ci: install pefile 2022-12-07 15:53:47 +01:00
README.md README.md: add a missing line break 2022-10-19 11:17:33 +02:00
TODO update TODO 2023-01-26 11:51:50 +01:00

Systemd

System and Service Manager

Semaphore CI 2.0 Build Status
Coverity Scan Status
OSS-Fuzz Status
CIFuzz
CII Best Practices
CentOS CI - CentOS 8
CentOS CI - Arch
CentOS CI - Arch (sanitizers)
CentOS CI - Rawhide (SELinux)
Fossies codespell report
Coverage Status
Packaging status
OpenSSF Scorecard

Details

Most documentation is available on systemd's web site.

Assorted, older, general information about systemd can be found in the systemd Wiki.

Information about build requirements is provided in the README file.

Consult our NEWS file for information about what's new in the most recent systemd versions.

Please see the Code Map for information about this repository's layout and content.

Please see the Hacking guide for information on how to hack on systemd and test your modifications.

Please see our Contribution Guidelines for more information about filing GitHub Issues and posting GitHub Pull Requests.

When preparing patches for systemd, please follow our Coding Style Guidelines.

If you are looking for support, please contact our mailing list or join our IRC channel.

Stable branches with backported patches are available in the stable repo.