Commit 7efb75b1 authored by Simon Goldschmidt's avatar Simon Goldschmidt Committed by Joe Hershberger

net: designware: clear padding bytes

Short frames are padded to the minimum allowed size of 60 bytes.
However, the designware driver sends old data in these padding bytes.
It is common practice to zero out these padding bytes ro prevent
leaking memory contents to other hosts.

Fix the padding code to zero out the padded bytes at the end.

Tested on socfpga gen5.
Signed-off-by: default avatarSimon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
Acked-by: Joe Hershberger's avatarJoe Hershberger <joe.hershberger@ni.com>
parent ae8ac8d4
......@@ -380,9 +380,11 @@ static int _dw_eth_send(struct dw_eth_dev *priv, void *packet, int length)
return -EPERM;
}
length = max(length, ETH_ZLEN);
memcpy((void *)data_start, packet, length);
if (length < ETH_ZLEN) {
memset(&((char *)data_start)[length], 0, ETH_ZLEN - length);
length = ETH_ZLEN;
}
/* Flush data to be sent */
flush_dcache_range(data_start, data_end);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment