def firewall_rule_update(client, firewall_rule_name, server_name,
    resource_group_name, start_ip_address=None, end_ip_address=None):
    """
    Updates a firewall rule.
    """
    instance = client.get(firewall_rule_name=firewall_rule_name,
        server_name=server_name, resource_group_name=resource_group_name)
    return client.create_or_update(firewall_rule_name=firewall_rule_name,
        server_name=server_name, resource_group_name=resource_group_name,
        start_ip_address=start_ip_address or instance.start_ip_address,
        end_ip_address=end_ip_address or instance.end_ip_address)
