summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2013-11-20core: convert PID 1 to libsystemd-busLennart Poettering
This patch converts PID 1 to libsystemd-bus and thus drops the dependency on libdbus. The only remaining code using libdbus is a test case that validates our bus marshalling against libdbus' marshalling, and this dependency can be turned off. This patch also adds a couple of things to libsystem-bus, that are necessary to make the port work: - Synthesizing of "Disconnected" messages when bus connections are severed. - Support for attaching multiple vtables for the same interface on the same path. This patch also fixes the SetDefaultTarget() and GetDefaultTarget() bus calls which used an inappropriate signature. As a side effect we will now generate PropertiesChanged messages which carry property contents, rather than just invalidation information.
2013-11-20hashmap: be a bit more conservative with pre-allocating hash tables and itemsLennart Poettering
2013-11-20install: when determining where default.target points to, accept a file ↵Lennart Poettering
instead of a symlink, too
2013-11-20test: exit early if we would conflict with running user systemdLennart Poettering
2013-11-20bus: add sd_bus_send_to() API callLennart Poettering
2013-11-20bus: bump serial number counter when sending already sealed messagesLennart Poettering
2013-11-20bus: sd_bus_error_setxyz calls should always return the error as errno style ↵Lennart Poettering
negative int
2013-11-20libudev: always return NULL in _unref() APIsLennart Poettering
Returning anything else but NULL would suggest the caller's reference might still be valid, but it isn't, because the caller just invoked _unref() after all. This turns the return value into a typesafe shortcut that allows unreffing and resetting a reference in one line. In contrast to solutions for this which take a pointer to a pointer to accomplish the same this solution is just syntactic sugar the developer can make use of but doesn't have to, and this is particularly useful when immediately unreffing objects returned by function calls.
2013-11-20libudev: always return valid negative error codes on API functionsLennart Poettering
2013-11-20calendar: support 'yearly' and 'annually' names the same way as cronLennart Poettering
2013-11-20hwclock: modernizationsLennart Poettering
2013-11-20macro: add _unlikely_() to assert_return()Lennart Poettering
As the name indicates assert_return() is really just for assertions, i.e. where it's a programming error if the assertion does not hold. Hence it is safe to add _unlikely_() decorators for the expression to check.
2013-11-20macro: change assert_cc() so that it can appear outside of functionsLennart Poettering
2013-11-20include: make direct includion of _sd-common.h harderLennart Poettering
2013-11-20install: use const where we canLennart Poettering
2013-11-20conf-parser: don't leak section namesTom Gundersen
If we encounter an unknown section, we must free the previous section before clearing the pointer.
2013-11-20event: clear pending-state when re-arming timersDavid Herrmann
If a timer fires and is marked pending, but an application re-arms it before it is dispatched, we now clear the pending state. This fixes a bug where an application arms a timer, which fires and is marked pending. But before it is dispatched, the application loses interest in it and disables it. Now if the timer is re-armed and re-enabled later, it will be immediately dispatched as it is still marked pending. This behavior is unexpected, so avoid it by clearing pending state when re-arming timers. Note that applications have no way to clear pending state themselves, so there's no current workaround.
2013-11-20bus: fix error-path in bus_map_all_properties()David Herrmann
We shouldn't return positive integers on errors. Fix the typo by removing the negation.
2013-11-20bus/rtnl: silence clang warningsThomas Hindoe Paaboel Andersen
2013-11-19networkd: make sure Links and Networks are freedTom Gundersen
2013-11-18localed: match converted keymaps before legacyZbigniew Jędrzejewski-Szmek
Before, X11 keymap fr-pc105-oss would be converted to fr, even though fr-oss exists. Now, if /usr/lib/kbd/keymaps/xkb/<layout>[-<variant>].map[.gz] exists, <layout>[-<variant>] will be used as the console keymap, falling back to the legacy mappings otherwise. % sudo localectl set-x11-keymap pl pc105 % localectl System Locale: LANG=en_US.UTF-8 VC Keymap: pl (was pl2 before) X11 Layout: pl X11 Model: pc105 % sudo localectl set-x11-keymap fr pc105 oss % localectl System Locale: LANG=en_US.UTF-8 VC Keymap: fr-oss (was fr before) X11 Layout: fr X11 Model: pc105 X11 Variant: oss % sudo localectl set-x11-keymap fr pc105 % localectl System Locale: LANG=en_US.UTF-8 VC Keymap: fr X11 Layout: fr X11 Model: pc105 % sudo localectl set-x11-keymap gb % localectl System Locale: LANG=en_US.UTF-8 VC Keymap: gb (was uk before) X11 Layout: gb
2013-11-18localed: use _cleanup_Zbigniew Jędrzejewski-Szmek
2013-11-18Remove duplicate includesKarel Zak
2013-11-18use #pragma once instead of foo*foo define guardsShawn Landden
2013-11-18remove unused variablesThomas Hindoe Paaboel Andersen
2013-11-18bus: TIMESTAMP is optional kdbus metadata now, NAMES are always addedKay Sievers
2013-11-17core/socket: fix SO_REUSEPORTShawn Landden
2013-11-17core/socket: use _cleanup_free_Shawn Landden
2013-11-17networkd: make all calls asyncTom Gundersen
2013-11-17networkd: store netmask and mac address explicitlyTom Gundersen
2013-11-17bus: CREDS and NAMES are optional kdbus metadata nowKay Sievers
2013-11-16Fix RemainAfterExit services keeping a hold on consoleOlivier Brunel
When a service exits succesfully and has RemainAfterExit set, its hold on the console (in m->n_on_console) wasn't released since the unit state didn't change.
2013-11-15random-seed: improve debugging messages a bitZbigniew Jędrzejewski-Szmek
2013-11-15fstab-generator: use RequiresOverridable for fsck unitsZbigniew Jędrzejewski-Szmek
This allows the user to disable fsck's by masking. If fsck fails, emergency target is started, the user might mount the unit using mount and disable fsck by masking the unit. In this case, .mount will be active because the mount is detect through /proc/self/mountinfo, but systemd-fsck@.service will still be in failed mode. This results in a funny situation where $ systemctl show -p ActiveState local-fs.target yyy.mount ActiveState=active ActiveState=active $ sudo systemctl start local-fs.target [sudo] password for test: Failed to start local-fs.target: Unit systemd-fsck@xxx.service is masked.
2013-11-15core: some more _cleanup_free_Zbigniew Jędrzejewski-Szmek
2013-11-15fsck,fstab-generator: be lenient about missing fsck.<type>Zbigniew Jędrzejewski-Szmek
If fstab contains 1 for passno, treat this as an error, but only warn briefly. If fstab doesn't contain this information, don't complain at all. Patch is complicated a bit by the fact that we might have the fstype specified in fstab or on /proc/cmdline, in which case we can check if we have the appropriate fsck tool, or not specified, or specified as auto, in which case we have to look and check the type of the filesystem ourselves. It cannot be done before the device appears, so it is too early in the generator phase, and it must be done directly in fsck service.
2013-11-15fsck: modernizationZbigniew Jędrzejewski-Szmek
2013-11-14rtnl: add event loop integrationTom Gundersen
2013-11-14bus: typoTom Gundersen
Fix a couple of 'void' that should have been 'sd_bus'.
2013-11-14loopback-setup: move to rtnlTom Gundersen
This should be equivalent to the old behavior.
2013-11-14rtnl: add call_async and call_async_cancelTom Gundersen
They work in the same way as the sd-bus equivalents.
2013-11-13Fix possible lack of status messages on shutdown/rebootOlivier Brunel
Since 31a7eb86 the output on console can be disabled to avoid colliding with gettys. However, it could also lead to a lack of messages during shutdown/reboot.
2013-11-13Only disable output on console during boot if neededOlivier Brunel
If there are no more jobs on console, no need/we shouldn't disable output.
2013-11-13Resolve /dev/console to the active tty instead of just "tty0"Olivier Brunel
When resolving /dev/console one would often get "tty0" meaning the active VT. Resolving to the actual tty (e.g. "tty1") will notably help on boot when determining whether or not PID1 can output to the console.
2013-11-13journal: timestamp support on console messagesUmut Tezduyar Lindskog
journald mimics the kernel here: timestamps will be printed if /sys/module/printk/parameters/time contains "Y".
2013-11-13rtnl: start adding support for asynchronous messagingTom Gundersen
Similarly to sd-bus, add: sd_rtnl_wait sd_rtnl_process sd_rtnl_send and adapt sd_rtnl_call accordingly.
2013-11-13rtnl: rename rtnl_bus_send_with_reply_and_block() to rtnl_bus_call()Tom Gundersen
Follow the equivalent rename in sd-bus to stay as similar as possible.
2013-11-13logind: create the session fifo before saving the session fileThomas Hindoe Paaboel Andersen
If the session fifo is not created the session state written to the session file is "closing". This caused the lock screen in gnome-shell to go into a loop trying to find the active session. The problem was introduced in the sd-bus port in cc3773810855956bad92337cee8fa193584ab62e Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=71525
2013-11-14activate: fix crash when -s is passedMantas Mikulėnas
getopt_long() was told to accept -s which was never implemented.
2013-11-14activate: mention -E in the help textMantas Mikulėnas