struct socket — general BSD socket
struct socket { socket_state state; unsigned long flags; const struct proto_ops * ops; struct fasync_struct * fasync_list; struct file * file; struct sock * sk; wait_queue_head_t wait; short type; };
socket state (SS_CONNECTED
, etc)
socket flags (SOCK_ASYNC_NOSPACE
, etc)
protocol specific socket operations
Asynchronous wake up list
File back pointer for gc
internal networking protocol agnostic socket representation
wait queue for several uses
socket type (SOCK_STREAM
, etc)