PATCH - Pktgen srcmac fix - Kernel 2.6.22.6
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
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/