Hi, Let's say, for the sake of argument, that I wanted to write a PPP channel handler in userspace rather than inside the kernel. My idea is to write a new PPPoX protocol, "pppou" (ppp over userspace), using pppoe.c as example code. Instead of handling packets that come down from the network stack by calling an ethernet card's transmit function, it will instead queue them for a userspace program to read. That userspace program can then read the packet and send it to some physical device. Similarly, skb's written to the pppou device will be copied from userspace and get ppp_input called. (I'm doing this because I have a system with a special kind of network interface that can be read/written using userspace code.) Am I on the right track at all? Also, a related question: how hard would it be to write a "PPP over a file descriptor" channel? In other words, a PPPOX protocol where you ioctl in an FD, and packets that come in from the network stack get written to that fd, and vice versa. This seems like a bigger problem since I think an arbitrary fd would have to be used in process' context but the network stack delivers packets in a BH. Sorry if this question doesn't make any sense - I'm still trying to learn the PPP code. Best, Jer - : 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