Commit Graph
1971 Commits
Author SHA1 Message Date
Harald Hoyer 2826d14091 log_error() if inotify_add_watch() fails
[zj: Reworded message s/to watch/to add watch on/ to make it clear
     that it was the watch init action that failed, and not the
     "process of watching". I think this way it'll be clearer to
     people who don't know what inotify does.]
2013-02-13 10:04:02 -05:00
Zbigniew Jędrzejewski-Szmek 5f9cfd4c38 man: rename systemd.conf to systemd-system.conf
Alias as systemd-user.conf is also provided. This should help
users running systemd in session mode.

https://bugzilla.redhat.com/show_bug.cgi?id=690868
2013-02-13 09:48:32 -05:00
Michael Olbrich 1c00832624 ratelimit: fix off-by-one
The current code might make sense during startup for service restart
limiting:
With burst=1 after starting num is 1, so the next ('first') restart is
still accepted ( 1 <= 1). However, once interval has expired, num is 1
after the first restart, so the second restart is also accepted.

This change is also useful in combination with watchdogs:
With burst=1 and a very large interval the system can be restarted on
the first failure.
2013-02-13 08:45:13 -05:00
Colin Walters b0ee8068da util: *DO NOT* loop for EINTR handling with close_nointr()
See the linked references for why we should not do this.
2013-02-13 04:56:28 +01:00
Thomas Hindoe Paaboel Andersen b43d1d01ea util: introduce strcaseeq/strncaseeq 2013-02-13 00:56:13 +01:00
Thomas Hindoe Paaboel Andersen 641906e936 use strneq instead of strncmp 2013-02-13 00:56:13 +01:00
Lennart Poettering 726c6b6b3d efi: add missing #include 2013-02-13 00:18:29 +01:00
Lennart Poettering 9cde64ff26 efi: various cleanups 2013-02-13 00:12:58 +01:00
Aleksander Morgado a96215285a missing: define MS_REC and MS_SHARED if not defined already 2013-02-13 00:12:58 +01:00
Lennart Poettering fabe5c0e5f binfmt,tmpfiles,modules-load,sysctl: rework the various early-boot services that work on .d/ directories
This unifies much of the logic behind them:

- All four will now ofllow the rule that the earlier file and earlier
  assignment in the .d/ directories wins. Before, sysctl was the only
  outlier, where the later setting always won.

- All four now support getopt() and --help on the command line.

- All four can now handle specification of configuration file names on
  the command line to apply. The tools will automatically find them, and
  apply them. Previously only tmpfiles could do that. This is useful for
  %post scripts in RPMs and suchlike.

- This fixes various error path issues in conf_files_list()
2013-02-11 23:54:30 +01:00
Lennart Poettering 853b8397ac core: properly validate environment data from Environment= lines in unit files 2013-02-11 23:54:30 +01:00
Lennart Poettering 123b964a53 manager: validate environment parameters for SetEnvironment(), UnsetEnvironment() bus calls 2013-02-11 23:54:30 +01:00
Kay Sievers 7b4d7cc082 bootctl: add boot loader and firmware interface tool 2013-02-11 19:35:52 +01:00
Lennart Poettering ff47c895c8 efi: fix returned length of efi_get_variable() 2013-02-11 06:21:20 +01:00
Lennart Poettering dfbacb6fe5 util: rework load_env_file()
Inner library calls should not invoke log_oom(), that's something for
main programs, not library calls.

Don't read through uninitialized memory if a file ends in a continuation
line.

Add comments for the non-obvious bits.

Don't choke on comment lines that are continuation lines.

Simplify some things.
2013-02-11 05:36:54 +01:00
Lennart Poettering 91a6489d99 path-util: fix memory leak 2013-02-11 05:10:23 +01:00
Lennart Poettering f74e605fc0 util: introduce FOREACH_LINE for iterating through files 2013-02-11 05:09:29 +01:00
Lennart Poettering 4d1a690438 env: considerably beef up environment cleaning logic
Now, actually check if the environment variable names and values used
are valid, before accepting them. With this in place are at some places
more rigid than POSIX, and less rigid at others. For example, this code
allows lower-case environment variables (which POSIX suggests not to
use), but it will not allow non-UTF8 variable values.

All in all this should be a good middle ground of what to allow and what
not to allow as environment variables.

(This also splits out all environment related calls into env-util.[ch])
2013-02-11 03:54:50 +01:00
Kay Sievers e02caf30ac shared: conf-files - use root parameter and convert to auto-cleanup 2013-02-08 11:52:10 +01:00
Kay Sievers 7850b3b837 shared: conf-files - add root parameter 2013-02-08 10:23:04 +01:00
Mirco Tischler a4b88c1ecb logs-show: show messages for all unit types in systemctl status
I can't find a reason why we shouldn't try to output messages for other
unit types than .service, .socket, .mount and .swap as well. It's probably
a leftover from before we started logging UNIT= from inside PID 1.
2013-02-07 01:02:34 -05:00
Mirco Tischler f904546894 journal: log user units for coredumps and show them in systemctl status 2013-02-07 01:02:34 -05:00
Zbigniew Jędrzejewski-Szmek 7ad94c716d systemd: raise level of message about lookup paths
This can be pretty important for the user, and is not trivial
to figure out in all cases.

Also show failing path in error messages.
2013-02-06 23:16:17 -05:00
Zbigniew Jędrzejewski-Szmek 0783951b93 shared: remove now unused function 2013-02-06 23:16:17 -05:00
Zbigniew Jędrzejewski-Szmek 874310b7b6 systemd: do not remove empty paths from unit lookup path
The ability to start a new unit with 'systemctl start ...' should not
depend on whether there are other units in the directory. Previously,
an additional 'systemctl daemon-reload' would be necessary to tell
systemd to update the list of unit lookup paths.
2013-02-06 23:16:16 -05:00
Thomas Hindoe Paaboel Andersen 7c2d80944a strv: add strv_print
Clearer, and spares the temp variable.
2013-02-07 00:38:09 +01:00
Zbigniew Jędrzejewski-Szmek 3f0b2f0f45 install: allow %u an and %U specifiers in WantedBy/RequiredBy/Alias 2013-01-29 19:01:41 -05:00
Zbigniew Jędrzejewski-Szmek 7584d236ea install: allow specifiers in WantedBy/RequiredBy/Alias
This allows one templated unit to refer to another templated unit
at installation time.

Examples:

> grep WantedBy ~/.config/systemd/user/mpop@.timer
WantedBy=services@%i.target

> srv disable mpop@iit.timer
rm '/home/alxchk/.config/systemd/user/services@iit.target.wants/mpop@iit.timer'
> srv enable mpop@iit.timer
ln -s '/home/alxchk/.config/systemd/user/mpop@.timer' '/home/alxchk/.config/systemd/user/services@iit.target.wants/mpop@iit.timer'

Based-on-patch-by: Oleksii Shevchuk <alxchk@gmail.com>
2013-01-29 19:01:41 -05:00
Zbigniew Jędrzejewski-Szmek d848b9cbfa Move generic specifier functions to shared
No functional change. This makes it possible to use them in install.c.
2013-01-29 19:01:41 -05:00
Zbigniew Jędrzejewski-Szmek d9e5e694ea install: automatic cleanup using local cleanup functions 2013-01-29 19:01:41 -05:00
Zbigniew Jędrzejewski-Szmek ea55addcb7 install: use automatic cleanup in find_symlinks_fd() 2013-01-29 19:01:41 -05:00
Zbigniew Jędrzejewski-Szmek e3ded78be7 shared: introduce _cleanup_set_free_free_ 2013-01-29 19:01:41 -05:00
Zbigniew Jędrzejewski-Szmek e985665d2d Add _cleanup_pclose_ and fix mismatching pipe close opened by popen()
Based-on-patch-by: Thomas Jarosch <thomas.jarosch@intra2net.com>

cppcheck reported:
[src/bootchart/svg.c:791]: (error) Mismatching allocation and deallocation: f
2013-01-25 10:38:42 -05:00
Kay Sievers e9cea16db6 efi: fix Usec vs. USec 2013-01-24 10:33:52 +01:00
Kay Sievers 5dbe9f5398 efi: read microseconds from boot loader info instead of "ticks" magic 2013-01-23 02:16:11 +01:00
Lennart Poettering f4ce2b3e5c efi: add efi boot generator that automatically mounts the ESP to /boot 2013-01-21 01:04:16 +01:00
Lennart Poettering 34e5a31ec5 util: move is_efiboot() to efivars.c 2013-01-21 01:04:16 +01:00
Lennart Poettering 2e3d069236 core: if the bootloader supports it, determine firmware and boot loader delay
This allows us to print simple performance data of all parts of the boot now:

- firmware
- boot loader
- kernel
- initrd
- userspace

This only works for bootloaders which support passing TSC data via EFI
variables. As of now that's only gummiboot.
2013-01-19 04:22:09 +01:00
Lennart Poettering 71645acac2 unit: optionally allow making cgroup attribute changes persistent 2013-01-19 01:02:30 +01:00
Lennart Poettering e884315e3d cgroup: additional validity checks for cgroup attribute names 2013-01-19 01:02:30 +01:00
Zbigniew Jędrzejewski-Szmek 96cde13ace core/cgroup-util: simplify functions and add tests 2013-01-18 11:14:00 -05:00
Zbigniew Jędrzejewski-Szmek 3f98659cce core/group-util: merge two functions 2013-01-18 11:14:00 -05:00
Mirco Tischler 1a6c43e946 logs-show: add show_journal_by_user_unit
Print the journal for a user session unit. For now this filters by
_SYSTEMD_USER_UNIT and USER_UNIT and additionally _UID.
2013-01-18 11:14:00 -05:00
Mirco Tischler ef1673d169 journal: log _SYSTEMD_USER_UNIT for user session units 2013-01-18 11:14:00 -05:00
Zbigniew Jędrzejewski-Szmek b989350563 util: modernization and test for load_env_file 2013-01-18 11:06:53 -05:00
Michal Vyskocil 565d91fdf1 util: continuation support for load_env_file
Variable definitions can be written on more than one line - if each ends
with a backslash, then is concatenated with a previous one. Only
backslash and unix end of line (\n) are treated as a continuation.

Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=58083

[zj: squashed two patches together; cleaned up grammar; removed
     comment about ignoring trailing backslash -- it is not ignored.]

Document continuation support in systemd.exec
2013-01-18 11:06:15 -05:00
Zbigniew Jędrzejewski-Szmek e429981ba4 share/log: skip file/line/func info if empty
The new microhttpd logger doesn't know this information. It is
better to log nothing than fake values.
2013-01-18 01:15:54 -05:00
Zbigniew Jędrzejewski-Szmek 41a79f1062 share/log: unify two code paths
Explicit zeroing is replaced with initialization to {0}.

No functional change.
2013-01-18 01:15:54 -05:00
Lennart Poettering d2a3097582 systemctl: add new "get-cgroup-attr" to query current cgroup attribute value
Also adds a pair of bus calls for this to the daemon.
2013-01-18 01:44:41 +01:00
Lennart Poettering 82dde599ed strv: make strv_extend() smarter 2013-01-18 00:47:19 +01:00