diff options
author | Leah Neukirchen <leah@vuxu.org> | 2024-02-07 17:03:23 +0100 |
---|---|---|
committer | Leah Neukirchen <leah@vuxu.org> | 2024-02-07 17:03:23 +0100 |
commit | d6e27ae923575f0aa59875af6a4f2e7d7b0bb93c (patch) | |
tree | e6ace1001d574b033176297080d0bd880cf221b8 /nitroctl.c | |
parent | aa0310ff716ea0ecd20a3c0994be68e4fcf311d0 (diff) | |
download | nitro-d6e27ae923575f0aa59875af6a4f2e7d7b0bb93c.tar.gz nitro-d6e27ae923575f0aa59875af6a4f2e7d7b0bb93c.tar.xz nitro-d6e27ae923575f0aa59875af6a4f2e7d7b0bb93c.zip |
make nitroctl work with / in service names
Diffstat (limited to 'nitroctl.c')
-rw-r--r-- | nitroctl.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/nitroctl.c b/nitroctl.c index 27d0780..1fa2b0b 100644 --- a/nitroctl.c +++ b/nitroctl.c @@ -60,9 +60,14 @@ notifysock(const char *service) char *path = strdup(sockpath); if (!path || !*path) path = default_sock; + path = dirname(path); snprintf(notifypath, sizeof notifypath, - "%s/notify/%s,%ld", dirname(path), service, (long)getpid()); + "%s/notify/%s,%ld", path, service, (long)getpid()); + + for (char *s = notifypath + strlen(path) + strlen("/notify/"); *s; s++) + if (*s == '/') + *s = ','; struct sockaddr_un my_addr = { 0 }; my_addr.sun_family = AF_UNIX; |