Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 18760
b: refs/heads/master
c: f404e9a
h: refs/heads/master
v: v3
  • Loading branch information
Kris Katterjohn authored and David S. Miller committed Jan 17, 2006
1 parent a2792cc commit bb48859
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 24 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: a8fc3d8decfd5601fb14a2163952f81fa6b971bb
refs/heads/master: f404e9a67ffdc0bb0302a5ad1f7eaf58e5a59109
34 changes: 11 additions & 23 deletions trunk/net/core/pktgen.c
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
#include <linux/wait.h>
#include <linux/etherdevice.h>
#include <net/checksum.h>
#include <net/ipv6.h>
#include <net/addrconf.h>
Expand Down Expand Up @@ -281,8 +282,8 @@ struct pktgen_dev {
__u32 src_mac_count; /* How many MACs to iterate through */
__u32 dst_mac_count; /* How many MACs to iterate through */

unsigned char dst_mac[6];
unsigned char src_mac[6];
unsigned char dst_mac[ETH_ALEN];
unsigned char src_mac[ETH_ALEN];

__u32 cur_dst_mac_offset;
__u32 cur_src_mac_offset;
Expand Down Expand Up @@ -594,16 +595,9 @@ static int pktgen_if_show(struct seq_file *seq, void *v)

seq_puts(seq, " src_mac: ");

if ((pkt_dev->src_mac[0] == 0) &&
(pkt_dev->src_mac[1] == 0) &&
(pkt_dev->src_mac[2] == 0) &&
(pkt_dev->src_mac[3] == 0) &&
(pkt_dev->src_mac[4] == 0) &&
(pkt_dev->src_mac[5] == 0))

if (is_zero_ether_addr(pkt_dev->src_mac))
for (i = 0; i < 6; i++)
seq_printf(seq, "%02X%s", pkt_dev->odev->dev_addr[i], i == 5 ? " " : ":");

else
for (i = 0; i < 6; i++)
seq_printf(seq, "%02X%s", pkt_dev->src_mac[i], i == 5 ? " " : ":");
Expand Down Expand Up @@ -1189,9 +1183,9 @@ static ssize_t pktgen_if_write(struct file *file, const char __user *user_buffer
}
if (!strcmp(name, "dst_mac")) {
char *v = valstr;
unsigned char old_dmac[6];
unsigned char old_dmac[ETH_ALEN];
unsigned char *m = pkt_dev->dst_mac;
memcpy(old_dmac, pkt_dev->dst_mac, 6);
memcpy(old_dmac, pkt_dev->dst_mac, ETH_ALEN);

len = strn_len(&user_buffer[i], sizeof(valstr) - 1);
if (len < 0) { return len; }
Expand Down Expand Up @@ -1220,8 +1214,8 @@ static ssize_t pktgen_if_write(struct file *file, const char __user *user_buffer
}

/* Set up Dest MAC */
if (memcmp(old_dmac, pkt_dev->dst_mac, 6) != 0)
memcpy(&(pkt_dev->hh[0]), pkt_dev->dst_mac, 6);
if (compare_ether_addr(old_dmac, pkt_dev->dst_mac))
memcpy(&(pkt_dev->hh[0]), pkt_dev->dst_mac, ETH_ALEN);

sprintf(pg_result, "OK: dstmac");
return count;
Expand Down Expand Up @@ -1560,17 +1554,11 @@ static void pktgen_setup_inject(struct pktgen_dev *pkt_dev)

/* Default to the interface's mac if not explicitly set. */

if ((pkt_dev->src_mac[0] == 0) &&
(pkt_dev->src_mac[1] == 0) &&
(pkt_dev->src_mac[2] == 0) &&
(pkt_dev->src_mac[3] == 0) &&
(pkt_dev->src_mac[4] == 0) &&
(pkt_dev->src_mac[5] == 0)) {
if (is_zero_ether_addr(pkt_dev->src_mac))
memcpy(&(pkt_dev->hh[6]), pkt_dev->odev->dev_addr, ETH_ALEN);

memcpy(&(pkt_dev->hh[6]), pkt_dev->odev->dev_addr, 6);
}
/* Set up Dest MAC */
memcpy(&(pkt_dev->hh[0]), pkt_dev->dst_mac, 6);
memcpy(&(pkt_dev->hh[0]), pkt_dev->dst_mac, ETH_ALEN);

/* Set up pkt size */
pkt_dev->cur_pkt_size = pkt_dev->min_pkt_size;
Expand Down

0 comments on commit bb48859

Please sign in to comment.