: I would like to be able to open a socket from within a device driver to
One way would be to have your driver communicate with a user-space process
which would do ioctl(), get the data packet, then communicate with the
socket, and send the results back with ioctl().
Advantage: main code in user space, no tricks, maybe even portable between
UNIX systems.
: a data resource on another system and use it to communicate with that
You can always use the sys_() stuff *provided you are running in a task
context* (thread, user process. Certainly not from interrupts).
Also you could generate low-level skb buffers ... but I really strongly
suggest you the user-space solution.
NB: you might want to look at the `network block device'.