summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--TODO2
-rw-r--r--src/manager.c4
-rw-r--r--src/tty-ask-password-agent.c11
3 files changed, 9 insertions, 8 deletions
diff --git a/TODO b/TODO
index 69670d3a54..12cf78325c 100644
--- a/TODO
+++ b/TODO
@@ -57,8 +57,6 @@
* when processes remain in a service even though the start command failed enter active
-* fix plymouth socket name, when plymouth started to use a clean one
-
* parse early boot time env var from dracut RD_TIMEOUT, drop RD_xxx
* add seperate man page for [Install] settings
diff --git a/src/manager.c b/src/manager.c
index 25d85eaf11..827e9937c6 100644
--- a/src/manager.c
+++ b/src/manager.c
@@ -2447,8 +2447,8 @@ void manager_send_unit_plymouth(Manager *m, Unit *u) {
zero(sa);
sa.sa.sa_family = AF_UNIX;
- strncpy(sa.un.sun_path+1, "/ply-boot-protocol", sizeof(sa.un.sun_path)-1);
- if (connect(fd, &sa.sa, sizeof(sa.un)) < 0) {
+ strncpy(sa.un.sun_path+1, "/org/freedesktop/plymouthd", sizeof(sa.un.sun_path)-1);
+ if (connect(fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + 1 + strlen(sa.un.sun_path+1)) < 0) {
if (errno != EPIPE &&
errno != EAGAIN &&
diff --git a/src/tty-ask-password-agent.c b/src/tty-ask-password-agent.c
index 1d17e2289e..d389c98a48 100644
--- a/src/tty-ask-password-agent.c
+++ b/src/tty-ask-password-agent.c
@@ -80,9 +80,9 @@ static int ask_password_plymouth(const char *message, usec_t until, const char *
zero(sa);
sa.sa.sa_family = AF_UNIX;
- strncpy(sa.un.sun_path+1, "/ply-boot-protocol", sizeof(sa.un.sun_path)-1);
-
- if (connect(fd, &sa.sa, sizeof(sa.un)) < 0) {
+ strncpy(sa.un.sun_path+1, "/org/freedesktop/plymouthd", sizeof(sa.un.sun_path)-1);
+ if (connect(fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + 1 + strlen(sa.un.sun_path+1)) < 0) {
+ log_error("FIALED TO CONNECT: %m");
r = -errno;
goto finish;
}
@@ -481,7 +481,7 @@ static int watch_passwords(void) {
for (;;) {
if ((r = show_passwords()) < 0)
- break;
+ goto finish;
if (poll(pollfd, _FD_MAX, -1) < 0) {
@@ -614,6 +614,9 @@ int main(int argc, char *argv[]) {
else
r = show_passwords();
+ if (r < 0)
+ log_error("Error: %s", strerror(-r));
+
finish:
return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
}