This fixes OSE breakage from recent changes to kernel data structures:

Index: src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c
===================================================================
--- src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c    (revision 20732)
+++ src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c    (working copy)
@@ -161,16 +161,29 @@
     return &pPriv->Stats;
 }

+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 30)
+/* Thanks to Larry Finger */
+static const struct net_device_ops vbox_netdev_ops =
+{
+       .ndo_open = vboxNetAdpLinuxOpen,
+       .ndo_stop = vboxNetAdpLinuxStop,
+       .ndo_start_xmit = vboxNetAdpLinuxXmit,
+       .ndo_get_stats = vboxNetAdpLinuxGetStats,
+};
+#endif
+
 static void vboxNetAdpNetDevInit(struct net_device *pNetDev)
 {
     PVBOXNETADPPRIV pPriv;
-
     ether_setup(pNetDev);
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 30)
+       pNetDev->netdev_ops = &vbox_netdev_ops;
+#else
     pNetDev->open = vboxNetAdpLinuxOpen;
     pNetDev->stop = vboxNetAdpLinuxStop;
     pNetDev->hard_start_xmit = vboxNetAdpLinuxXmit;
     pNetDev->get_stats = vboxNetAdpLinuxGetStats;
-
+#endif
     pPriv = netdev_priv(pNetDev);
     memset(pPriv, 0, sizeof(*pPriv));
 }


_______________________________________________
vbox-dev mailing list
[email protected]
http://vbox.innotek.de/mailman/listinfo/vbox-dev

Reply via email to