1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2024-12-22 13:33:56 +03:00
Backports of patch from systemd git to stable distributions
Go to file
Siddhesh Poyarekar 08cf315a04 Use dummy allocator to make accesses defined as per standard
systemd uses malloc_usable_size() everywhere to use memory blocks
obtained through malloc, but that is abuse since the
malloc_usable_size() interface isn't meant for this kind of use, it is
for diagnostics only.  This is also why systemd behaviour is flaky when
built with _FORTIFY_SOURCE.

One way to make this more standard (and hence safer) is to, at every
malloc_usable_size() call, also 'reallocate' the block so that the
compiler can see the larger size.  This is done through a dummy
reallocator whose only purpose is to tell the compiler about the larger
usable size, it doesn't do any actual reallocation.

Florian Weimer pointed out that this doesn't solve the problem of an
allocator potentially growing usable size at will, which will break the
implicit assumption in systemd use that the value returned remains
constant as long as the object is valid.  The safest way to fix that is
for systemd to step away from using malloc_usable_size() like this.

Resolves #22801.

(cherry picked from commit 7929e180aa)
(cherry picked from commit 34b9eddfc1)
(cherry picked from commit 70653ebeb6)
2023-01-28 00:50:04 +00:00
.github mkosi: Remove Arch nspawn workaround 2022-03-05 21:03:32 +00:00
.lgtm/cpp-queries ci: pack-ify our custom CodeQL queries and enable them in Actions 2021-12-07 14:57:09 +01:00
.semaphore semaphoreci: move runner from Bionic to Focal 2022-04-29 00:13:13 +01:00
catalog meson: do not use split() in file lists 2022-03-05 21:03:32 +00:00
coccinelle Change all fixed-path bash shebangs to /u/b/env bash outside test/ 2021-12-12 21:13:50 +01:00
docs docs: swap Name and Partition Type UUID in header 2022-03-05 21:03:32 +00:00
factory/etc pam: fix typo try_authtok → use_authtok 2021-05-12 12:14:17 +02:00
hwdb.d hwdb: analyzers: remove generic "STM Device in DFU Mode" 2022-07-13 13:15:56 +02:00
LICENSES licensing: add a license file for the fonts we carry 2021-10-18 09:43:18 +02:00
man Revert "cryptsetup: support keyfile-timeout for using a device as the key file" 2022-12-22 17:32:00 +01:00
mkosi.default.d mkosi: drop libiptc from build for Fedora 2022-05-26 12:36:33 +01:00
modprobe.d meson: install the right README file in modprobe.d 2021-07-07 14:52:05 +02:00
network network: dhcp-pd: add 6rd support 2021-12-07 20:33:16 +09:00
po Update LINGUAS (#21499) 2021-11-25 20:24:00 +09:00
presets units: enable systemd-network-generator by default 2021-12-16 09:49:39 +01:00
rules.d udev: always create device symlinks for USB disks 2022-11-04 13:09:21 +01:00
shell-completion bash-completion: add systemd-dissect support 2022-11-04 13:09:21 +01:00
src Use dummy allocator to make accesses defined as per standard 2023-01-28 00:50:04 +00:00
sysctl.d build: preserve correct mode when generating files via jinja2 2021-11-08 12:06:48 +00:00
sysusers.d sysusers: avoid creating spurious "nobody" group 2021-11-30 16:16:25 +01:00
test network/bridge: fix UseBPDU= and AllowPortToBeRoot= 2022-11-04 13:09:21 +01:00
tmpfiles.d tmpfiles: split out config for systemd-resolve 2021-11-16 16:56:08 +01:00
tools docs: swap Name and Partition Type UUID in header 2022-03-05 21:03:32 +00:00
units units: prolong the stop timeout for homed 2022-11-04 13:02:21 +01:00
xorg xorg/50-systemd-user: add a full license header 2021-10-01 14:45:00 +02:00
.clang-format clang-format: we actually typically use 16ch continuation indentation 2022-03-05 21:03:32 +00: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 editorconfig: set maximum line length to 109 for man/*.xml files 2021-09-30 13:45:34 +02:00
.gitattributes gitattributes: introduce and use "generated" attribute 2021-10-18 09:42:55 +02:00
.gitignore emacs: ignore .dir-locals-2.el (personal customization) versioning 2022-07-13 13:30:44 +02:00
.lgtm.yml ci: add a missing SPDX header 2021-12-07 14:15:04 +01:00
.mailmap mailmap: two more names 2021-03-30 13:17:58 +02:00
.packit.yml packit: drop bfq patch 2022-04-02 01:56:36 +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_options.txt boot, meson: allow statically linked build 2021-12-14 09:58:27 +09:00
meson.build meson: always use libatomic if found 2022-11-04 13:09:21 +01:00
mkosi.build ci: check for failed services after boot 2021-12-10 10:25:43 +01:00
mkosi.postinst ci: check for failed services after boot 2021-12-10 10:25:43 +01:00
NEWS NEWS: adjust links to moved pages 2022-01-12 22:10:30 +01:00
README meson: Drop required libfdisk version to 2.32 2022-03-05 21:03:32 +00:00
README.md Fix loading of graphs 2021-12-14 15:27:25 +09:00
TODO docs: use https:// for fd.o links 2022-01-12 22:10:51 +01:00

Systemd

System and Service Manager

Count of open issues over time Count of open pull requests over time Semaphore CI 2.0 Build Status
Coverity Scan Status
OSS-Fuzz Status
CIFuzz
CII Best Practices
Language Grade: C/C++
CentOS CI - CentOS 8
CentOS CI - Arch
CentOS CI - Arch (sanitizers)
Fossies codespell report
Coverage Status
Packaging status

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.