summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2012-11-13python: add journal backend for the logging frameworkMarti Raudsepp
Supports Python versions 2.6 through 3.3 (tested on 2.7 and 3.2). See JournalHandler docstring for usage details. [zj: - use send() instead of using sendv() directly - do exception handling like in the logging module - bumped min version to python2.6, since the module does not work with python2.5 anyway ]
2012-11-13systemd-analyze: use argparse instead of getoptZbigniew Jędrzejewski-Szmek
Makes the output way nicer with shorter code. Also brings systemd-analyze behaviour more in line with other systemd-programs. Argparse is in Python since 2.6, and is available as a package for previous versions, if someone is stuck with very old Python.
2012-11-13systemd-python: fix nesting of #ifs and #pragmasZbigniew Jędrzejewski-Szmek
2012-11-13shared/socket-util: kill gcc warning about uninitialized variableZbigniew Jędrzejewski-Szmek
The warning was invalid, but distracting.
2012-11-13udev: properly handle symlink removal by 'change' eventKay Sievers
If a 'change' event is supposed to remove created symlinks, we create a new device structure from the sysfs device and fill it with the list of links, to compute the delta of the old and new list of links to apply. If the device is already 'remove'd by the kernel though, udev fails to create the device structure, so the links are not removed properly. > From: Neil Brown <nfbrown@suse.com> > Date: Thu, 8 Nov 2012 10:39:06 +0100 > Subject: [PATCH] If a 'change' event does not get handled by udev until > after the device has subsequently disappeared, udev mis-handles > it. This can happen with 'md' devices which emit a change > event and then a remove event when they are stopped. It is > normally only noticed if udev is very busy (lots of arrays > being stopped at once) or the machine is otherwise loaded > and reponding slowly. > > There are two problems. > > 1/ udev_device_new_from_syspath() will refuse to create the device > structure if the device does not exist in /sys, and particularly if > the uevent file does not exist. > If a 'db' file does exist, that is sufficient evidence that the device > is genuine and should be created. Equally if we have just received an > event from the kernel about the device, it must be real. > > This patch just disabled the test for the 'uevent' file, it doesn't > try imposing any other tests - it isn't clear that they are really > needed. > > 2/ udev_event_execute_rules() calls udev_device_read_db() on a 'device' > structure that is largely uninitialised and in particular does not > have the 'subsystem' set. udev_device_read_db() needs the subsystem > so it tries to read the 'subsystem' symlink out of sysfs. If the > device is already deleted, this naturally fails. > udev_event_execute_rules() knows the subsystem (as it was in the > event message) so this patch simply sets the subsystem for the device > structure to be loaded to match the subsystem of the device structure > that is handling the event. > > With these two changes, deleted handling of change events will still > correctly remove any symlinks that are not needed any more. Use udev_device_new() instead of allowing udev_device_new_from_syspath() to proceed without a sysfs device.
2012-11-13libudev: avoid leak during realloc failureMauro Dreissig
2012-11-12remove duplicate semicolonsThomas Hindoe Paaboel Andersen
2012-11-12util: nicer tree drawingsMichal Schmidt
Draw trees more similar to pstree/findmnt/lsblk/...
2012-11-12enable localization for common *ctl commandsDave Reisner
2012-11-12use the same email address everywhereKay Sievers
2012-11-12libudev: update copyright headersKay Sievers
2012-11-12udev: use usec_t and now()Kay Sievers
2012-11-11timedatectl: properly print 30 minutes DST transitionsKay Sievers
2012-11-09coredumpctl: add missing -F, --field option to helpDave Reisner
2012-11-09systemd-coredumpctl: add 'gdb' to usage outputDave Reisner
2012-11-09dbus: when verifying PK privs, bypass PK if uid=0 of clientLennart Poettering
This reduces the number of roundtrips when the client is privileged and makes the PK dep optional for root clients.
2012-11-09udev: net_id - add builtin to retrieve data for network devicesKay Sievers
2012-11-09udev: hwdb - search parents for 'modalias' and dataKay Sievers
2012-11-09udev: update file headersKay Sievers
2012-11-09fstab-generator: more specific error messagesMichal Schmidt
2012-11-06cryptsetup: fix inverted comparison in pass_volume_keyDave Reisner
2012-11-06Revert "Implement SocketUser= and SocketGroup= for [Socket]"Dave Reisner
This was never intended to be pushed. This reverts commit aea54018a5e66a41318afb6c6be745b6aef48d9e.
2012-11-06cryptsetup: hash=plain means don't use a hashDave Reisner
"plain" is a semantic value that cryptsetup(8) uses to describe a plain dm-crypt volume that does not use a hash. Catch this value earlier and ensure that a NULL params.hash is passed to crypt_format to avoid passing an invalid hash type to the libcryptsetup backend. FDO bug #56593.
2012-11-05Implement SocketUser= and SocketGroup= for [Socket]Dave Reisner
Since we already allow defining the mode of AF_UNIX sockets and FIFO, it makes sense to also allow specific user/group ownership of the socket file for restricting access.
2012-11-04mount-setup: try mounting 'efivarfs' only if the system bootet with EFIKay Sievers
2012-11-04kmod-setup: mounting efivarfs, *after* we tried to mount it, is pointlessKay Sievers
The mount() system call, which we issue before loading modules, will trigger a modprobe by the kernel and block until it returns. Trying to load it again later, will have exactly the same result as the first time.
2012-11-04kmod-setup: add conditional module loading callbackKay Sievers
2012-11-04shared: add is_efiboot()Kay Sievers
2012-11-03drop Arch Linux support for reading /etc/rc.confDave Reisner
2012-11-03drop Arch Linux support for reading /etc/rc.confDave Reisner
2012-11-03vconsole: remove Frugalware legacy file supportMiklos Vajna
2012-11-02util : fallback to plain ASCII drawing if locale is not UTF-8Michal Schmidt
When printing cgroup and sysfs hierarchies, avoid using UTF-8 box drawing characters if the locale is not UTF-8. https://bugzilla.redhat.com/show_bug.cgi?id=871153
2012-11-02util: add is_locale_utf8()Michal Schmidt
journalctl and vconsole-setup both implement utf8 locale detection. Let's have a common function for it. The next patch will add another use.
2012-11-02analyze: use GDBus instead of dbus-pythonCosimo Cecchi
2012-11-02timedatectl: show "DST active: n/a" if no DST data is availableKay Sievers
2012-11-02timedatectl: explain everything nobody wants to know about DSTKay Sievers
2012-11-02shared: add timer_get_dst()Kay Sievers
2012-11-02udev: break over-long linesKay Sievers
2012-10-31service: drop special HTTP server target, as it is a bad idea anf Fedora ↵Lennart Poettering
specific This was premarily intended to support the LSB facility $httpd which is only known by Fedora, and a bad idea since it lacks any real-life usecase. Similar, drop support for some other old Fedora-specific facilities. Also, document the rules for introduction of new facilities, to clarify the situation for the future.
2012-10-30strv: cleanup error path loopsLennart Poettering
https://bugzilla.redhat.com/show_bug.cgi?id=858799
2012-10-30shared: "max" in the string->number conversion is meant to be inclusiveMichal Schmidt
2012-10-30shared, core: do not always accept numbers in string lookupsMichal Schmidt
The behaviour of the common name##_from_string conversion is surprising. It accepts not only the strings from name##_table but also any number that falls within the range of the table. The order of items in most of our tables is an internal affair. It should not be visible to the user. I know of a case where the surprising numeric conversion leads to a crash. We will allow the direct numeric conversion only for the tables where the mapping of strings to numeric values has an external meaning. This holds for the following lookup tables: - netlink_family, ioprio_class, ip_tos, sched_policy - their numeric values are stable as they are defined by the Linux kernel interface. - log_level, log_facility_unshifted - the well-known syslog interface. We allow the user to use numeric values whose string names systemd does not know. For instance, the user may want to test a new kernel featuring a scheduling policy that did not exist when his systemd version was released. A slightly unpleasant effect of this is that the name##_to_string conversion cannot return pointers to constant strings anymore. The strings have to be allocated on demand and freed by the caller.
2012-10-30coredumpctl: add --field/-F optionZbigniew Jędrzejewski-Szmek
Useful for completion generation.
2012-10-30coredumpctl: add --no-legend optionZbigniew Jędrzejewski-Szmek
Useful for completion generation.
2012-10-30coredumpctl: fix program return codeZbigniew Jędrzejewski-Szmek
2012-10-30coredumpctl: add guard to options tableZbigniew Jędrzejewski-Szmek
It is not nice to segfault on unknown options :(
2012-10-30libsystemd-daemon: fix styleMichal Schmidt
2012-10-30shared, libsystemd-daemon: check for empty strings in strto*l conversionsMichal Schmidt
strtol() and friends may set EINVAL if no conversion was performed, but they are not required to do so. In practice they don't. We need to check for it. https://bugzilla.redhat.com/show_bug.cgi?id=870577
2012-10-30SMACK: Add configuration options. (v3)Auke Kok
This adds SMACK label configuration options to socket units. SMACK labels should be applied to most objects on disk well before execution time, but two items remain that are generated dynamically at run time that require SMACK labels to be set in order to enforce MAC on all objects. Files on disk can be labelled using package management. For device nodes, simple udev rules are sufficient to add SMACK labels at boot/insertion time. Sockets can be created at run time and systemd does just that for several services. In order to protect FIFO's and UNIX domain sockets, we must instruct systemd to apply SMACK labels at runtime. This patch adds the following options: Smack - applicable to FIFO's. SmackIpIn/SmackIpOut - applicable to sockets. No external dependencies are required to support SMACK, as setting the labels is done using fsetxattr(). The labels can be set on a kernel that does not have SMACK enabled either, so there is no need to #ifdef any of this code out. For more information about SMACK, please see Documentation/Smack.txt in the kernel source code. v3 of this patch changes the config options to be CamelCased.
2012-10-30logind: it's OK if a process on an pty requests a session for seat0Lennart Poettering
After all, if a sudo/su inside an X terminal should get added to the same session as the X session itself.