[CLEANUP] remove ifdef MSG_NOSIGNAL and define it instead

ifdefs are really annoying in the code. Define MSG_NOSIGNAL to zero
when undefined and remove associated ifdefs.
diff --git a/include/common/compat.h b/include/common/compat.h
index 8d406e5..dec5d7d 100644
--- a/include/common/compat.h
+++ b/include/common/compat.h
@@ -54,6 +54,11 @@
 #define SHUT_WR	        1
 #endif
 
+/* only Linux defines it */
+#ifndef MSG_NOSIGNAL
+#define MSG_NOSIGNAL	0
+#endif
+
 /* AIX does not define MSG_DONTWAIT. We'll define it to zero, and test it
  * wherever appropriate.
  */
diff --git a/src/checks.c b/src/checks.c
index 211a2ec..00751fe 100644
--- a/src/checks.c
+++ b/src/checks.c
@@ -359,11 +359,7 @@
 				memcpy(s->proxy->check_req + 11, &gmt_time, 4);
 			}
 
-#ifndef MSG_NOSIGNAL
-			ret = send(fd, s->proxy->check_req, s->proxy->check_len, MSG_DONTWAIT);
-#else
 			ret = send(fd, s->proxy->check_req, s->proxy->check_len, MSG_DONTWAIT | MSG_NOSIGNAL);
-#endif
 			if (ret == s->proxy->check_len) {
 				/* we allow up to <timeout.check> if nonzero for a responce */
 				if (s->proxy->timeout.check)
@@ -455,15 +451,11 @@
 		goto out_wakeup;
 	}
 
-#ifndef MSG_NOSIGNAL
-	len = recv(fd, trash, sizeof(trash), 0);
-#else
 	/* Warning! Linux returns EAGAIN on SO_ERROR if data are still available
 	 * but the connection was closed on the remote end. Fortunately, recv still
 	 * works correctly and we don't need to do the getsockopt() on linux.
 	 */
 	len = recv(fd, trash, sizeof(trash), MSG_NOSIGNAL);
-#endif
 	if (unlikely(len < 0 && errno == EAGAIN)) {
 		/* we want some polling to happen first */
 		fdtab[fd].ev &= ~FD_POLL_IN;
diff --git a/src/haproxy.c b/src/haproxy.c
index dd03e32..237fa25 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -937,7 +937,7 @@
 	/* on very high loads, a sigpipe sometimes happen just between the
 	 * getsockopt() which tells "it's OK to write", and the following write :-(
 	 */
-#if !defined(MSG_NOSIGNAL) || defined(CONFIG_HAP_LINUX_SPLICE)
+#if !MSG_NOSIGNAL || defined(CONFIG_HAP_LINUX_SPLICE)
 	signal(SIGPIPE, SIG_IGN);
 #endif
 
diff --git a/src/log.c b/src/log.c
index 8d71eae..b323d7e 100644
--- a/src/log.c
+++ b/src/log.c
@@ -23,6 +23,7 @@
 #include <sys/time.h>
 
 #include <common/config.h>
+#include <common/compat.h>
 #include <common/standard.h>
 #include <common/time.h>
 
@@ -30,10 +31,6 @@
 
 #include <proto/log.h>
 
-#ifndef MSG_NOSIGNAL
-#define MSG_NOSIGNAL	(0)
-#endif /* !MSG_NOSIGNAL */
-
 const char *log_facilities[NB_LOG_FACILITIES] = {
 	"kern", "user", "mail", "daemon",
 	"auth", "syslog", "lpr", "news",
diff --git a/src/stream_sock.c b/src/stream_sock.c
index 3a69d1f..f563755 100644
--- a/src/stream_sock.c
+++ b/src/stream_sock.c
@@ -313,8 +313,9 @@
 		/*
 		 * 2. read the largest possible block
 		 */
-#ifndef MSG_NOSIGNAL
-		{
+		if (MSG_NOSIGNAL) {
+			ret = recv(fd, b->r, max, MSG_NOSIGNAL);
+		} else {
 			int skerr;
 			socklen_t lskerr = sizeof(skerr);
 
@@ -324,9 +325,7 @@
 			else
 				ret = recv(fd, b->r, max, 0);
 		}
-#else
-		ret = recv(fd, b->r, max, MSG_NOSIGNAL);
-#endif
+
 		if (ret > 0) {
 			b->r += ret;
 			b->l += ret;
@@ -606,8 +605,9 @@
 		}
 #endif
 
-#ifndef MSG_NOSIGNAL
-		{
+		if (MSG_NOSIGNAL) {
+			ret = send(si->fd, b->w, max, MSG_DONTWAIT | MSG_NOSIGNAL);
+		} else {
 			int skerr;
 			socklen_t lskerr = sizeof(skerr);
 
@@ -617,9 +617,6 @@
 			else
 				ret = send(si->fd, b->w, max, MSG_DONTWAIT);
 		}
-#else
-		ret = send(si->fd, b->w, max, MSG_DONTWAIT | MSG_NOSIGNAL);
-#endif
 
 		if (ret > 0) {
 			if (fdtab[si->fd].state == FD_STCONN)