summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/drivers/net/legacy.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/drivers/net/legacy.c b/src/drivers/net/legacy.c
index 1b36c0def..6e9c8ae92 100644
--- a/src/drivers/net/legacy.c
+++ b/src/drivers/net/legacy.c
@@ -21,7 +21,11 @@ struct nic nic;
static int legacy_transmit ( struct net_device *netdev, struct pk_buff *pkb ) {
struct nic *nic = netdev->priv;
struct ethhdr *ethhdr = pkb->data;
+ int pad_len;
+ pad_len = ( ETH_ZLEN - pkb_len ( pkb ) );
+ if ( pad_len > 0 )
+ memset ( pkb_put ( pkb, pad_len ), 0, pad_len );
pkb_pull ( pkb, sizeof ( *ethhdr ) );
nic->nic_op->transmit ( nic, ( const char * ) ethhdr->h_dest,
ntohs ( ethhdr->h_protocol ),