forked from pool/systemd
0e78f272ba
add: 1008-udev-path_id-handle-Hyper-V-devices.patch - keymap: Update the list of Samsung Series 9 models add: 1009-keymap-Update-the-list-of-Samsung-Series-9-models.patch - keymap: Add Samsung 700T add: 1010-keymap-Add-Samsung-700T.patch - libudev: avoid leak during realloc failure add: 1011-libudev-avoid-leak-during-realloc-failure.patch - libudev: do not resolve $attr{device} symlinks add: 1012-libudev-do-not-resolve-attr-device-symlinks.patch - libudev: validate 'udev' argument to udev_enumerate_new() add: 1013-libudev-validate-udev-argument-to-udev_enumerate_new.patch - udev: fix whitespace add: 1014-udev-fix-whitespace.patch - udev: properly handle symlink removal by 'change' event add: 1015-udev-properly-handle-symlink-removal-by-change-event.patch - udev: builtin - do not fail builtin initialization if one of them returns an error add: 1016-udev-builtin-do-not-fail-builtin-initialization-if-o.patch - udev: use usec_t and now() add: 1017-udev-use-usec_t-and-now.patch closing an non-existent dbus connection and getting assertion failures. - udev: path_id - handle Hyper-V devices add: 1008-udev-path_id-handle-Hyper-V-devices.patch - keymap: Update the list of Samsung Series 9 models add: 1009-keymap-Update-the-list-of-Samsung-Series-9-models.patch - keymap: Add Samsung 700T add: 1010-keymap-Add-Samsung-700T.patch OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=327
56 lines
1.9 KiB
Diff
56 lines
1.9 KiB
Diff
From 81eca00461968aac09f9e8535f4327282698b495 Mon Sep 17 00:00:00 2001
|
|
From: Stefan Seyfried <seife+obs@b1-systems.com>
|
|
Date: Thu, 16 Dec 2010 11:30:17 +0100
|
|
Subject: [PATCH] Add bootsplash handling for password dialogs
|
|
|
|
openSUSE uses bootsplash.org, so add a crude handling for setting the
|
|
splash screen to verbose when a password is asked...
|
|
---
|
|
Index: systemd-195/src/shared/ask-password-api.c
|
|
===================================================================
|
|
--- systemd-195.orig/src/shared/ask-password-api.c
|
|
+++ systemd-195/src/shared/ask-password-api.c
|
|
@@ -63,6 +63,9 @@ int ask_password_tty(
|
|
bool reset_tty = false;
|
|
bool silent_mode = false;
|
|
bool dirty = false;
|
|
+ bool splash_silent = false;
|
|
+ FILE *procsplash = NULL;
|
|
+ char *line = NULL;
|
|
enum {
|
|
POLL_TTY,
|
|
POLL_INOTIFY
|
|
@@ -106,6 +109,19 @@ int ask_password_tty(
|
|
}
|
|
|
|
reset_tty = true;
|
|
+ procsplash = fopen("/proc/splash", "r+");
|
|
+ if (procsplash) {
|
|
+ getline(&line, &p, procsplash);
|
|
+ p = 0; /* reset, just to make sure */
|
|
+ if (line &&
|
|
+ (strstr(line, "on\n") == line + strlen(line) - 3) &&
|
|
+ (strstr(line, "silent") != NULL)) {
|
|
+ splash_silent = true;
|
|
+ rewind(procsplash);
|
|
+ fprintf(procsplash, "verbose\n");
|
|
+ fflush(procsplash);
|
|
+ }
|
|
+ }
|
|
}
|
|
|
|
zero(pollfd);
|
|
@@ -240,6 +256,12 @@ finish:
|
|
close_nointr_nofail(ttyfd);
|
|
}
|
|
|
|
+ if (splash_silent) { /* only set if procsplash != NULL */
|
|
+ rewind(procsplash);
|
|
+ fprintf(procsplash, "silent\n");
|
|
+ fclose(procsplash);
|
|
+ }
|
|
+
|
|
return r;
|
|
}
|
|
|