def public_ip_addresses_list_all(**kwargs):
    '''
    .. versionadded:: 2019.2.0

    List all public IP addresses within a subscription.

    CLI Example:

    .. code-block:: bash

        salt-call azurearm_network.public_ip_addresses_list_all

    '''
    result = {}
    netconn = __utils__['azurearm.get_client']('network', **kwargs)
    try:
        pub_ips = __utils__['azurearm.paged_object_to_list'](netconn.public_ip_addresses.list_all())

        for ip in pub_ips:
            result[ip['name']] = ip
    except CloudError as exc:
        __utils__['azurearm.log_cloud_error']('network', str(exc), **kwargs)
        result = {'error': str(exc)}

    return result