summaryrefslogtreecommitdiff
path: root/src/shared/util.c
AgeCommit message (Collapse)Author
2012-09-20util: fix overflow checksLennart Poettering
2012-09-20util: overflow hardeningLennart Poettering
2012-09-19util: define union dirent_storage and make use of it everywhereLennart Poettering
Make sure to allocate enough space for readdir_r(). https://bugzilla.redhat.com/show_bug.cgi?id=858754
2012-09-19util: fix bad strstrip() return value in normalize_env_assignment()Lennart Poettering
https://bugzilla.redhat.com/show_bug.cgi?id=858780
2012-09-18util: introduce get_process_gid()Lennart Poettering
2012-09-17conf-parser: don't unescape parsed configuration strings by defaultLennart Poettering
In many cases this might have a negative effect since we drop escaping from strings where we better shouldn't have dropped it. If unescaping makes sense for some settings we can readd it later again, on a per-case basis. https://bugs.freedesktop.org/show_bug.cgi?id=54522
2012-09-17util: various cleanups for printing boot statusLennart Poettering
2012-09-16nspawn: use automatic cleanup for umaskZbigniew Jędrzejewski-Szmek
2012-09-14timedate: assorted improvementsLennart Poettering
- Make writing/reading of /etc/timezone dependendent of HAVE_SYSV_COMPAT - Introduce symlink_atomic() after all, and use it - Use relative symlink for /etc/localtime
2012-09-14util: more modernizationsLennart Poettering
2012-09-14util: various additional modernizationsLennart Poettering
2012-09-14util: modernize a few functions with automatic cleanup variablesLennart Poettering
Just trying to get the feel for it. And it's pretty cool.
2012-09-13macro: introduce _cleanup_free_ macro for automatic freeing of scoped vars ↵Lennart Poettering
and make use of it
2012-09-11util: rm_rf_children_dangerous: delete all descendants dangerouslyTom Gundersen
Call rm_rf_children_dangerous() recursively rather than falling back to rm_rf_children(). This fixes a bug in systemd-tmpfiles. The problem can easily be reproduced by: # mount /dev/sda1 /mnt # mkdir /mnt/test # echo "D /mnt" > /root/test.conf # systemd-tmpfiles --remove /root/test.conf Attempted to remove disk file system, and we can't allow that. rm_rf(/root/test): Operation not permitted Reported-by: Lukas Jirkovsky <l.jirkovsky@gmail.com>
2012-09-05nspawn: handle poweroff/reboot nicely in containersLennart Poettering
2012-08-22journal: move syslog specific calls out of util.cLennart Poettering
2012-08-22journald: split /dev/kmsg related stuff into its own .c fileLennart Poettering
2012-08-21shared/util: add fstab support for partuuid/partlabelDave Reisner
udev has supported this since 172, so it should be a safe (and welcome) addition for users of GPT partitioned disks.
2012-08-21shared/util: refactor fstab_node_to_udev_nodeDave Reisner
Since this is purely duplicated logic, separate it out into a small static function.
2012-08-21journalctl: really include .journal~ files in listingLennart Poettering
2012-08-20journalctl: output FSS key as QR code on generatingLennart Poettering
2012-08-14service: add options RestartPreventExitStatus and SuccessExitStatusLukas Nykryn
In some cases, like wrong configuration, restarting after error does not help, so administrator can specify statuses by RestartPreventExitStatus which will not cause restart of a service. Sometimes you have non-standart exit status, so this can be specified by SuccessfulExitStatus.
2012-08-13namespace: rework namespace supportLennart Poettering
- don't use pivot_root() anymore, just reuse root hierarchy - first create all mounts, then mark them read-only so that we get the right behaviour when people want writable mounts inside of read-only mounts - don't pass invalid combinations of MS_ constants to the kernel
2012-08-09journald: properly unescape messages from /dev/kmsgLennart Poettering
2012-07-26cgtop: use full terminal widthZbigniew Jędrzejewski-Szmek
2012-07-26log.h: new log_oom() -> int -ENOMEM, use itShawn Landden
also a number of minor fixups and bug fixes: spelling, oom errors that didn't print errors, not properly forwarding error codes, few more consistency issues, et cetera
2012-07-25use "Out of memory." consistantly (or with "\n")Shawn Landden
glibc/glib both use "out of memory" consistantly so maybe we should consider that instead of this. Eliminates one string out of a number of binaries. Also fixes extra newline in udev/scsi_id
2012-07-16unit: introduce %s specifier for the user shellLennart Poettering
2012-07-16util: add getusername_malloc(), get_shell(), get_home_dir()Lennart Poettering
2012-07-15aquire_terminal(): fix uninitialized variableKay Sievers
./src/shared/util.c:2457:45: warning: 'r' may be used uninitialized in this function [-Wmaybe-uninitialized]
2012-07-13util: temporarily ignore SIGHUP while we are issuing TIOCSTTYLennart Poettering
2012-07-13util: rename join() to strjoin()Lennart Poettering
This is to match strappend() and the other string related functions.
2012-07-10switch-root: reopen /dev/console before we switch rootLennart Poettering
2012-07-10util: rm_rf() refuse cleaning non-memory file systems, as extra paranoiaLennart Poettering
2012-07-10util: add extra safety check to in_initrd()Lennart Poettering
initrds can only be on tmpfs or ramfs, so check for that
2012-07-09paranoia: refuse rm_rf("/")Lennart Poettering
2012-06-26core: make systemd.confirm_spawn=1 actually workLennart Poettering
This adds a timeout if the TTY cannot be acquired and makes sure we always output the question to the console, never to the TTY of the respective service.
2012-05-31util: don't require libcap when building libsystemd-sharedKay Sievers
src/shared/util.c includes <sys/capability.h> but doesn't use anything defined there. Since <sys/capability.h> is part of libcap, not libc, don't require it. Allows systemd-without-udevd to require fewer external libraries.
2012-05-31util: introduce a proper nsec_t and make use of it where appropriateLennart Poettering
2012-05-30logind: optionally handle power, sleep and lid switch eventsLennart Poettering
This takes handling of chassis power and sleep keys as well as the lid switch over from acpid. This logic is enabled by default for power and sleep keys, but not for the lid switch. If a graphical session is in the foreground no action is taken under the assumption that the graphical session does this.
2012-05-22util: make sure to fstatat() at most once in rm_rf_children()Lennart Poettering
2012-05-21util: rework in_initrd() logicLennart Poettering
Checking the device major/minor is not a good idea. Let's replace this with an explicit flag file, which we model after /etc/os-release and call /etc/initrd-release.
2012-05-21util: rm_rf_children() add root_dev parameterHarald Hoyer
if root_dev is set, remove subdirectories only, if the device is the same as the root_dev. This prevents to remove files across device boundaries.
2012-05-21util.c: add in_initrd()Harald Hoyer
in_initrd() checks, if the stat() for the device for "/" is 1, which it is for the initramfs.
2012-05-21main: corrected do_switch_root()Harald Hoyer
do_switch_root now mount moves "/dev", "/proc", "/sys", "/run" and removes the old root recursively.
2012-05-21hostname-setup: also consider (ńone) an unset hostnameLennart Poettering
2012-05-21units: introduce new Documentation= field and make use of it everywhereLennart Poettering
This should help making the boot process a bit easier to explore and understand for the administrator. The simple idea is that "systemctl status" now shows a link to documentation alongside the other status and decriptionary information of a service. This patch adds the necessary fields to all our shipped units if we have proper documentation for them.
2012-05-15tmpfiles: if we are supposed to write a string to a file, it's OK if we ↵Lennart Poettering
can't write the trailing newline
2012-05-14unit: print the color status marks on the leftMichal Schmidt
The alignment of the "[ OK ]" and "[FAILED]" status marks to the right side of the terminal makes it difficult to link them with the messages on the left if your console is wide. I considered the options: 1. Align them to the 80th column regardless of the console width. Disadvantage - either: - truncating messages needlessly, not using available space; or - If the message is long, write the mark over it. => ugly 2. Write them to the 80th column for short messages, and further to the right for longer ones. Disadvantage: - jagged look 3. Write the marks on the left, before the message. Disadvantage: - Breaks tradition from RHL. Advantages: + slightly simpler code + Will annoy holy-traditionalists. I chose option 3. BTW, Debian now uses similar marks on the left with its makefile-style boot. Special values of the "status" argument to status_vprintf are: NULL - no status mark, no message indentation "" - no status mark, message indented as if the mark was there
2012-05-09util: a few updates for rm_rf()Lennart Poettering