mirror of
https://github.com/swaywm/sway.git
synced 2024-11-13 05:54:11 +01:00
Merge pull request #225 from sce/logind_socket_path
ipc: Put socket into proper user runtime dir.
This commit is contained in:
commit
f3fc48f692
13
sway/ipc.c
13
sway/ipc.c
@ -94,14 +94,15 @@ struct sockaddr_un *ipc_user_sockaddr(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
ipc_sockaddr->sun_family = AF_UNIX;
|
ipc_sockaddr->sun_family = AF_UNIX;
|
||||||
|
|
||||||
int path_size = sizeof(ipc_sockaddr->sun_path);
|
int path_size = sizeof(ipc_sockaddr->sun_path);
|
||||||
|
|
||||||
// Without logind:
|
// Env var typically set by logind, e.g. "/run/user/<user-id>"
|
||||||
int allocating_path_size = snprintf(ipc_sockaddr->sun_path, path_size,
|
const char *dir = getenv("XDG_RUNTIME_DIR");
|
||||||
"/tmp/sway-ipc.%i.%i.sock", getuid(), getpid());
|
if (!dir) {
|
||||||
|
dir = "/tmp";
|
||||||
if (allocating_path_size >= path_size) {
|
}
|
||||||
|
if (path_size <= snprintf(ipc_sockaddr->sun_path, path_size,
|
||||||
|
"%s/sway-ipc.%i.%i.sock", dir, getuid(), getpid())) {
|
||||||
sway_abort("socket path won't fit into ipc_sockaddr->sun_path");
|
sway_abort("socket path won't fit into ipc_sockaddr->sun_path");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user