1
0
mirror of https://github.com/systemd/systemd.git synced 2025-01-13 17:18:18 +03:00
The systemd System and Service Manager
Go to file
Lennart Poettering 2e59b241ca core: add proper escaping to writing of drop-ins/transient unit files
This majorly refactors the transient unit file and drop-in writing
logic, so that we properly C-escape and specifier-escape (% → %%)
everything we write out, so that when we read it back again, specifiers
are parsed that aren't supposed to be parsed.

This renames unit_write_drop_in() and friends by unit_write_setting().
The name change is supposed to clarify that the functions are not only
used to write drop-in files, but also transient unit files.

The previous "mode" parameter to this function is replaced by a more
generic "flags", which knows additional flags for implicit C-style and
specifier escaping before writing things out. This can cover most
properties where either form of escaping is defined. For the cases where
this isn't sufficient, we add helpers unit_escape_setting() and
unit_concat_strv() for escaping individual strings or strvs properly.

While we are at it, we also prettify generation of transient unit files:
we try to reduce the number of section headers written out: previously
we'd write the right section header our for each setting. With this
change we do so only if the setting lives in a different section than
the one before.

(This should also be considered preparation for when we add proper APIs
to systemd to write normal, persistant unit files through the bus API)
2017-11-29 12:34:12 +01:00
.github Docs: Fix spelling and capitalization (#7408) 2017-11-21 14:37:16 +01:00
.mkosi Add SPDX license headers to various assorted files 2017-11-19 19:08:15 +01:00
catalog Add license headers and SPDX identifiers to meson.build files 2017-11-19 19:08:15 +01:00
coccinelle tree-wide: use !IN_SET(..) for a != b && a != c && … 2017-10-02 13:09:56 +02:00
docs Add license headers and SPDX identifiers to meson.build files 2017-11-19 19:08:15 +01:00
factory/etc factory: remove broken pam_limits 2014-07-30 15:21:54 +02:00
hwdb Added Logitech MX Master 2s (#7487) 2017-11-28 12:30:31 +10:00
man core: add a new sd_notify() message for removing fds from the FD store again 2017-11-27 17:04:04 +01:00
modprobe.d Add SPDX license headers to various assorted files 2017-11-19 19:08:15 +01:00
network Add license headers and SPDX identifiers to meson.build files 2017-11-19 19:08:15 +01:00
po Add license headers and SPDX identifiers to meson.build files 2017-11-19 19:08:15 +01:00
rules meson: re-attach rule-syntax-check.py test 2017-11-22 12:46:08 +01:00
shell-completion Add license headers and SPDX identifiers to meson.build files 2017-11-19 19:08:15 +01:00
src core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
sysctl.d Add license headers and SPDX identifiers to meson.build files 2017-11-19 19:08:15 +01:00
system-preset Add SPDX license headers to various assorted files 2017-11-19 19:08:15 +01:00
sysusers.d README,sysusers: complete and order list of default udev groups we need 2017-11-20 12:34:28 +01:00
test test: increase the timeout for hwdb-test 2017-11-26 15:07:53 +01:00
tmpfiles.d Add license headers and SPDX identifiers to meson.build files 2017-11-19 19:08:15 +01:00
tools test: set log_level to info in test-hwdb and check-help-* 2017-11-26 00:01:55 +09:00
units Add license headers and SPDX identifiers to meson.build files 2017-11-19 19:08:15 +01:00
xorg login: support user-bus on dbus1 2015-08-31 18:12:37 +02:00
.dir-locals.el meson: also indent scripts with 8 spaces 2017-04-25 08:49:16 -04:00
.editorconfig editorconfig: add rule for meson.build files (#6671) 2017-08-28 16:37:23 +02:00
.gitattributes git: indicate that tabs are never OK in the systemd tree 2013-10-30 02:25:38 +01:00
.gitignore gitignore: ignore output file of mkid (#7081) 2017-10-13 10:17:43 +02:00
.mailmap update .mailmap a bit more 2017-10-05 17:39:50 +02:00
.travis.yml remove gudev and gtk-doc 2015-06-03 00:22:53 +02:00
.vimrc vimrc: fix indentation logic for our docbook xml files 2016-04-29 12:23:34 +02:00
.ycm_extra_conf.py ycm: update flag blacklist 2014-06-04 15:41:10 -04:00
CODING_STYLE CODING_STYLE: document the order in which unescaping + specifier expansion should be done 2017-11-29 12:32:56 +01:00
configure build-sys: add basic support for ./configure && make && make install 2017-07-18 10:05:06 -04:00
DISTRO_PORTING DISTRO_PORTING: document that distros may/should change fallback DNS as well as fallback NTP if they wish 2017-07-24 11:49:16 +02:00
ENVIRONMENT.md documentation: document nss-systemd's internal environment variables in ENVIRONMENT.md 2017-09-22 15:24:55 +02:00
HACKING HACKING: add a short description of new unit tests 2017-11-04 21:15:57 +01: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 build-sys: Fix Makefile wrapper for install target (#6548) 2017-08-07 11:29:20 +02:00
meson_options.txt Merge pull request #7376 from keszybz/simplify-root-options 2017-11-19 19:50:03 +01:00
meson.build Merge pull request #7468 from yuwata/fix-7362 2017-11-26 12:35:07 +09:00
mkosi.build mkosi: let's switch to the unified mode for mkosi 2017-11-25 17:08:21 +01:00
mkosi.default mkosi: create .mkosi directory 2016-10-06 11:53:58 -04:00
NEWS NEWS: fix minor error (#7399) 2017-11-21 11:05:57 +09:00
README README: add requirements for IPAddress{Allow,Deny} (#7414) 2017-11-21 23:54:20 +01:00
README.md README.md: add CII Best Practices badge 2017-11-04 21:15:57 +01:00
TODO update TODO 2017-11-27 17:04:04 +01:00

systemd - System and Service Manager

Count of open issues over time Count of open pull requests over time Build Status
Coverity Scan Status
CII Best Practices

Details

General information about systemd can be found in the systemd Wiki.

Information about build requirements are provided in the README file.

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

Please see the HACKING file for information 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.