1: /*
   2:  * Copyright (c) 1982, 1986 Regents of the University of California.
   3:  * All rights reserved.  The Berkeley software License Agreement
   4:  * specifies the terms and conditions for redistribution.
   5:  *
   6:  *	@(#)in_pcb.h	7.1 (Berkeley) 6/5/86
   7:  */
   8: 
   9: /*
  10:  * Common structure pcb for internet protocol implementation.
  11:  * Here are stored pointers to local and foreign host table
  12:  * entries, local and foreign socket numbers, and pointers
  13:  * up (to a socket structure) and down (to a protocol-specific)
  14:  * control block.
  15:  */
  16: struct inpcb {
  17:     struct  inpcb *inp_next,*inp_prev;
  18:                     /* pointers to other pcb's */
  19:     struct  inpcb *inp_head;    /* pointer back to chain of inpcb's
  20: 					   for this protocol */
  21:     struct  in_addr inp_faddr;  /* foreign host table entry */
  22:     u_short inp_fport;      /* foreign port */
  23:     struct  in_addr inp_laddr;  /* local host table entry */
  24:     u_short inp_lport;      /* local port */
  25:     struct  socket *inp_socket; /* back pointer to socket */
  26:     caddr_t inp_ppcb;       /* pointer to per-protocol pcb */
  27:     struct  route inp_route;    /* placeholder for routing entry */
  28:     struct  mbuf *inp_options;  /* IP options */
  29: };
  30: 
  31: #define INPLOOKUP_WILDCARD  1
  32: #define INPLOOKUP_SETLOCAL  2
  33: 
  34: #define sotoinpcb(so)   ((struct inpcb *)(so)->so_pcb)
  35: 
  36: #ifdef KERNEL
  37: struct  inpcb *in_pcblookup();
  38: #endif

Defined struct's

inpcb defined in line 16; used 74 times

Defined macros

INPLOOKUP_SETLOCAL defined in line 32; never used

Usage of this include

Last modified: 1986-06-05
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 806
Valid CSS Valid XHTML 1.0 Strict