changeset 12278:3385e9028410

lib-master: Properly fixed accepting FIFO connections with BSDI.
author Timo Sirainen <tss@iki.fi>
date Fri, 15 Oct 2010 16:16:23 +0100
parents 80097e5c38e9
children 0b509f1ee95c
files src/lib-master/master-service.c
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-master/master-service.c	Fri Oct 15 16:09:13 2010 +0100
+++ b/src/lib-master/master-service.c	Fri Oct 15 16:16:23 2010 +0100
@@ -718,7 +718,7 @@
 		if (errno == ENOTSOCK) {
 			/* it's not a socket. should be a fifo. */
 		} else if (errno == EINVAL &&
-			   (fstat(l->fd, &st) < 0 || !S_ISFIFO(st.st_mode))) {
+			   (fstat(l->fd, &st) == 0 && S_ISFIFO(st.st_mode))) {
 			/* BSDI fails accept(fifo) with EINVAL. */
 		} else {
 			errno = orig_errno;