summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ipcpd/ipcp.c4
-rw-r--r--src/irmd/ipcp.c4
-rw-r--r--src/irmd/main.c4
-rw-r--r--src/lib/sockets.c15
4 files changed, 17 insertions, 10 deletions
diff --git a/src/ipcpd/ipcp.c b/src/ipcpd/ipcp.c
index dfb88057..8dc7751a 100644
--- a/src/ipcpd/ipcp.c
+++ b/src/ipcpd/ipcp.c
@@ -55,7 +55,7 @@
struct cmd {
struct list_head next;
- uint8_t cbuf[IPCP_MSG_BUF_SIZE];
+ uint8_t cbuf[SOCK_BUF_SIZE];
size_t len;
int fd;
};
@@ -146,7 +146,7 @@ static void * acceptloop(void * o)
break;
}
- cmd->len = read(csockfd, cmd->cbuf, IPCP_MSG_BUF_SIZE);
+ cmd->len = read(csockfd, cmd->cbuf, SOCK_BUF_SIZE);
if (cmd->len <= 0) {
log_err("Failed to read from socket.");
close(csockfd);
diff --git a/src/irmd/ipcp.c b/src/irmd/ipcp.c
index 49bf13c9..dc8f1c6e 100644
--- a/src/irmd/ipcp.c
+++ b/src/irmd/ipcp.c
@@ -53,7 +53,7 @@ ipcp_msg_t * send_recv_ipcp_msg(pid_t pid,
ipcp_msg_t * msg)
{
int sockfd = 0;
- uint8_t buf[IPCP_MSG_BUF_SIZE];
+ uint8_t buf[SOCK_BUF_SIZE];
char * sock_path = NULL;
ssize_t len;
ipcp_msg_t * recv_msg = NULL;
@@ -116,7 +116,7 @@ ipcp_msg_t * send_recv_ipcp_msg(pid_t pid,
ipcp_msg__pack(msg, buf);
if (write(sockfd, buf, len) != -1)
- len = read(sockfd, buf, IPCP_MSG_BUF_SIZE);
+ len = read(sockfd, buf, SOCK_BUF_SIZE);
if (len > 0)
recv_msg = ipcp_msg__unpack(NULL, len, buf);
diff --git a/src/irmd/main.c b/src/irmd/main.c
index db9d7bbd..b2a521d5 100644
--- a/src/irmd/main.c
+++ b/src/irmd/main.c
@@ -68,7 +68,7 @@
#define IRMD_CLEANUP_TIMER ((IRMD_FLOW_TIMEOUT / 20) * MILLION) /* ns */
#define SHM_SAN_HOLDOFF 1000 /* ms */
#define IPCP_HASH_LEN(e) hash_len(e->dir_hash_algo)
-#define IB_LEN IRM_MSG_BUF_SIZE
+#define IB_LEN SOCK_BUF_SIZE
enum init_state {
IPCP_NULL = 0,
@@ -1862,7 +1862,7 @@ static void * acceptloop(void * o)
break;
}
- cmd->len = read(csockfd, cmd->cbuf, IRM_MSG_BUF_SIZE);
+ cmd->len = read(csockfd, cmd->cbuf, SOCK_BUF_SIZE);
if (cmd->len <= 0) {
log_err("Failed to read from socket.");
close(csockfd);
diff --git a/src/lib/sockets.c b/src/lib/sockets.c
index 6e7d4ad5..b148b7ca 100644
--- a/src/lib/sockets.c
+++ b/src/lib/sockets.c
@@ -33,12 +33,19 @@
#include <stdbool.h>
#include <sys/time.h>
+/* Apple doesn't support SEQPACKET. */
+#ifdef __APPLE__
+#define SOCK_TYPE SOCK_STREAM
+#else
+#define SOCK_TYPE SOCK_SEQPACKET
+#endif
+
int client_socket_open(char * file_name)
{
int sockfd;
struct sockaddr_un serv_addr;
- sockfd = socket(AF_UNIX, SOCK_SEQPACKET, 0);
+ sockfd = socket(AF_UNIX, SOCK_TYPE, 0);
if (sockfd < 0)
return -1;
@@ -66,7 +73,7 @@ int server_socket_open(char * file_name)
return -1;
}
- sockfd = socket(AF_UNIX, SOCK_SEQPACKET, 0);
+ sockfd = socket(AF_UNIX, SOCK_TYPE, 0);
if (sockfd < 0)
return -1;
@@ -96,7 +103,7 @@ static void close_ptr(void * o)
irm_msg_t * send_recv_irm_msg(irm_msg_t * msg)
{
int sockfd;
- uint8_t buf[IRM_MSG_BUF_SIZE];
+ uint8_t buf[SOCK_BUF_SIZE];
ssize_t len;
irm_msg_t * recv_msg = NULL;
@@ -115,7 +122,7 @@ irm_msg_t * send_recv_irm_msg(irm_msg_t * msg)
irm_msg__pack(msg, buf);
if (write(sockfd, buf, len) != -1)
- len = read(sockfd, buf, IRM_MSG_BUF_SIZE);
+ len = read(sockfd, buf, SOCK_BUF_SIZE);
if (len > 0)
recv_msg = irm_msg__unpack(NULL, len, buf);