def pool_config(config):
    """List of DNS slave information from user defined config

    Creates a dict for each backends and returns a list of those dicts.
    The designate config file has a section per backend. The template uses
    the nameserver and pool_target names to create a section for each
    backend.

    @returns: list [{'nameserver': name,
                     'pool_target': name,
                     'address': slave_ip_addr,
                     'rndc_key_file': rndc_key_file},
                    ...]
    """
    pconfig = []
    for entry in config.dns_slaves.split():
        address, port, key = entry.split(':')
        unit_name = address.replace('.', '_')
        pconfig.append({
            'nameserver': 'nameserver_{}'.format(unit_name),
            'pool_target': 'nameserver_{}'.format(unit_name),
            'address': address,
            'rndc_key_file': '/etc/designate/rndc_{}.key'.format(
                unit_name),
        })
    return pconfig