$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 */
 
