lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAJs+hrGe=uyxa3Pp9sAQphjfopGRWKiRY55Tamwa6X68faBsyg@mail.gmail.com>
Date:   Mon, 30 Oct 2023 16:35:19 -0400
From:   Patrick Thompson <ptf@...gle.com>
To:     Heiner Kallweit <hkallweit1@...il.com>
Cc:     netdev@...r.kernel.org, Chun-Hao Lin <hau@...ltek.com>,
        "David S. Miller" <davem@...emloft.net>,
        Eric Dumazet <edumazet@...gle.com>,
        Jakub Kicinski <kuba@...nel.org>,
        Paolo Abeni <pabeni@...hat.com>, linux-kernel@...r.kernel.org,
        nic_swsd@...ltek.com
Subject: Re: [PATCH v2] net: r8169: Disable multicast filter for RTL_GIGA_MAC_VER_46

The packet being filtered out by the multicast filter has a unicast
destination address matching the device, the frame only contains the
eapol protocol and does not have an IPv4 address associated with it.

I will send out a v3 patch with VER_48 included.

Sorry, I sent a non-plaintext email previously so I am resending it.

On Mon, Oct 30, 2023 at 3:38 PM Heiner Kallweit <hkallweit1@...il.com> wrote:
>
> On 30.10.2023 17:52, Patrick Thompson wrote:
> > I wouldn't trust the mc filter, the eap packet being filtered is not a
> > multicast packet so I wonder what else could be erroneously filtered.
> > I do agree that it would be nice to be able to override it for testing
> > purposes.
> >
>
> I'm not an EAP(OL) expert, just read that EAPOL can use unicast,
> broadcast , and ethernet multicast (01:80:C2:00:00:03).
> What's that target MAC and IP4 address of the packet being
> filtered out in your case?
>
> > Would you like me to add MAC_VER_48 to the patch? I would not be able
> > to test and confirm that it affects it in the same way I have for
> > VER_46.
> >
> Yes, VER_48 should be included because it has the same MAC as VER_46.
>
> > It is unfortunate that the naming doesn't quite line up.
> >
> > On Sat, Oct 28, 2023 at 4:38 AM Heiner Kallweit <hkallweit1@...il.com> wrote:
> >>
> >> On 27.10.2023 23:30, Patrick Thompson wrote:
> >>> MAC_VER_46 ethernet adapters fail to detect eapol packets unless
> >>> allmulti is enabled. Add exception for VER_46 in the same way VER_35
> >>> has an exception.
> >>>
> >> MAC_VER_48 (RTL8107E) has the same MAC, just a different PHY.
> >> So I would expect that the same quirk is needed for MAC_VER_48.
> >>
> >> MAC_VER_xx is a little misleading, actually it should be NIC_VER_xx
> >>
> >>> Fixes: 6e1d0b898818 ("r8169:add support for RTL8168H and RTL8107E")
> >>> Signed-off-by: Patrick Thompson <ptf@...gle.com>
> >>> ---
> >>>
> >>> Changes in v2:
> >>> - add Fixes tag
> >>> - add net annotation
> >>> - update description
> >>>
> >>>  drivers/net/ethernet/realtek/r8169_main.c | 3 ++-
> >>>  1 file changed, 2 insertions(+), 1 deletion(-)
> >>>
> >>> diff --git a/drivers/net/ethernet/realtek/r8169_main.c b/drivers/net/ethernet/realtek/r8169_main.c
> >>> index 361b90007148b..a775090650e3a 100644
> >>> --- a/drivers/net/ethernet/realtek/r8169_main.c
> >>> +++ b/drivers/net/ethernet/realtek/r8169_main.c
> >>> @@ -2584,7 +2584,8 @@ static void rtl_set_rx_mode(struct net_device *dev)
> >>>               rx_mode |= AcceptAllPhys;
> >>>       } else if (netdev_mc_count(dev) > MC_FILTER_LIMIT ||
> >>>                  dev->flags & IFF_ALLMULTI ||
> >>> -                tp->mac_version == RTL_GIGA_MAC_VER_35) {
> >>> +                tp->mac_version == RTL_GIGA_MAC_VER_35 ||
> >>> +                tp->mac_version == RTL_GIGA_MAC_VER_46) {
> >>>               /* accept all multicasts */
> >>>       } else if (netdev_mc_empty(dev)) {
> >>>               rx_mode &= ~AcceptMulticast;
> >>
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ