Merge pull request #77 from ryncsn/irqbalance-ui-fix

Fix irqbalance ui failing to connect to irqbalance daemon
This commit is contained in:
PJ Waskiewicz 2018-09-02 13:02:47 -07:00 committed by GitHub
commit e7ba7b8397
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 5 deletions

View file

@ -57,12 +57,18 @@ int init_connection()
}
addr.sun_family = AF_UNIX;
char socket_name[64];
snprintf(socket_name, 64, "%s%d.sock", SOCKET_PATH, irqbalance_pid);
strncpy(addr.sun_path, socket_name, strlen(addr.sun_path));
if(connect(socket_fd, (struct sockaddr *)&addr,
sizeof(sa_family_t) + strlen(socket_name) + 1) < 0) {
return 0;
snprintf(socket_name, 64, "%s/%s%d.sock", SOCKET_TMPFS, SOCKET_PATH, irqbalance_pid);
strncpy(addr.sun_path, socket_name, strlen(socket_name));
if(connect(socket_fd, (struct sockaddr *)&addr, sizeof(addr)) < 0) {
/* Try connect to abstract */
memset(&addr, 0, sizeof(struct sockaddr_un));
addr.sun_family = AF_UNIX;
if (connect(socket_fd, (struct sockaddr *)&addr, sizeof(addr)) < 0) {
return 0;
}
}
return socket_fd;

View file

@ -8,6 +8,7 @@
#include <glib-unix.h>
#define SOCKET_PATH "irqbalance"
#define SOCKET_TMPFS "/var/run"
#define STATS "stats"
#define SET_SLEEP "settings sleep "