net: phy: mscc: macsec: clear encryption keys when freeing a flow
authorAntoine Tenart <atenart@kernel.org>
Tue, 8 Nov 2022 15:34:58 +0000 (16:34 +0100)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 10 Nov 2022 10:58:52 +0000 (11:58 +0100)
Commit aaab73f8fba4 ("macsec: clear encryption keys from the stack after
setting up offload") made sure to clean encryption keys from the stack
after setting up offloading, but the MSCC PHY driver made a copy, kept
it in the flow data and did not clear it when freeing a flow. Fix this.

Fixes: 28c5107aa904 ("net: phy: mscc: macsec support")
Signed-off-by: Antoine Tenart <atenart@kernel.org>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/phy/mscc/mscc_macsec.c

index ee5b17e..f81b077 100644 (file)
@@ -632,6 +632,7 @@ static void vsc8584_macsec_free_flow(struct vsc8531_private *priv,
 
        list_del(&flow->list);
        clear_bit(flow->index, bitmap);
+       memzero_explicit(flow->key, sizeof(flow->key));
        kfree(flow);
 }