PATCH - Pktgen srcmac fix - Kernel 2.6.22.6

2007-09-01 Thread Adit Ranadive
diff -urNp linux-orig/net/core/pktgen.c linux-mod/net/core/pktgen.c
--- linux-orig/net/core/pktgen.c2007-08-31 02:21:01.0 -0400
+++ linux-mod/net/core/pktgen.c 2007-09-01 20:51:22.0 -0400
@@ -111,6 +111,9 @@
  *
  * 802.1Q/Q-in-Q support by Francesco Fondelli (FF)
<[EMAIL PROTECTED]>
  *
+ * Fixed src_mac command to set source mac of packet to value specified in
+ * command by Adit Ranadive <[EMAIL PROTECTED]>
+ *
  */
 #include 
 #include 
@@ -1415,7 +1418,9 @@ static ssize_t pktgen_if_write(struct fi
}
if (!strcmp(name, "src_mac")) {
char *v = valstr;
+   unsigned char old_smac[ETH_ALEN];
unsigned char *m = pkt_dev->src_mac;
+   memcpy(old_smac, pkt_dev->src_mac, ETH_ALEN);

len = strn_len(_buffer[i], sizeof(valstr) - 1);
if (len < 0) {
@@ -1445,6 +1450,10 @@ static ssize_t pktgen_if_write(struct fi
}
}

+   /* 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");
return count;
}


-- 
Adit Ranadive
MS CS Candidate
Georgia Institute of Technology,
Atlanta, GA
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


PATCH - Pktgen srcmac fix - Kernel 2.6.22.6

2007-09-01 Thread Adit Ranadive
diff -urNp linux-orig/net/core/pktgen.c linux-mod/net/core/pktgen.c
--- linux-orig/net/core/pktgen.c2007-08-31 02:21:01.0 -0400
+++ linux-mod/net/core/pktgen.c 2007-09-01 20:51:22.0 -0400
@@ -111,6 +111,9 @@
  *
  * 802.1Q/Q-in-Q support by Francesco Fondelli (FF)
[EMAIL PROTECTED]
  *
+ * Fixed src_mac command to set source mac of packet to value specified in
+ * command by Adit Ranadive [EMAIL PROTECTED]
+ *
  */
 #include linux/sys.h
 #include linux/types.h
@@ -1415,7 +1418,9 @@ static ssize_t pktgen_if_write(struct fi
}
if (!strcmp(name, src_mac)) {
char *v = valstr;
+   unsigned char old_smac[ETH_ALEN];
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);
if (len  0) {
@@ -1445,6 +1450,10 @@ static ssize_t pktgen_if_write(struct fi
}
}

+   /* 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);
return count;
}


-- 
Adit Ranadive
MS CS Candidate
Georgia Institute of Technology,
Atlanta, GA
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/