aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ipc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ipc.c b/ipc.c
index 4041f442..304a8ef2 100644
--- a/ipc.c
+++ b/ipc.c
@@ -589,7 +589,7 @@ static char *ipc_readline(int fd, int *recv_fd)
close(*recv_fd);
}
- *recv_fd = *(int *) CMSG_DATA(cmsg);
+ memcpy(recv_fd, CMSG_DATA(cmsg), sizeof(int));
/*
fprintf( stderr, "pid %d received fd %d\n", (int) getpid(), *recv_fd );
*/
@@ -757,7 +757,7 @@ static gboolean ipc_send_fd(int fd, int send_fd)
cmsg->cmsg_level = SOL_SOCKET;
cmsg->cmsg_type = SCM_RIGHTS;
cmsg->cmsg_len = CMSG_LEN(sizeof(send_fd));
- *(int *) CMSG_DATA(cmsg) = send_fd;
+ memcpy(CMSG_DATA(cmsg), &send_fd, sizeof(int));
msg.msg_controllen = cmsg->cmsg_len;
#endif