@ -1,8 +1,5 @@
// See https://i3wm.org/docs/ipc.html for protocol information
// See https://i3wm.org/docs/ipc.html for protocol information
# ifndef __FreeBSD__
# define _POSIX_C_SOURCE 200112L
// Any value will hide SOCK_CLOEXEC on FreeBSD (__BSD_VISIBLE=0)
# define _XOPEN_SOURCE 700
# endif
# ifdef __linux__
# ifdef __linux__
# include <linux/input-event-codes.h>
# include <linux/input-event-codes.h>
# elif __FreeBSD__
# elif __FreeBSD__
@ -89,10 +86,16 @@ static void handle_display_destroy(struct wl_listener *listener, void *data) {
}
}
void ipc_init ( struct sway_server * server ) {
void ipc_init ( struct sway_server * server ) {
ipc_socket = socket ( AF_UNIX , SOCK_STREAM | SOCK_NONBLOCK | SOCK_CLOEXEC , 0 ) ;
ipc_socket = socket ( AF_UNIX , SOCK_STREAM , 0 ) ;
if ( ipc_socket = = - 1 ) {
if ( ipc_socket = = - 1 ) {
sway_abort ( " Unable to create IPC socket " ) ;
sway_abort ( " Unable to create IPC socket " ) ;
}
}
if ( fcntl ( ipc_socket , F_SETFD , FD_CLOEXEC ) = = - 1 ) {
sway_abort ( " Unable to set CLOEXEC on IPC socket " ) ;
}
if ( fcntl ( ipc_socket , F_SETFL , O_NONBLOCK ) = = - 1 ) {
sway_abort ( " Unable to set NONBLOCK on IPC socket " ) ;
}
ipc_sockaddr = ipc_user_sockaddr ( ) ;
ipc_sockaddr = ipc_user_sockaddr ( ) ;