1: /*
   2:  * Copyright (c) 1984, 1985, 1986, 1987 Regents of the University of California.
   3:  * All rights reserved.
   4:  *
   5:  * Redistribution and use in source and binary forms are permitted
   6:  * provided that this notice is preserved and that due credit is given
   7:  * to the University of California at Berkeley. The name of the University
   8:  * may not be used to endorse or promote products derived from this
   9:  * software without specific prior written permission. This software
  10:  * is provided ``as is'' without express or implied warranty.
  11:  *
  12:  *      @(#)ns_pcb.h	7.2 (Berkeley) 1/20/88
  13:  */
  14: 
  15: /*
  16:  * Ns protocol interface control block.
  17:  */
  18: struct nspcb {
  19:     struct  nspcb *nsp_next;    /* doubly linked list */
  20:     struct  nspcb *nsp_prev;
  21:     struct  nspcb *nsp_head;
  22:     struct  socket *nsp_socket; /* back pointer to socket */
  23:     struct  ns_addr nsp_faddr;  /* destination address */
  24:     struct  ns_addr nsp_laddr;  /* socket's address */
  25:     caddr_t nsp_pcb;        /* protocol specific stuff */
  26:     struct  route nsp_route;    /* routing information */
  27:     struct  ns_addr nsp_lastdst;    /* validate cached route for dg socks*/
  28:     long    nsp_notify_param;   /* extra info passed via ns_pcbnotify*/
  29:     short   nsp_flags;
  30:     u_char  nsp_dpt;        /* default packet type for idp_output*/
  31:     u_char  nsp_rpt;        /* last received packet type by
  32: 								idp_input() */
  33: };
  34: 
  35: /* possible flags */
  36: 
  37: #define NSP_IN_ABORT    0x1     /* calling abort through socket */
  38: #define NSP_RAWIN   0x2     /* show headers on input */
  39: #define NSP_RAWOUT  0x4     /* show header on output */
  40: #define NSP_ALL_PACKETS 0x8     /* Turn off higher proto processing */
  41: 
  42: #define NS_WILDCARD 1
  43: 
  44: #define nsp_lport nsp_laddr.x_port
  45: #define nsp_fport nsp_faddr.x_port
  46: 
  47: #define sotonspcb(so)       ((struct nspcb *)((so)->so_pcb))
  48: 
  49: /*
  50:  * Nominal space allocated to a ns socket.
  51:  */
  52: #define NSSNDQ      2048
  53: #define NSRCVQ      2048
  54: 
  55: 
  56: #ifdef SUPERVISOR
  57: struct  nspcb nspcb;            /* head of list */
  58: struct  nspcb *ns_pcblookup();
  59: #endif

Defined variables

Defined struct's

nspcb defined in line 18; used 110 times

Defined macros

NSP_IN_ABORT defined in line 37; never used
NSP_RAWIN defined in line 38; used 4 times
NSP_RAWOUT defined in line 39; used 4 times
NSRCVQ defined in line 53; never used
NSSNDQ defined in line 52; never used
nsp_fport defined in line 45; used 5 times
nsp_lport defined in line 44; used 10 times

Usage of this include

Last modified: 1988-04-28
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 2404
Valid CSS Valid XHTML 1.0 Strict