> dev_base is a global variable of type struct net_device * > and should be accessed using a read/write lock, dev_base_lock. > (If in uniprocessor machine lock doesn't matter). > > Parsing through the list u can find the appropriate network > device ( one way is identifying by the name such eth0,.. > in the name field). > > And then can make use of the function pointer > hard_start_xmit in the structure net_device. ok when i have obtained the hard_start_xmit function that way, i can call it just like that with the two required arguments? i tried that once but as i said earlier that resulted in a kernel oops. (i did the function call only, not anything locking related. is it actually necessarry to lock the kernel for the moment the function is called?) another question would be, how can i build my struct sk_buff and struct net_device the correct way? for example if i want to send a packet with the ack flag set from that level. passing empty structs doesnt make sense, obviously. ;) thanks ______________________________________________________________________________ Nachrichten, Musik und Spiele schnell und einfach per Quickstart im WEB.DE Screensaver - Gratis downloaden: http://screensaver.web.de/?mc=021110 -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/