X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=libudev%2Flibudev-ctrl.c;h=61e02433834e5a73e1d88748652230fd38925c1c;hp=a2133fff1c7b313b36aeeb7376c2fcf88b25a4b2;hb=1547687a83334b056fdf06ed0c5676e948eafb30;hpb=67a77c8bf299f6264f001677becd056316ebce2f diff --git a/libudev/libudev-ctrl.c b/libudev/libudev-ctrl.c index a2133fff1..61e024338 100644 --- a/libudev/libudev-ctrl.c +++ b/libudev/libudev-ctrl.c @@ -184,8 +184,10 @@ struct udev_ctrl_connection *udev_ctrl_get_connection(struct udev_ctrl *uctrl) conn->refcount = 1; conn->uctrl = uctrl; - conn->sock = accept4(uctrl->sock, NULL, NULL, SOCK_CLOEXEC); + conn->sock = accept4(uctrl->sock, NULL, NULL, SOCK_CLOEXEC|SOCK_NONBLOCK); if (conn->sock < 0) { + if (errno != EINTR) + err(uctrl->udev, "unable to receive ctrl connection: %m\n"); free(conn); return NULL; }