BUG/MINOR: cli: make sure the "getsock" command is only called on connections

Theorically nothing would prevent a front applet form connecting to a stats
socket, and if a "getsock" command was issued, it would cause a crash. Right
now nothing in the code does this so in its current form there is no impact.

It may or may not be backported to 1.8.
diff --git a/src/cli.c b/src/cli.c
index 6d05483..ed17aac 100644
--- a/src/cli.c
+++ b/src/cli.c
@@ -1376,11 +1376,18 @@
 	int tot_fd_nb = 0;
 	struct proxy *px;
 	int i = 0;
-	int fd = remote->handle.fd;
+	int fd = -1;
 	int curoff = 0;
-	int old_fcntl;
+	int old_fcntl = -1;
 	int ret;
 
+	if (!remote) {
+		ha_warning("Only works on real connections\n");
+		goto out;
+	}
+
+	fd = remote->handle.fd;
+
 	/* Temporary set the FD in blocking mode, that will make our life easier */
 	old_fcntl = fcntl(fd, F_GETFL);
 	if (old_fcntl < 0) {
@@ -1529,7 +1536,7 @@
 	}
 
 out:
-	if (old_fcntl >= 0 && fcntl(fd, F_SETFL, old_fcntl) == -1) {
+	if (fd >= 0 && old_fcntl >= 0 && fcntl(fd, F_SETFL, old_fcntl) == -1) {
 		ha_warning("Cannot make the unix socket non-blocking\n");
 		goto out;
 	}