Block a specific ICMP type on a zone

    .. versionadded:: 2015.8.0

    CLI Example:

    .. code-block:: bash

        salt '*' firewalld.block_icmp zone echo-reply

def block_icmp(zone, icmp, permanent=True):
    '''
    Block a specific ICMP type on a zone

    .. versionadded:: 2015.8.0

    CLI Example:

    .. code-block:: bash

        salt '*' firewalld.block_icmp zone echo-reply
    '''
    if icmp not in get_icmp_types(permanent):
        log.error('Invalid ICMP type')
        return False

    if icmp in list_icmp_block(zone, permanent):
        log.info('ICMP block already exists')
        return 'success'

    cmd = '--zone={0} --add-icmp-block={1}'.format(zone, icmp)

    if permanent:
        cmd += ' --permanent'

    return __firewall_cmd(cmd)