From 967072694d4ebb1b7c5989b92aa71af48954a975 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Tue, 16 Nov 2010 03:12:54 +0100 Subject: [PATCH] plymouth: use updated socket name --- TODO | 2 -- src/manager.c | 4 ++-- src/tty-ask-password-agent.c | 11 +++++++---- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/TODO b/TODO index 69670d3a5..12cf78325 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 25d85eaf1..827e9937c 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 1d17e2289..d389c98a4 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; } -- 2.30.2