aboutsummaryrefslogtreecommitdiff
path: root/src/rc/rc.c
diff options
context:
space:
mode:
authorWilliam Hubbs <w.d.hubbs@gmail.com>2015-12-07 17:56:02 -0600
committerWilliam Hubbs <w.d.hubbs@gmail.com>2015-12-08 12:09:33 -0600
commit9f6e05671d6d48faa7b83aec05a637bcdfcb3f82 (patch)
tree9bd6a120ddac1c57eda065dac7d98e6280ec8996 /src/rc/rc.c
parent8addd7913a743b75ef3854ab4a96fea81cc5245d (diff)
Convert rc_sys() calls to detect_container() and detect_vm()
Diffstat (limited to 'src/rc/rc.c')
-rw-r--r--src/rc/rc.c20
1 files changed, 16 insertions, 4 deletions
diff --git a/src/rc/rc.c b/src/rc/rc.c
index 8f69333c..ddc3c789 100644
--- a/src/rc/rc.c
+++ b/src/rc/rc.c
@@ -274,7 +274,11 @@ open_shell(void)
struct passwd *pw;
#ifdef __linux__
- const char *sys = rc_sys();
+ const char *sys = NULL;
+
+ sys = detect_container();
+ if (!sys)
+ sys = detect_vm();
/* VSERVER and OPENVZ systems cannot really drop to shells */
if (sys &&
@@ -480,7 +484,10 @@ do_sysinit()
uts.machine);
#endif
- if ((sys = rc_sys()))
+ sys = detect_container();
+ if (!sys)
+ sys = detect_vm();
+ if (sys)
printf(" [%s]", sys);
printf("%s\n\n", ecolor(ECOLOR_NORMAL));
@@ -495,7 +502,10 @@ do_sysinit()
/* init may have mounted /proc so we can now detect or real
* sys */
- if ((sys = rc_sys()))
+ sys = detect_container();
+ if (!sys)
+ sys = detect_vm();
+ if (sys)
setenv("RC_SYS", sys, 1);
}
@@ -846,7 +856,9 @@ main(int argc, char **argv)
eerrorx("%s: %s", applet, strerror(errno));
/* NOTREACHED */
case 'S':
- systype = rc_sys();
+ systype = detect_container();
+ if (!systype)
+ systype = detect_vm();
if (systype)
printf("%s\n", systype);
exit(EXIT_SUCCESS);