diff --git a/src/dumm/mconsole.c b/src/dumm/mconsole.c index 32c969bac..01547e1f1 100644 --- a/src/dumm/mconsole.c +++ b/src/dumm/mconsole.c @@ -20,6 +20,7 @@ #include #include #include +#include #include #include @@ -187,7 +188,10 @@ static bool wait_for_notify(private_mconsole_t *this, char *nsock) close(this->notify); return FALSE; } - len = recvfrom(this->notify, ¬ify, sizeof(notify), 0, NULL, 0); + do + { + len = recvfrom(this->notify, ¬ify, sizeof(notify), 0, NULL, 0); + } while (len < 0 && errno == EINTR); if (len < 0 || len >= sizeof(notify)) { DBG1("reading from mconsole notify socket failed: %m");