2.4.18-3 kernel I'm developing a virtual network interface driver that tunnels PPP over a UDP socket, and I've managed to get myself kinda stuck. I'm hoping someone can poke me into the right direction. I used the PPPoE kernel implementation as a reference model. The pppd loads a shared library as a plugin. The plugin opens a socket and sends a couple ioctls down to my driver. The driver creates a new net_device and overloads the socket's send/recv methods. The ppp driver will call my ppp_xmit() function when it has a frame for me to send. I'd like to direct the frame to my datagram socket. Likewise, when I read a frame off the socket, I'll pass it up to the ppp driver. o Incoming data is getting stuck in the socket's Rcv-Q. The pppd does a select, but never reads the data off the socket. strace shows the select() statement is properly formed and has the socket's file descriptor in the read set. o Sending doesn't seem to work so well, either. The ppp driver passes me an sk_buff. I've tried copying the data into a msghdr structure and calling udp_sendmsg directly. That crashes the system - hard. Nothing gets written to disk or console, so I'm at a loss to debug it, I've tried using dev_queue_xmit() to send the data. That successfully enqueues the sk_buff onto the packet scheduler (the device in question being my virtual device - not eth), but there are no signs that it goes anywhere else from there. I haven't been able to pinpoint in the kernel source where the packet is supposed to be dequeued and sent. I know this is a vague request...I'm just hoping someone can point me somewhere in the right direction. Thanks in advance. -- Gary Cote gary@cotecorner.com - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html