diff options
author | William Hubbs <w.d.hubbs@gmail.com> | 2015-12-07 17:56:02 -0600 |
---|---|---|
committer | William Hubbs <w.d.hubbs@gmail.com> | 2015-12-08 12:09:33 -0600 |
commit | 9f6e05671d6d48faa7b83aec05a637bcdfcb3f82 (patch) | |
tree | 9bd6a120ddac1c57eda065dac7d98e6280ec8996 /src/rc/rc.c | |
parent | 8addd7913a743b75ef3854ab4a96fea81cc5245d (diff) |
Convert rc_sys() calls to detect_container() and detect_vm()
Diffstat (limited to 'src/rc/rc.c')
-rw-r--r-- | src/rc/rc.c | 20 |
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); |