Hi, Here's a new series of patches mainly to fix qemu_announce_self() with -netdev as discussed earlier on the list.
I would have liked to have split the series in three, but there would be conflicts between each, so here goes: 1) Patches 01 to 05 - net.c cleanups These patches continue the job of moving net backends from net.c to individual files in the net/ directory 2) Patches 06 to 39 - fix qemu_annonuce_self() The basic issue is that we need a sane way of iterating all the NICs on the system, obtaining the MAC address for each and inject a packet from each. The series splits out the per-device-type data from VLANClientState into a new structure called NetClientInfo. It further allows devices to inherit from VLANClientState and introduces a NICState struct and qemu_new_nic() constructor for NICs. That's a huge amount of churn just to fix qemu_announce_self(), but I think the end result is a very nice cleanup to the net API. 3) Patches 40 to 44 - misc fixes Some small misc networking fixes, including the two posted by Pierre Riteau earlier. I've given all this quite a bit of compile and runtime testing and it seems in good shape. Thanks, Mark.