SHA256
1
0
forked from pool/systemd
systemd/keep-crypt-password-prompt.patch
Stephan Kulow c14a1e98d3 Accepting request 242359 from Base:System
- Disable blkrrpart for SLES12 and below

- Add upstream patch
  1054-udev-exclude-MD-from-block-device-ownership-event-lo.patch
- Add with condition blkrrpart to be able to disable the patches
  1025, 1027, 1029, 1030, 1031, 1032, 1033, 1034, 1037, and 1054
  which uses the BLKRRPART ioctl for e.g. synthesize change events
  which may interfere with other tools like parted.

- Update
  handle-disable_caplock-and-compose_table-and-kbd_rate.patch, 
  handle-numlock-value-in-etc-sysconfig-keyboard.patch: read
  /etc/vconsole.conf after /etc/sysconfig/(keyboard,console)
  otherwise empty value in /etc/sysconfig/keyboard might override
  /etc/vconsole.conf values.
- Update :
  0001-journal-compress-return-early-in-uncompress_startswi.patch
  0002-util-don-t-consider-tabs-special-in-string_has_cc-an.patch
  0002-vconsole-setup-run-setfont-before-loadkeys.patch
  0003-core-never-consider-failure-when-reading-drop-ins-fa.patch
  0003-fsck-consider-a-fsck-implementation-linked-to-bin-tr.patch
  apply-ACL-for-nvidia-device-nodes.patch
  keep-crypt-password-prompt.patch
  log-target-null-instead-kmsg.patch
  parse-crypttab-for-noauto-option.patch
  set-and-use-default-logconsole.patch: fix all warnings in code
- Remove 0001-compress-fix-return-value.patch: not relevant to
  systemd v210 code.

- Also change udev-generate-peristent-rule to udev-generate-persistent-rule

OBS-URL: https://build.opensuse.org/request/show/242359
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/systemd?expand=0&rev=195
2014-07-26 10:19:44 +00:00

46 lines
1.4 KiB
Diff

Index: systemd-210/src/core/manager.c
===================================================================
--- systemd-210.orig/src/core/manager.c
+++ systemd-210/src/core/manager.c
@@ -152,6 +152,29 @@ void manager_flip_auto_status(Manager *m
}
}
+static int check_for_password_prompt(void) {
+ DIR *d;
+ struct dirent *de;
+
+ if (!(d = opendir("/run/systemd/ask-password"))) {
+
+ if (errno == ENOENT)
+ return 1;
+ log_error("opendir(/run/systemd/ask-password): %m");
+
+ return -errno;
+ }
+
+ while ((de = readdir(d))) {
+ if (startswith(de->d_name, "ask.")) {
+ closedir(d);
+ return 0;
+ }
+ }
+ closedir(d);
+ return 1;
+}
+
static void manager_print_jobs_in_progress(Manager *m) {
static int is_ansi_console = -1;
_cleanup_free_ char *job_of_n = NULL;
@@ -195,6 +218,10 @@ static void manager_print_jobs_in_progre
m->jobs_in_progress_iteration++;
+ //don't overwrite the crypt password prompt with job status messages
+ if (check_for_password_prompt() == 0)
+ return;
+
if (m->n_running_jobs > 1)
if (asprintf(&job_of_n, "(%u of %u) ", counter, m->n_running_jobs) < 0)
job_of_n = NULL;