From: Lennart Poettering Date: Tue, 16 Nov 2010 02:12:54 +0000 (+0100) Subject: plymouth: use updated socket name X-Git-Tag: v12~8 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=967072694d4ebb1b7c5989b92aa71af48954a975;p=systemd plymouth: use updated socket name --- diff --git a/TODO b/TODO index 69670d3a..12cf7832 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 25d85eaf..827e9937 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 1d17e228..d389c98a 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; }