1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-28 00:21:52 +03:00

Fix infinite loop in check_pf (BZ #12926)

The recvmsg could return 0 under some conditions and cause the
make_request function to be stuck in an infinite loop.

Thank you Jim King <jim.king@simplivity.com> for posting Paul's patch
on the list.
This commit is contained in:
Siddhesh Poyarekar
2014-10-14 21:05:33 +05:30
parent fcb32af153
commit fda389c8f0
3 changed files with 8 additions and 2 deletions

View File

@ -180,7 +180,7 @@ make_request (int fd, pid_t pid)
};
ssize_t read_len = TEMP_FAILURE_RETRY (__recvmsg (fd, &msg, 0));
if (read_len < 0)
if (read_len <= 0)
goto out_fail2;
if (msg.msg_flags & MSG_TRUNC)