35 lines
1.1 KiB
Diff
35 lines
1.1 KiB
Diff
---
|
|
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
|