Print this page
13175 Add support for IP_RECVTOS
13182 CMSG_ macros should have man pages
Change-ID: I784aa36cfd3c17e3cccbf1fd329fa7e69b663ef9


   9  * or http://www.opensolaris.org/os/licensing.
  10  * See the License for the specific language governing permissions
  11  * and limitations under the License.
  12  *
  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 
  22 /*
  23  * Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
  24  * Use is subject to license terms.
  25  */
  26 
  27 /*
  28  * Copyright 2019 Joyent, Inc.

  29  */
  30 
  31 #ifndef _INET_IP_STACK_H
  32 #define _INET_IP_STACK_H
  33 
  34 #ifdef  __cplusplus
  35 extern "C" {
  36 #endif
  37 
  38 #include <sys/netstack.h>
  39 #include <netinet/igmp_var.h>
  40 #include <sys/modhash.h>
  41 
  42 #ifdef _KERNEL
  43 #include <sys/list.h>
  44 
  45 
  46 /*
  47  * IP statistics.
  48  */


  68         kstat_named_t   ip_ire_reclaim_deleted;
  69         kstat_named_t   ip_nce_reclaim_calls;
  70         kstat_named_t   ip_nce_reclaim_deleted;
  71         kstat_named_t   ip_nce_mcast_reclaim_calls;
  72         kstat_named_t   ip_nce_mcast_reclaim_deleted;
  73         kstat_named_t   ip_nce_mcast_reclaim_tqfail;
  74         kstat_named_t   ip_dce_reclaim_calls;
  75         kstat_named_t   ip_dce_reclaim_deleted;
  76         kstat_named_t   ip_tcp_in_full_hw_cksum_err;
  77         kstat_named_t   ip_tcp_in_part_hw_cksum_err;
  78         kstat_named_t   ip_tcp_in_sw_cksum_err;
  79         kstat_named_t   ip_udp_in_full_hw_cksum_err;
  80         kstat_named_t   ip_udp_in_part_hw_cksum_err;
  81         kstat_named_t   ip_udp_in_sw_cksum_err;
  82         kstat_named_t   conn_in_recvdstaddr;
  83         kstat_named_t   conn_in_recvopts;
  84         kstat_named_t   conn_in_recvif;
  85         kstat_named_t   conn_in_recvslla;
  86         kstat_named_t   conn_in_recvucred;
  87         kstat_named_t   conn_in_recvttl;

  88         kstat_named_t   conn_in_recvhopopts;
  89         kstat_named_t   conn_in_recvhoplimit;
  90         kstat_named_t   conn_in_recvdstopts;
  91         kstat_named_t   conn_in_recvrthdrdstopts;
  92         kstat_named_t   conn_in_recvrthdr;
  93         kstat_named_t   conn_in_recvpktinfo;
  94         kstat_named_t   conn_in_recvtclass;
  95         kstat_named_t   conn_in_timestamp;
  96 } ip_stat_t;
  97 
  98 
  99 /*
 100  * IP6 statistics.
 101  */
 102 #define IP6_STAT(ipst, x)       ((ipst)->ips_ip6_statistics.x.value.ui64++)
 103 #define IP6_STAT_UPDATE(ipst, x, n)     \
 104         ((ipst)->ips_ip6_statistics.x.value.ui64 += (n))
 105 
 106 typedef struct ip6_stat {
 107         kstat_named_t   ip6_udp_fannorm;




   9  * or http://www.opensolaris.org/os/licensing.
  10  * See the License for the specific language governing permissions
  11  * and limitations under the License.
  12  *
  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 
  22 /*
  23  * Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
  24  * Use is subject to license terms.
  25  */
  26 
  27 /*
  28  * Copyright 2019 Joyent, Inc.
  29  * Copyright 2020 OmniOS Community Edition (OmniOSce) Association.
  30  */
  31 
  32 #ifndef _INET_IP_STACK_H
  33 #define _INET_IP_STACK_H
  34 
  35 #ifdef  __cplusplus
  36 extern "C" {
  37 #endif
  38 
  39 #include <sys/netstack.h>
  40 #include <netinet/igmp_var.h>
  41 #include <sys/modhash.h>
  42 
  43 #ifdef _KERNEL
  44 #include <sys/list.h>
  45 
  46 
  47 /*
  48  * IP statistics.
  49  */


  69         kstat_named_t   ip_ire_reclaim_deleted;
  70         kstat_named_t   ip_nce_reclaim_calls;
  71         kstat_named_t   ip_nce_reclaim_deleted;
  72         kstat_named_t   ip_nce_mcast_reclaim_calls;
  73         kstat_named_t   ip_nce_mcast_reclaim_deleted;
  74         kstat_named_t   ip_nce_mcast_reclaim_tqfail;
  75         kstat_named_t   ip_dce_reclaim_calls;
  76         kstat_named_t   ip_dce_reclaim_deleted;
  77         kstat_named_t   ip_tcp_in_full_hw_cksum_err;
  78         kstat_named_t   ip_tcp_in_part_hw_cksum_err;
  79         kstat_named_t   ip_tcp_in_sw_cksum_err;
  80         kstat_named_t   ip_udp_in_full_hw_cksum_err;
  81         kstat_named_t   ip_udp_in_part_hw_cksum_err;
  82         kstat_named_t   ip_udp_in_sw_cksum_err;
  83         kstat_named_t   conn_in_recvdstaddr;
  84         kstat_named_t   conn_in_recvopts;
  85         kstat_named_t   conn_in_recvif;
  86         kstat_named_t   conn_in_recvslla;
  87         kstat_named_t   conn_in_recvucred;
  88         kstat_named_t   conn_in_recvttl;
  89         kstat_named_t   conn_in_recvtos;
  90         kstat_named_t   conn_in_recvhopopts;
  91         kstat_named_t   conn_in_recvhoplimit;
  92         kstat_named_t   conn_in_recvdstopts;
  93         kstat_named_t   conn_in_recvrthdrdstopts;
  94         kstat_named_t   conn_in_recvrthdr;
  95         kstat_named_t   conn_in_recvpktinfo;
  96         kstat_named_t   conn_in_recvtclass;
  97         kstat_named_t   conn_in_timestamp;
  98 } ip_stat_t;
  99 
 100 
 101 /*
 102  * IP6 statistics.
 103  */
 104 #define IP6_STAT(ipst, x)       ((ipst)->ips_ip6_statistics.x.value.ui64++)
 105 #define IP6_STAT_UPDATE(ipst, x, n)     \
 106         ((ipst)->ips_ip6_statistics.x.value.ui64 += (n))
 107 
 108 typedef struct ip6_stat {
 109         kstat_named_t   ip6_udp_fannorm;