'Get the information items from the specified distro release file.
Returns:
A dictionary containing all information items.'

def _get_distro_release_info(self):

    if self.distro_release_file:
        distro_info = self._parse_distro_release_file(self.distro_release_file)
        basename = os.path.basename(self.distro_release_file)
        match = _DISTRO_RELEASE_BASENAME_PATTERN.match(basename)
        if match:
            distro_info['id'] = match.group(1)
        return distro_info
    else:
        basenames = os.listdir(_UNIXCONFDIR)
        basenames.sort()
        for basename in basenames:
            if (basename in _DISTRO_RELEASE_IGNORE_BASENAMES):
                continue
            match = _DISTRO_RELEASE_BASENAME_PATTERN.match(basename)
            if match:
                try:
                    filepath = os.path.join(_UNIXCONFDIR, basename)
                    distro_info = self._parse_distro_release_file(filepath)
                    if ('name' in distro_info):
                        self.distro_release_file = filepath
                        distro_info['id'] = match.group(1)
                        return distro_info
                except IOError:
                    continue
        return {}
