Print this page
dccp: starting module template

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/sys/netstack.h
          +++ new/usr/src/uts/common/sys/netstack.h
↓ open down ↓ 73 lines elided ↑ open up ↑
  74   74  #define NS_TCP          9
  75   75  #define NS_SCTP         10
  76   76  #define NS_RTS          11
  77   77  #define NS_IPSEC        12
  78   78  #define NS_KEYSOCK      13
  79   79  #define NS_SPDSOCK      14
  80   80  #define NS_IPSECAH      15
  81   81  #define NS_IPSECESP     16
  82   82  #define NS_IPNET        17
  83   83  #define NS_ILB          18
  84      -#define NS_MAX          (NS_ILB+1)
       84 +#define NS_DCCP         19
       85 +#define NS_MAX          (NS_DCCP+1)
  85   86  
  86   87  /*
  87   88   * State maintained for each module which tracks the state of
  88   89   * the create, shutdown and destroy callbacks.
  89   90   *
  90   91   * Keeps track of pending actions to avoid holding locks when
  91   92   * calling into the create/shutdown/destroy functions in the module.
  92   93   */
  93   94  #ifdef _KERNEL
  94   95  typedef struct {
↓ open down ↓ 55 lines elided ↑ open up ↑
 150  151                          struct tcp_stack        *nu_tcp;
 151  152                          struct sctp_stack       *nu_sctp;
 152  153                          struct rts_stack        *nu_rts;
 153  154                          struct ipsec_stack      *nu_ipsec;
 154  155                          struct keysock_stack    *nu_keysock;
 155  156                          struct spd_stack        *nu_spdsock;
 156  157                          struct ipsecah_stack    *nu_ipsecah;
 157  158                          struct ipsecesp_stack   *nu_ipsecesp;
 158  159                          struct ipnet_stack      *nu_ipnet;
 159  160                          struct ilb_stack        *nu_ilb;
      161 +                        struct dccp_stack       *nu_dccp;
 160  162                  } nu_s;
 161  163          } netstack_u;
 162  164  #define netstack_modules        netstack_u.nu_modules
 163  165  #define netstack_dls            netstack_u.nu_s.nu_dls
 164  166  #define netstack_iptun          netstack_u.nu_s.nu_iptun
 165  167  #define netstack_str            netstack_u.nu_s.nu_str
 166  168  #define netstack_hook           netstack_u.nu_s.nu_hook
 167  169  #define netstack_neti           netstack_u.nu_s.nu_neti
 168  170  #define netstack_arp            netstack_u.nu_s.nu_arp
 169  171  #define netstack_ip             netstack_u.nu_s.nu_ip
↓ open down ↓ 2 lines elided ↑ open up ↑
 172  174  #define netstack_tcp            netstack_u.nu_s.nu_tcp
 173  175  #define netstack_sctp           netstack_u.nu_s.nu_sctp
 174  176  #define netstack_rts            netstack_u.nu_s.nu_rts
 175  177  #define netstack_ipsec          netstack_u.nu_s.nu_ipsec
 176  178  #define netstack_keysock        netstack_u.nu_s.nu_keysock
 177  179  #define netstack_spdsock        netstack_u.nu_s.nu_spdsock
 178  180  #define netstack_ipsecah        netstack_u.nu_s.nu_ipsecah
 179  181  #define netstack_ipsecesp       netstack_u.nu_s.nu_ipsecesp
 180  182  #define netstack_ipnet          netstack_u.nu_s.nu_ipnet
 181  183  #define netstack_ilb            netstack_u.nu_s.nu_ilb
      184 +#define netstack_dccp           netstack_u.nu_s.nu_dccp
 182  185  
 183  186          nm_state_t      netstack_m_state[NS_MAX]; /* module state */
 184  187  
 185  188          kmutex_t        netstack_lock;
 186  189          struct netstack *netstack_next;
 187  190          netstackid_t    netstack_stackid;
 188  191          int             netstack_numzones;      /* Number of zones using this */
 189  192          int             netstack_refcnt;        /* Number of hold-rele */
 190  193          int             netstack_flags; /* See below */
 191  194  
↓ open down ↓ 86 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX