<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def host_errors(self, hostname, details):
 """ Validates the format of a host entry Returns an error string, or None if it is valid. """

        if not hostname or not isinstance(hostname, basestring):
            return "hostname_invalid"
        if not isinstance(details, list):
            return "host_details_not_list"
        if len(details) != 3:
            return "host_details_wrong_length"
        if details[0] not in self.balancer.action_mapping:
            return "host_action_invalid:%s" % details[0]
        if not isinstance(details[1], dict):
            return "host_kwargs_not_dict"
        if not isinstance(details[2], bool):
            return "host_match_subdomains_not_bool"
        return None