From patchwork Mon Oct 12 14:50:13 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mathieu Desnoyers X-Patchwork-Id: 270059 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 713AEC433DF for ; Mon, 12 Oct 2020 14:50:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 255F420838 for ; Mon, 12 Oct 2020 14:50:46 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=efficios.com header.i=@efficios.com header.b="fUWGyVTx" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389261AbgJLOud (ORCPT ); Mon, 12 Oct 2020 10:50:33 -0400 Received: from mail.efficios.com ([167.114.26.124]:60656 "EHLO mail.efficios.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388863AbgJLOub (ORCPT ); Mon, 12 Oct 2020 10:50:31 -0400 Received: from localhost (localhost [127.0.0.1]) by mail.efficios.com (Postfix) with ESMTP id ABF362EA059; Mon, 12 Oct 2020 10:50:30 -0400 (EDT) Received: from mail.efficios.com ([127.0.0.1]) by localhost (mail03.efficios.com [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id ylX4YACMqMz3; Mon, 12 Oct 2020 10:50:30 -0400 (EDT) Received: from localhost (localhost [127.0.0.1]) by mail.efficios.com (Postfix) with ESMTP id 4AA842EA307; Mon, 12 Oct 2020 10:50:30 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.10.3 mail.efficios.com 4AA842EA307 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=efficios.com; s=default; t=1602514230; bh=6JJLYbIiDsurP4dRMWEhOsV6YojXCxj+vo9sq1iAj6I=; h=From:To:Date:Message-Id; b=fUWGyVTxyPs4lbHyk7pjmgzyk2arFqDKtTlB5mTNe1DaYbQLCevUJwdKM5it3u4UI JAjfRc9MRtBt69azHzPd18xDSmnSFibSo/KJG+L68AHxJy7LI8jIlJzqXcphe2Ze+i GejBW7kvvKK7HES6Qn408kH2eRXwwSo+YaQgGjzRh3FT4QCNMUWLs7SJh4ttLSOv7Z 3xzSoKvq90KYwYkEanRFzZbsp3uYb4hi7fqHzLs0TG/F7hhy0TyEgAiGCmfZGlArUK qI+Slm1vUiQl0ZUDI1I5cZY+7KOXnCczm0+UCo3vIMUiAeFyN3Laq0rjuHDww2CrZI Ee4AGl0owmElQ== X-Virus-Scanned: amavisd-new at efficios.com Received: from mail.efficios.com ([127.0.0.1]) by localhost (mail03.efficios.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 1qmbUD9q-rZs; Mon, 12 Oct 2020 10:50:30 -0400 (EDT) Received: from localhost.localdomain (192-222-181-218.qc.cable.ebox.net [192.222.181.218]) by mail.efficios.com (Postfix) with ESMTPSA id 153142E9FD5; Mon, 12 Oct 2020 10:50:30 -0400 (EDT) From: Mathieu Desnoyers To: David Ahern , Jakub Kicinski , "David S . Miller" , netdev@vger.kernel.org Cc: linux-kernel@vger.kernel.org, Mathieu Desnoyers Subject: [PATCH 0/3] l3mdev icmp error route lookup fixes Date: Mon, 12 Oct 2020 10:50:13 -0400 Message-Id: <20201012145016.2023-1-mathieu.desnoyers@efficios.com> X-Mailer: git-send-email 2.17.1 Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Hi, Here is a series of fixes for ipv4 and ipv6 which ensure the route lookup is performed on the right routing table in VRF configurations when sending TTL expired icmp errors (useful for traceroute). It includes tests for both ipv4 and ipv6. These fixes address specifically address the code paths involved in sending TTL expired icmp errors. As detailed in the individual commit messages, those fixes do not address similar icmp errors related to network namespaces and unreachable / fragmentation needed messages, which appear to use different code paths. Thanks, Mathieu Mathieu Desnoyers (2): ipv4/icmp: l3mdev: Perform icmp error route lookup on source device routing table (v2) ipv6/icmp: l3mdev: Perform icmp error route lookup on source device routing table (v2) Michael Jeanson (1): selftests: Add VRF route leaking tests net/ipv4/icmp.c | 23 +- net/ipv6/icmp.c | 7 +- net/ipv6/ip6_output.c | 2 - tools/testing/selftests/net/Makefile | 1 + .../selftests/net/vrf_route_leaking.sh | 626 ++++++++++++++++++ 5 files changed, 653 insertions(+), 6 deletions(-) create mode 100755 tools/testing/selftests/net/vrf_route_leaking.sh