[PKTGEN]: srcmac fix
From: Adit Ranadive <adit.262@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>hifive-unleashed-5.1
parent
6ae5f983cf
commit
ce5d0b47f1
|
@ -111,6 +111,9 @@
|
||||||
*
|
*
|
||||||
* 802.1Q/Q-in-Q support by Francesco Fondelli (FF) <francesco.fondelli@gmail.com>
|
* 802.1Q/Q-in-Q support by Francesco Fondelli (FF) <francesco.fondelli@gmail.com>
|
||||||
*
|
*
|
||||||
|
* Fixed src_mac command to set source mac of packet to value specified in
|
||||||
|
* command by Adit Ranadive <adit.262@gmail.com>
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
#include <linux/sys.h>
|
#include <linux/sys.h>
|
||||||
#include <linux/types.h>
|
#include <linux/types.h>
|
||||||
|
@ -1451,8 +1454,11 @@ static ssize_t pktgen_if_write(struct file *file,
|
||||||
}
|
}
|
||||||
if (!strcmp(name, "src_mac")) {
|
if (!strcmp(name, "src_mac")) {
|
||||||
char *v = valstr;
|
char *v = valstr;
|
||||||
|
unsigned char old_smac[ETH_ALEN];
|
||||||
unsigned char *m = pkt_dev->src_mac;
|
unsigned char *m = pkt_dev->src_mac;
|
||||||
|
|
||||||
|
memcpy(old_smac, pkt_dev->src_mac, ETH_ALEN);
|
||||||
|
|
||||||
len = strn_len(&user_buffer[i], sizeof(valstr) - 1);
|
len = strn_len(&user_buffer[i], sizeof(valstr) - 1);
|
||||||
if (len < 0) {
|
if (len < 0) {
|
||||||
return len;
|
return len;
|
||||||
|
@ -1481,6 +1487,10 @@ static ssize_t pktgen_if_write(struct file *file,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Set up Src MAC */
|
||||||
|
if (compare_ether_addr(old_smac, pkt_dev->src_mac))
|
||||||
|
memcpy(&(pkt_dev->hh[6]), pkt_dev->src_mac, ETH_ALEN);
|
||||||
|
|
||||||
sprintf(pg_result, "OK: srcmac");
|
sprintf(pg_result, "OK: srcmac");
|
||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue