On Fri, Apr 27, 2007 at 05:46:29PM +0100, Antoine Martin wrote: > Attached. > > Not sure which approach is best: > > 1) this one requires a command line like: > "vmlinux eth0=pcap,eth0,,mac=00:01:02:03:04:05" > 2) or this one: which just assumes that the mac address is any option > that isn't [no]promisc or [no]optimize and is 17 characters long (I > don't see much point in doing extra checks since this is check in > setup_ether_xx later on) Or, how about this: Index: linux-2.6.21-mm/arch/um/drivers/pcap_kern.c =================================================================== --- linux-2.6.21-mm.orig/arch/um/drivers/pcap_kern.c 2007-04-27 16:15:41.000000000 -0400 +++ linux-2.6.21-mm/arch/um/drivers/pcap_kern.c 2007-04-27 16:15:57.000000000 -0400 @@ -70,7 +70,7 @@ int pcap_setup(char *str, char **mac_out .filter = NULL }); remain = split_if_spec(str, &host_if, &init->filter, - &options[0], &options[1], NULL); + &options[0], &options[1], mac_out, NULL); if(remain != NULL){ printk(KERN_ERR "pcap_setup - Extra garbage on " "specification : '%s'\n", remain); You end up using it like so: eth0=pcap,eth0,tcp,,,2:1:2:3:4:5 You need to toss in some commas so the MAC doesn't get mistaken for a pcap option. If you have violent objections to this, we can make this work with your 'mac=blah' thing. I like it because it's more consistent with how everything else specifies MACs. Attached are a couple other patches I did in order to fix all the bugs I encountered in making this work. You may need them in order for the above to apply cleanly. Jeff -- Work email - jdike at linux dot intel dot com