use extra fcntl() instead of accept4 for portability.
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 10 Jul 2012 02:35:00 +0000 (02:35 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 10 Jul 2012 02:35:00 +0000 (02:35 +0000)
git-svn-id: http://svn.enlightenment.org/svn/e/trunk/evas@73509 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/bin/evas_cserve2_main_loop_linux.c

index 6063925..d4b5dff 100644 (file)
@@ -16,6 +16,7 @@
 #include <sys/wait.h>
 #include <signal.h>
 #include <unistd.h>
+#include <fcntl.h>
 
 #define MAX_EPOLL_EVENTS 10
 #define MAX_INCOMING_CONN 10
@@ -186,12 +187,13 @@ _socketfd_handler(int fd __UNUSED__, Fd_Flags flags __UNUSED__, void *data __UNU
    int s;
 
    len = sizeof(struct sockaddr_un);
-   s = accept4(socket_fd, &remote, &len, SOCK_CLOEXEC);
+   s = accept(socket_fd, &remote, &len);
    if (s == -1)
      {
         ERR("Could not accept socket: \"%s\"", strerror(errno));
         return;
      }
+   fcntl(s, F_SETFD, FD_CLOEXEC);
 
    cserve2_client_accept(s);
 }