$OpenBSD: patch-vl_h,v 1.3 2006/02/08 13:44:17 todd Exp $ --- vl.h.orig Mon Dec 19 17:51:53 2005 +++ vl.h Sat Jan 28 22:10:33 2006 @@ -279,6 +279,9 @@ typedef struct VLANClientState VLANClien struct VLANClientState { IOReadHandler *fd_read; + /* Packets may still be sent if this returns zero. It's used to + rate-limit the slirp code. */ + IOCanRWHandler *fd_can_read; void *opaque; struct VLANClientState *next; struct VLANState *vlan; @@ -293,8 +296,12 @@ typedef struct VLANState { VLANState *qemu_find_vlan(int id); VLANClientState *qemu_new_vlan_client(VLANState *vlan, - IOReadHandler *fd_read, void *opaque); + IOReadHandler *fd_read, + IOCanRWHandler *fd_can_read, + void *opaque); +int qemu_can_send_packet(VLANClientState *vc); void qemu_send_packet(VLANClientState *vc, const uint8_t *buf, int size); +void qemu_handler_true(void *opaque); void do_info_network(void); @@ -728,6 +735,12 @@ int fdctrl_get_drive_type(fdctrl_t *fdct void isa_ne2000_init(int base, int irq, NICInfo *nd); void pci_ne2000_init(PCIBus *bus, NICInfo *nd); + +/* pcnet.c */ + +extern int nic_pcnet; + +void pci_pcnet_init(PCIBus *bus, NICInfo *nd); /* pckbd.c */