timestamp); $formattedTime = strftime("%k:%M", strtotime($date->month."/".$date->day."/".$date->year." ".$date->hour.":".$date->minute.":".$date->second)); // Check the timezone to see if it is custom. If so, // "Custom" will be shown as the timezone in the report. $ret_val = get_custom_tz_dst($user); $ret_val_array = explode ("?",$ret_val->custom_tz_dst); $CustomTZMethod = $ret_val_array[0]; $UseCustomTZ = ($CustomTZMethod == 'EXACT'); $networkConfig = get_network_configuration_ipv4($user); $productInfo = get_product_info($user); error_log("Product Info = " . print_r($productInfo, true )); $sortCriteria = new SortCriteria(); $sortCriteria->sortColumn = 3; $sortCriteria->ascending = 1; $sortCriteria->filterPattern = "*"; $drives = get_all_drives_ex($user, $sortCriteria); $iobs = get_blades($user); error_log("FC I/O Blades = " . print_r($iobs, true )); $sort = new SortCriteria(); $libs = get_logical_libraries($user, $sort); $IPv6Enabled = is_ipv6_enabled(); $ipv6Addrs = get_all_ipv6_addresses(); error_log("ipv6Addrs = ". print_r($ipv6Addrs, true ) ); //$ipv6Addrs = array("2001::55:ee/64", "2001::55:3e/64", "2001::55:2e/64", "2001::55:1e/64", "2001::55:e9/64", "2001::55:e8/64", "2001::55:e7/64", "2001::55:e6/64", "2001::55:e5/64", "2001::55:e4/64", "2001::55:e3/64", "2001::55:e2/64", "2001::55:e1/64" ); // Must be brand 'dell' $theSN = $productInfo->serialnumber; $ApolloVer = ""; // Is this an Apollo robot? $descriptions = get_firmware_versions($user); error_log("get_firmware_versions = ". print_r($descriptions, true) ); $isApollo = false; foreach($descriptions as $description) { // CR 19990 Do not diaply the Apollo imager version if( $description->component == "Robot Firmware" ) { $ApolloVer = $description->version; if($ApolloVer == "") // If the robot is dead this can come back blank $ApolloVer = "N/A"; break; } } // Handle the encryption stuff $doEKM = is_ibm_encryption_licensed($user); if ($doEKM) { $akmServAvail = @akm_servers_available($user); if ($akmServAvail == 1) // Ensure that both are up { $qkmVer = akm_get_software_version($user); error_log("akm_get_software_version returned ". print_r($ver,true) ); } else { $qkmVer = "Unknown"; error_log("akm servers not available, setting qkm version to Unknown"); } $akm_data = get_ekm( $user, 2 ); error_log("akm_data = ". print_r($akm_data, true) ); $ekm_data = get_ekm( $user, 1 ); //!?! get_akm( $user ); error_log("ekm_data = ". print_r($ekm_data, true) ); $ekmServerDefault = ""; // If this is blank the display will show Q-EKM else it will so what is in the var. $sslEnabled = $ekm_data->sslEnabled? Enabled : Disabled;//get_ekm_ssl($user)? Enabled : Disabled; } ?> System Information Report
 
Date & Time
Date Time Time Zone
 
Physical Library
Host Name IPv4 Address Serial Number Firmware Version
IPv6 Addresses

BSP Level Last update BSP Level Last update Robot Firmware Version
 
Library Partitions
Name Serial Number Control Path Mode Encryption Slots Media Drives
filterColumn = 0; $sortCriteria->ascending = true; $libraryDrives = get_all_drives_by_library($user, $lib->guid, $sortCriteria, (int) 0, (int) MEDIA_TYPE_ANY); $ekm_data_lib = get_ekm_by_library( $user, $lib->guid ); //error_log(print_r($libraryDrives, true)); $cpDrives = get_command_path_drives($user, $lib->guid); $commandPath = "None"; $foundCommandPath = false; foreach ($libraryDrives as $libraryDrive) { foreach ($cpDrives as $cpDrive) { if ($cpDrive == $libraryDrive->guid) { error_log("Command Path Drive interface type is :". print_r($libraryDrive->interfaceType,true) ); if ($libraryDrive->interfaceType == 'SCSI') { $commandPath = "SCSI ID ".$libraryDrive->scsiId; } else if ($libraryDrive->interfaceType == 'Fibre' && $libraryDrive->wwnn) { $commandPath = "WWNN ".$libraryDrive->wwnn; } else if ($libraryDrive->interfaceType == 'SAS' && $libraryDrive->wwnn) { # PCR 21072: Remove colon from SAS Address # PCR 21076: Show wwpn instead of wwnn, and change the label to "SAS Address" $saswwpn = str_replace(":", "", $libraryDrive->wwpn); $commandPath = "SAS Address
".$saswwpn; } $foundCommandPath = true; break; } } if ($foundCommandPath) break; } if ($foundCommandPath == false) { // If we still have not found a control path and there is a blade in the system - then make the Cp the blade. if( sizeof($iobs) != 0 ) { // Has BLADES $commandPath = "FC I/O Blade"; } } // Get the currents library's encryption status error_log("Guid:".$lib->guid); $EncryptionMethod = array( "N/A", "None", "System Managed", "Application Managed", "Library Managed", "Custom" ); $encryptData = get_partition_enryption($user, $lib->guid); // Make sure the method is valid - if not make it N/A if( $encryptData->method > sizeof($EncryptionMethod)) $encryptData->method = 0; // Check that encryption is supported by the partition. if not, // show the method as "unsupported". if(!GetEncryptionSupported($libraryDrives)) { $encryptionString = "Unsupported"; $encryptData->method = 0; } else $encryptionString = $EncryptionMethod[$encryptData->method]; // Make sure the method is valid - if not make it N/A if( $encryptData->method > sizeof($EncryptionMethod)) $encryptData->method = 0; // Note: This array is used below to display the encryption methods for the drives. $libraryEncryption[$lib->name] = $EncryptionMethod[$encryptData->method]; $ekm_data_lib = get_ekm_by_library( $user, $lib->guid ); if ($ekm_data_lib->serverType==1) { $encryptionType = "EKM"; } else { $encryptionType = "N/A"; } ?>
 
Drives
Location Vendor Model Type Serial Number Firmware Level Sled Boot Version Sled App Version Encryption FC I/O Blade
connected
guid ); error_log("drive->encryptionSupported = ". ($drive->encryptionSupported?"true":"false") ." | Location = ". $drive->location ); if( ($drive->encryptionSupported) && ($drive->driveType >= 'LTO-4') && ($drive->vendor == 'IBM') ) { //error_log("\n\nDriveName = ". $drive->name ." !"); $driveEncryption = $libraryEncryption[$drive->name]; $encryptionType = "EKM"; } else { $driveEncryption = "N/A"; $encryptionType = "N/A"; } ?>