diff options
author | Chris Buechler <cmb@pfsense.org> | 2016-04-23 02:52:09 -0500 |
---|---|---|
committer | Chris Buechler <cmb@pfsense.org> | 2016-04-23 02:52:09 -0500 |
commit | df5c2c73cee730192fa05fd31d270172f70baa91 (patch) | |
tree | c980b949bf0f67febb020d90e88b7efa2c4ec5df /src/usr/local | |
parent | fe86a6630336536fe8d49047793868516711d960 (diff) | |
download | pfsense-df5c2c73cee730192fa05fd31d270172f70baa91.zip pfsense-df5c2c73cee730192fa05fd31d270172f70baa91.tar.gz |
Add Hyper-V support to system_identify_specific_platform, and disable S.M.A.R.T. actions in Hyper-V guests. Ticket #6147
Diffstat (limited to 'src/usr/local')
-rw-r--r-- | src/usr/local/www/diag_smart.php | 7 | ||||
-rw-r--r-- | src/usr/local/www/widgets/widgets/smart_status.widget.php | 9 |
2 files changed, 15 insertions, 1 deletions
diff --git a/src/usr/local/www/diag_smart.php b/src/usr/local/www/diag_smart.php index 1bb0a37..baeef54 100644 --- a/src/usr/local/www/diag_smart.php +++ b/src/usr/local/www/diag_smart.php @@ -126,6 +126,13 @@ $tab_array[0] = array(htmlspecialchars(gettext("Information & Tests")), ($action $tab_array[1] = array(gettext("Config"), ($action == 'config'), $_SERVER['PHP_SELF'] . "?action=config"); display_top_tabs($tab_array); +$specplatform = system_identify_specific_platform(); +if ($specplatform['name'] == "Hyper-V") { + echo gettext("S.M.A.R.T. is not supported in Hyper-V guests."); + include("foot.inc"); + exit; +} + switch ($action) { // Testing devices case 'test': diff --git a/src/usr/local/www/widgets/widgets/smart_status.widget.php b/src/usr/local/www/widgets/widgets/smart_status.widget.php index c55d39a..16beb40 100644 --- a/src/usr/local/www/widgets/widgets/smart_status.widget.php +++ b/src/usr/local/www/widgets/widgets/smart_status.widget.php @@ -61,6 +61,11 @@ require_once("guiconfig.inc"); require_once("pfsense-utils.inc"); require_once("functions.inc"); require_once("/usr/local/www/widgets/include/smart_status.inc"); + +$specplatform = system_identify_specific_platform(); +if ($specplatform['name'] == "Hyper-V") { + exit; +} ?> <table class="table table-striped table-hover"> @@ -76,7 +81,9 @@ require_once("/usr/local/www/widgets/include/smart_status.inc"); <?php $devs = array(); ## Get all adX, daX, and adaX (IDE, SCSI, and AHCI) devices currently installed -$devs = get_smart_drive_list(); +if ($specplatform['name'] != "Hyper-V") { + $devs = get_smart_drive_list(); +} if (count($devs) > 0) { foreach ($devs as $dev) { ## for each found drive do |