apply post-1.14.3 fixes; bump version to 1.14.4

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/Makefile b/Makefile
index 9e1bd87..f907eaa 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 VERSION = 1
 PATCHLEVEL = 14
-SUBLEVEL = 3
+SUBLEVEL = 4
 EXTRAVERSION =
 NAME = Unnamed
 
diff --git a/modutils/modprobe-small.c b/modutils/modprobe-small.c
index 6ee0164..0b3a19a 100644
--- a/modutils/modprobe-small.c
+++ b/modutils/modprobe-small.c
@@ -218,6 +218,7 @@
 	bksp(); /* remove last ' ' */
 	appendc('\0');
 	info->aliases = copy_stringbuf();
+	replace(info->aliases, '-', '_');
 
 	/* "dependency1 depandency2" */
 	reset_stringbuf();
diff --git a/networking/httpd.c b/networking/httpd.c
index de4fb9b..ae91169 100644
--- a/networking/httpd.c
+++ b/networking/httpd.c
@@ -2101,8 +2101,12 @@
 		}
 		send_cgi_and_exit(urlcopy, prequest, length, cookie, content_type);
 	}
+#endif
+
+	if (urlp[-1] == '/')
+		strcpy(urlp, index_page);
+	if (stat(tptr, &sb) == 0) {
 #if ENABLE_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR
-	{
 		char *suffix = strrchr(tptr, '.');
 		if (suffix) {
 			Htaccess *cur;
@@ -2112,16 +2116,7 @@
 				}
 			}
 		}
-	}
 #endif
-	if (prequest != request_GET && prequest != request_HEAD) {
-		send_headers_and_exit(HTTP_NOT_IMPLEMENTED);
-	}
-#endif  /* FEATURE_HTTPD_CGI */
-
-	if (urlp[-1] == '/')
-		strcpy(urlp, index_page);
-	if (stat(tptr, &sb) == 0) {
 		file_size = sb.st_size;
 		last_mod = sb.st_mtime;
 	}
@@ -2135,19 +2130,18 @@
 			send_cgi_and_exit("/cgi-bin/index.cgi", prequest, length, cookie, content_type);
 		}
 	}
-#endif
-	/* else {
-	 *	fall through to send_file, it errors out if open fails
-	 * }
-	 */
+	/* else fall through to send_file, it errors out if open fails: */
 
+	if (prequest != request_GET && prequest != request_HEAD) {
+		/* POST for files does not make sense */
+		send_headers_and_exit(HTTP_NOT_IMPLEMENTED);
+	}
 	send_file_and_exit(tptr,
-#if ENABLE_FEATURE_HTTPD_CGI
 		(prequest != request_HEAD ? SEND_HEADERS_AND_BODY : SEND_HEADERS)
-#else
-		SEND_HEADERS_AND_BODY
-#endif
 	);
+#else
+	send_file_and_exit(tptr, SEND_HEADERS_AND_BODY);
+#endif
 }
 
 /*
diff --git a/shell/ash.c b/shell/ash.c
index 4981f4c..f753a5b 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -5786,7 +5786,7 @@
 	};
 	const char *reject = spclchars;
 	int c;
-	int quotes = flag & (EXP_FULL | EXP_CASE);      /* do CTLESC */
+	int quotes = flag & (EXP_FULL | EXP_CASE | EXP_REDIR); /* do CTLESC */
 	int breakall = flag & EXP_WORD;
 	int inquotes;
 	size_t length;