On Sun, Jul 04, 2010 at 07:31:00PM +0000, Antti Kantee wrote: > Module Name: src > Committed By: pooka > Date: Sun Jul 4 19:30:59 UTC 2010 > > Added Files: > src/tests/net/icmp: Atffile Makefile t_forward.c > > Log Message: > Add test case for PR kern/43548 > > Due to the nature of the feature under test, this one is a little > different, so let me explain how it works. > > The test program forks and bootstraps a rump kernel in both processes. > It then configures shared memory interfaces in both. shmif is nice > in that it uses a mmaped file as the bus and does not require root > privileges for communication between two (or more) processes. The > child process then proceeds to increase icmp.returndatabytes as > indicated by the PR, while the parent process sets the global TTL > of the rump kernel to 1 (note: both values only affect the respective > rump kernels, not each other or more importantly the host kernel). > The parent then sends the bad packet which is supposed to be routed > by the child. If ip_icmp.c was too old, *boom* + fail; otherwise > nothing bad happens and the test exists with success after one > second. > > Eventually this test can be extended into a framework for automated > testing of any networking code which requires (arbitrarily complex) > routing setups.
I don't understand exactly how you're doing this, but I admire what you can do with it now :) Thomas