File mksh-vendor-mkshrc.patch of Package mksh

---
 main.c |    4 ++++
 mksh.1 |    5 +++++
 2 files changed, 9 insertions(+)

diff --git a/main.c b/main.c
--- a/main.c
+++ b/main.c
@@ -653,6 +653,10 @@ main_init(int argc, const char *argv[],
 		if (Flag(FLOGIN))
 			include(substitute("$HOME/.profile", 0), 0, NULL, true);
 		if (Flag(FTALKING)) {
+#if defined(MKSH_VENDOR_MKSHRC_PATH) && !defined(MKSH_LEGACY_MODE)
+			/* include vendor mkshrc */
+			include(MKSH_VENDOR_MKSHRC_PATH, 0, NULL, true);
+#endif
 			cp = substitute("${ENV:-" MKSHRC_PATH "}", DOTILDE);
 			if (cp[0] != '\0')
 				include(cp, 0, NULL, true);
diff --git a/mksh.1 b/mksh.1
--- a/mksh.1
+++ b/mksh.1
@@ -363,6 +363,11 @@ it is processed; non-existence is silent
 A privileged shell then drops privileges if neither was the
 .Fl p
 option given on the command line nor set during execution of the startup files.
+.Pp
+If enabled at compile time, all interactive shells process a vendor-supplied
+initialisation file before the
+.Ev ENV
+parameter or user mkshrc profile is processed.
 .Ss Command syntax
 The shell begins parsing its input by removing any backslash-newline
 combinations, then breaking it into