HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux ip-10-0-8-47 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:31:58 UTC 2024 aarch64
User: ubuntu (1000)
PHP: 8.1.2-1ubuntu2.22
Disabled: NONE
Upload Files
File: //var/www/admin.javaapp.co.uk/vendor/aws/aws-sdk-php/src/Token/ParsesIniTrait.php
<?php
namespace Aws\Token;

trait ParsesIniTrait
{
    /**
     * Gets profiles from specified $filename, or default ini files.
     */
    private static function loadProfiles($filename)
    {
        $profileData = \Aws\parse_ini_file($filename, true, INI_SCANNER_RAW);
        $configFilename = self::getHomeDir() . '/.aws/config';
        if (is_readable($configFilename)) {
            $configProfiles = \Aws\parse_ini_file($configFilename, true, INI_SCANNER_RAW);
            $profileData = array_merge($configProfiles, $profileData);
        }
        foreach ($profileData as $name => $profile) {
            // standardize config profile names
            $name = str_replace('profile ', '', $name);
            $profileData[$name] = $profile;
        }

        return $profileData;
    }

    /**
     * Gets the environment's HOME directory if available.
     *
     * @return null|string
     */
    private static function getHomeDir()
    {
        // On Linux/Unix-like systems, use the HOME environment variable
        if ($homeDir = getenv('HOME')) {
            return $homeDir;
        }

        // Get the HOMEDRIVE and HOMEPATH values for Windows hosts
        $homeDrive = getenv('HOMEDRIVE');
        $homePath = getenv('HOMEPATH');

        return ($homeDrive && $homePath) ? $homeDrive . $homePath : null;
    }
}