1 /* in_pcb.h 4.1 81/11/20 */ 2 3 /* 4 * Common structure pcb for internet protocol implementation. 5 * Here are stored pointers to local and foreign host table 6 * entries, local and foreign socket numbers, and pointers 7 * up (to a socket structure) and down (to a protocol-specific) 8 * control block. 9 */ 10 struct inpcb { 11 struct inpcb *inp_next,*inp_prev; 12 /* pointers to other pcb's */ 13 struct in_addr inp_faddr; /* foreign host table entry */ 14 u_short inp_fport; /* foreign port */ 15 struct in_addr inp_laddr; /* local host table entry */ 16 u_short inp_lport; /* local port */ 17 struct socket *inp_socket; /* back pointer to socket */ 18 caddr_t inp_ppcb; /* pointer to per-protocol pcb */ 19 }; 20 21 #define sotoinpcb(so) ((struct inpcb *)(so)->so_pcb) 22 23 #ifdef KERNEL 24 struct inpcb *in_pcblookup(); 25 #endif 26