Author: ae
Date: Tue Jul  9 09:32:06 2013
New Revision: 253081
URL: http://svnweb.freebsd.org/changeset/base/253081

Log:
  Prepare network statistics structures for migration to PCPU counters.
  Use uint64_t as type for all fields of structures.
  
  Changed structures: ahstat, arpstat, espstat, icmp6_ifstat, icmp6stat,
  in6_ifstat, ip6stat, ipcompstat, ipipstat, ipsecstat, mrt6stat, mrtstat,
  pfkeystat, pim6stat, pimstat, rip6stat, udpstat.
  
  Discussed with:       arch@

Modified:
  head/sys/net/if_arp.h
  head/sys/netinet/icmp6.h
  head/sys/netinet/ip_mroute.h
  head/sys/netinet/pim_var.h
  head/sys/netinet/udp_var.h
  head/sys/netinet6/in6_var.h
  head/sys/netinet6/ip6_mroute.h
  head/sys/netinet6/ip6_var.h
  head/sys/netinet6/pim6_var.h
  head/sys/netinet6/raw_ip6.h
  head/sys/netipsec/ah_var.h
  head/sys/netipsec/esp_var.h
  head/sys/netipsec/ipcomp_var.h
  head/sys/netipsec/ipip_var.h
  head/sys/netipsec/ipsec.h
  head/sys/netipsec/keysock.h
  head/sys/netipsec/xform_ipcomp.c
  head/tools/tools/crypto/ipsecstats.c
  head/usr.bin/netstat/inet.c
  head/usr.bin/netstat/ipsec.c
  head/usr.bin/netstat/mroute.c

Modified: head/sys/net/if_arp.h
==============================================================================
--- head/sys/net/if_arp.h       Tue Jul  9 09:31:26 2013        (r253080)
+++ head/sys/net/if_arp.h       Tue Jul  9 09:32:06 2013        (r253081)
@@ -113,18 +113,18 @@ struct    arpcom {
 
 struct arpstat {
        /* Normal things that happen: */
-       u_long txrequests;      /* # of ARP requests sent by this host. */
-       u_long txreplies;       /* # of ARP replies sent by this host. */
-       u_long rxrequests;      /* # of ARP requests received by this host. */
-       u_long rxreplies;       /* # of ARP replies received by this host. */
-       u_long received;        /* # of ARP packets received by this host. */
+       uint64_t txrequests;    /* # of ARP requests sent by this host. */
+       uint64_t txreplies;     /* # of ARP replies sent by this host. */
+       uint64_t rxrequests;    /* # of ARP requests received by this host. */
+       uint64_t rxreplies;     /* # of ARP replies received by this host. */
+       uint64_t received;      /* # of ARP packets received by this host. */
 
-       u_long arp_spares[4];   /* For either the upper or lower half. */
+       uint64_t arp_spares[4]; /* For either the upper or lower half. */
        /* Abnormal event and error  counting: */
-       u_long dropped;         /* # of packets dropped waiting for a reply. */
-       u_long timeouts;        /* # of times with entries removed */
+       uint64_t dropped;       /* # of packets dropped waiting for a reply. */
+       uint64_t timeouts;      /* # of times with entries removed */
                                /* due to timeout. */
-       u_long dupips;          /* # of duplicate IPs detected. */
+       uint64_t dupips;        /* # of duplicate IPs detected. */
 };
 
 /*

Modified: head/sys/netinet/icmp6.h
==============================================================================
--- head/sys/netinet/icmp6.h    Tue Jul  9 09:31:26 2013        (r253080)
+++ head/sys/netinet/icmp6.h    Tue Jul  9 09:32:06 2013        (r253081)
@@ -555,39 +555,39 @@ do {                                                      
        \
  * of the internet control message protocol version 6.
  */
 struct icmp6errstat {
-       u_quad_t icp6errs_dst_unreach_noroute;
-       u_quad_t icp6errs_dst_unreach_admin;
-       u_quad_t icp6errs_dst_unreach_beyondscope;
-       u_quad_t icp6errs_dst_unreach_addr;
-       u_quad_t icp6errs_dst_unreach_noport;
-       u_quad_t icp6errs_packet_too_big;
-       u_quad_t icp6errs_time_exceed_transit;
-       u_quad_t icp6errs_time_exceed_reassembly;
-       u_quad_t icp6errs_paramprob_header;
-       u_quad_t icp6errs_paramprob_nextheader;
-       u_quad_t icp6errs_paramprob_option;
-       u_quad_t icp6errs_redirect; /* we regard redirect as an error here */
-       u_quad_t icp6errs_unknown;
+       uint64_t icp6errs_dst_unreach_noroute;
+       uint64_t icp6errs_dst_unreach_admin;
+       uint64_t icp6errs_dst_unreach_beyondscope;
+       uint64_t icp6errs_dst_unreach_addr;
+       uint64_t icp6errs_dst_unreach_noport;
+       uint64_t icp6errs_packet_too_big;
+       uint64_t icp6errs_time_exceed_transit;
+       uint64_t icp6errs_time_exceed_reassembly;
+       uint64_t icp6errs_paramprob_header;
+       uint64_t icp6errs_paramprob_nextheader;
+       uint64_t icp6errs_paramprob_option;
+       uint64_t icp6errs_redirect; /* we regard redirect as an error here */
+       uint64_t icp6errs_unknown;
 };
 
 struct icmp6stat {
 /* statistics related to icmp6 packets generated */
-       u_quad_t icp6s_error;           /* # of calls to icmp6_error */
-       u_quad_t icp6s_canterror;       /* no error 'cuz old was icmp */
-       u_quad_t icp6s_toofreq;         /* no error 'cuz rate limitation */
-       u_quad_t icp6s_outhist[256];
+       uint64_t icp6s_error;           /* # of calls to icmp6_error */
+       uint64_t icp6s_canterror;       /* no error 'cuz old was icmp */
+       uint64_t icp6s_toofreq;         /* no error 'cuz rate limitation */
+       uint64_t icp6s_outhist[256];
 /* statistics related to input message processed */
-       u_quad_t icp6s_badcode;         /* icmp6_code out of range */
-       u_quad_t icp6s_tooshort;        /* packet < sizeof(struct icmp6_hdr) */
-       u_quad_t icp6s_checksum;        /* bad checksum */
-       u_quad_t icp6s_badlen;          /* calculated bound mismatch */
+       uint64_t icp6s_badcode;         /* icmp6_code out of range */
+       uint64_t icp6s_tooshort;        /* packet < sizeof(struct icmp6_hdr) */
+       uint64_t icp6s_checksum;        /* bad checksum */
+       uint64_t icp6s_badlen;          /* calculated bound mismatch */
        /*
         * number of responses: this member is inherited from netinet code, but
         * for netinet6 code, it is already available in icp6s_outhist[].
         */
-       u_quad_t icp6s_reflect;
-       u_quad_t icp6s_inhist[256];     
-       u_quad_t icp6s_nd_toomanyopt;   /* too many ND options */
+       uint64_t icp6s_reflect;
+       uint64_t icp6s_inhist[256];     
+       uint64_t icp6s_nd_toomanyopt;   /* too many ND options */
        struct icmp6errstat icp6s_outerrhist;
 #define icp6s_odst_unreach_noroute \
        icp6s_outerrhist.icp6errs_dst_unreach_noroute
@@ -607,13 +607,13 @@ struct icmp6stat {
 #define icp6s_oparamprob_option icp6s_outerrhist.icp6errs_paramprob_option
 #define icp6s_oredirect icp6s_outerrhist.icp6errs_redirect
 #define icp6s_ounknown icp6s_outerrhist.icp6errs_unknown
-       u_quad_t icp6s_pmtuchg;         /* path MTU changes */
-       u_quad_t icp6s_nd_badopt;       /* bad ND options */
-       u_quad_t icp6s_badns;           /* bad neighbor solicitation */
-       u_quad_t icp6s_badna;           /* bad neighbor advertisement */
-       u_quad_t icp6s_badrs;           /* bad router advertisement */
-       u_quad_t icp6s_badra;           /* bad router advertisement */
-       u_quad_t icp6s_badredirect;     /* bad redirect message */
+       uint64_t icp6s_pmtuchg;         /* path MTU changes */
+       uint64_t icp6s_nd_badopt;       /* bad ND options */
+       uint64_t icp6s_badns;           /* bad neighbor solicitation */
+       uint64_t icp6s_badna;           /* bad neighbor advertisement */
+       uint64_t icp6s_badrs;           /* bad router advertisement */
+       uint64_t icp6s_badra;           /* bad router advertisement */
+       uint64_t icp6s_badredirect;     /* bad redirect message */
 };
 
 #ifdef _KERNEL

Modified: head/sys/netinet/ip_mroute.h
==============================================================================
--- head/sys/netinet/ip_mroute.h        Tue Jul  9 09:31:26 2013        
(r253080)
+++ head/sys/netinet/ip_mroute.h        Tue Jul  9 09:32:06 2013        
(r253081)
@@ -206,19 +206,19 @@ struct bw_upcall {
  * The kernel's multicast routing statistics.
  */
 struct mrtstat {
-    u_long     mrts_mfc_lookups;       /* # forw. cache hash table hits   */
-    u_long     mrts_mfc_misses;        /* # forw. cache hash table misses */
-    u_long     mrts_upcalls;           /* # calls to multicast routing daemon 
*/
-    u_long     mrts_no_route;          /* no route for packet's origin    */
-    u_long     mrts_bad_tunnel;        /* malformed tunnel options        */
-    u_long     mrts_cant_tunnel;       /* no room for tunnel options      */
-    u_long     mrts_wrong_if;          /* arrived on wrong interface      */
-    u_long     mrts_upq_ovflw;         /* upcall Q overflow               */
-    u_long     mrts_cache_cleanups;    /* # entries with no upcalls       */
-    u_long     mrts_drop_sel;          /* pkts dropped selectively        */
-    u_long     mrts_q_overflow;        /* pkts dropped - Q overflow       */
-    u_long     mrts_pkt2large;         /* pkts dropped - size > BKT SIZE  */
-    u_long     mrts_upq_sockfull;      /* upcalls dropped - socket full */
+       uint64_t mrts_mfc_lookups;    /* # forw. cache hash table hits   */
+       uint64_t mrts_mfc_misses;     /* # forw. cache hash table misses */
+       uint64_t mrts_upcalls;        /* # calls to multicast routing daemon */
+       uint64_t mrts_no_route;       /* no route for packet's origin    */
+       uint64_t mrts_bad_tunnel;     /* malformed tunnel options        */
+       uint64_t mrts_cant_tunnel;    /* no room for tunnel options      */
+       uint64_t mrts_wrong_if;       /* arrived on wrong interface      */
+       uint64_t mrts_upq_ovflw;      /* upcall Q overflow               */
+       uint64_t mrts_cache_cleanups; /* # entries with no upcalls       */
+       uint64_t mrts_drop_sel;       /* pkts dropped selectively        */
+       uint64_t mrts_q_overflow;     /* pkts dropped - Q overflow       */
+       uint64_t mrts_pkt2large;      /* pkts dropped - size > BKT SIZE  */
+       uint64_t mrts_upq_sockfull;   /* upcalls dropped - socket full   */
 };
 
 #ifdef _KERNEL

Modified: head/sys/netinet/pim_var.h
==============================================================================
--- head/sys/netinet/pim_var.h  Tue Jul  9 09:31:26 2013        (r253080)
+++ head/sys/netinet/pim_var.h  Tue Jul  9 09:32:06 2013        (r253081)
@@ -46,17 +46,17 @@
  * PIM statistics kept in the kernel
  */
 struct pimstat {
-       u_quad_t pims_rcv_total_msgs;      /* total PIM messages received    */
-       u_quad_t pims_rcv_total_bytes;     /* total PIM bytes received       */
-       u_quad_t pims_rcv_tooshort;        /* rcvd with too few bytes        */
-       u_quad_t pims_rcv_badsum;          /* rcvd with bad checksum         */
-       u_quad_t pims_rcv_badversion;      /* rcvd bad PIM version           */
-       u_quad_t pims_rcv_registers_msgs;  /* rcvd regs. msgs (data only)    */
-       u_quad_t pims_rcv_registers_bytes; /* rcvd regs. bytes (data only)   */
-       u_quad_t pims_rcv_registers_wrongiif; /* rcvd regs. on wrong iif     */
-       u_quad_t pims_rcv_badregisters;    /* rcvd invalid registers         */
-       u_quad_t pims_snd_registers_msgs;  /* sent regs. msgs (data only)    */
-       u_quad_t pims_snd_registers_bytes; /* sent regs. bytes (data only)   */
+       uint64_t pims_rcv_total_msgs;      /* total PIM messages received    */
+       uint64_t pims_rcv_total_bytes;     /* total PIM bytes received       */
+       uint64_t pims_rcv_tooshort;        /* rcvd with too few bytes        */
+       uint64_t pims_rcv_badsum;          /* rcvd with bad checksum         */
+       uint64_t pims_rcv_badversion;      /* rcvd bad PIM version           */
+       uint64_t pims_rcv_registers_msgs;  /* rcvd regs. msgs (data only)    */
+       uint64_t pims_rcv_registers_bytes; /* rcvd regs. bytes (data only)   */
+       uint64_t pims_rcv_registers_wrongiif; /* rcvd regs. on wrong iif     */
+       uint64_t pims_rcv_badregisters;    /* rcvd invalid registers         */
+       uint64_t pims_snd_registers_msgs;  /* sent regs. msgs (data only)    */
+       uint64_t pims_snd_registers_bytes; /* sent regs. bytes (data only)   */
 };
 
 #ifdef _KERNEL

Modified: head/sys/netinet/udp_var.h
==============================================================================
--- head/sys/netinet/udp_var.h  Tue Jul  9 09:31:26 2013        (r253080)
+++ head/sys/netinet/udp_var.h  Tue Jul  9 09:32:06 2013        (r253081)
@@ -75,22 +75,22 @@ struct udpcb {
 
 struct udpstat {
                                /* input statistics: */
-       u_long  udps_ipackets;          /* total input packets */
-       u_long  udps_hdrops;            /* packet shorter than header */
-       u_long  udps_badsum;            /* checksum error */
-       u_long  udps_nosum;             /* no checksum */
-       u_long  udps_badlen;            /* data length larger than packet */
-       u_long  udps_noport;            /* no socket on port */
-       u_long  udps_noportbcast;       /* of above, arrived as broadcast */
-       u_long  udps_fullsock;          /* not delivered, input socket full */
-       u_long  udpps_pcbcachemiss;     /* input packets missing pcb cache */
-       u_long  udpps_pcbhashmiss;      /* input packets not for hashed pcb */
+       uint64_t udps_ipackets;         /* total input packets */
+       uint64_t udps_hdrops;           /* packet shorter than header */
+       uint64_t udps_badsum;           /* checksum error */
+       uint64_t udps_nosum;            /* no checksum */
+       uint64_t udps_badlen;           /* data length larger than packet */
+       uint64_t udps_noport;           /* no socket on port */
+       uint64_t udps_noportbcast;      /* of above, arrived as broadcast */
+       uint64_t udps_fullsock;         /* not delivered, input socket full */
+       uint64_t udpps_pcbcachemiss;    /* input packets missing pcb cache */
+       uint64_t udpps_pcbhashmiss;     /* input packets not for hashed pcb */
                                /* output statistics: */
-       u_long  udps_opackets;          /* total output packets */
-       u_long  udps_fastout;           /* output packets on fast path */
+       uint64_t udps_opackets;         /* total output packets */
+       uint64_t udps_fastout;          /* output packets on fast path */
        /* of no socket on port, arrived as multicast */
-       u_long  udps_noportmcast;
-       u_long  udps_filtermcast;       /* blocked by multicast filter */
+       uint64_t udps_noportmcast;
+       uint64_t udps_filtermcast;      /* blocked by multicast filter */
 };
 
 #ifdef _KERNEL

Modified: head/sys/netinet6/in6_var.h
==============================================================================
--- head/sys/netinet6/in6_var.h Tue Jul  9 09:31:26 2013        (r253080)
+++ head/sys/netinet6/in6_var.h Tue Jul  9 09:32:06 2013        (r253081)
@@ -153,37 +153,37 @@ struct in6_addrpolicy {
  * IPv6 interface statistics, as defined in RFC2465 Ipv6IfStatsEntry (p12).
  */
 struct in6_ifstat {
-       u_quad_t ifs6_in_receive;       /* # of total input datagram */
-       u_quad_t ifs6_in_hdrerr;        /* # of datagrams with invalid hdr */
-       u_quad_t ifs6_in_toobig;        /* # of datagrams exceeded MTU */
-       u_quad_t ifs6_in_noroute;       /* # of datagrams with no route */
-       u_quad_t ifs6_in_addrerr;       /* # of datagrams with invalid dst */
-       u_quad_t ifs6_in_protounknown;  /* # of datagrams with unknown proto */
+       uint64_t ifs6_in_receive;       /* # of total input datagram */
+       uint64_t ifs6_in_hdrerr;        /* # of datagrams with invalid hdr */
+       uint64_t ifs6_in_toobig;        /* # of datagrams exceeded MTU */
+       uint64_t ifs6_in_noroute;       /* # of datagrams with no route */
+       uint64_t ifs6_in_addrerr;       /* # of datagrams with invalid dst */
+       uint64_t ifs6_in_protounknown;  /* # of datagrams with unknown proto */
                                        /* NOTE: increment on final dst if */
-       u_quad_t ifs6_in_truncated;     /* # of truncated datagrams */
-       u_quad_t ifs6_in_discard;       /* # of discarded datagrams */
+       uint64_t ifs6_in_truncated;     /* # of truncated datagrams */
+       uint64_t ifs6_in_discard;       /* # of discarded datagrams */
                                        /* NOTE: fragment timeout is not here */
-       u_quad_t ifs6_in_deliver;       /* # of datagrams delivered to ULP */
+       uint64_t ifs6_in_deliver;       /* # of datagrams delivered to ULP */
                                        /* NOTE: increment on final dst if */
-       u_quad_t ifs6_out_forward;      /* # of datagrams forwarded */
+       uint64_t ifs6_out_forward;      /* # of datagrams forwarded */
                                        /* NOTE: increment on outgoing if */
-       u_quad_t ifs6_out_request;      /* # of outgoing datagrams from ULP */
+       uint64_t ifs6_out_request;      /* # of outgoing datagrams from ULP */
                                        /* NOTE: does not include forwrads */
-       u_quad_t ifs6_out_discard;      /* # of discarded datagrams */
-       u_quad_t ifs6_out_fragok;       /* # of datagrams fragmented */
-       u_quad_t ifs6_out_fragfail;     /* # of datagrams failed on fragment */
-       u_quad_t ifs6_out_fragcreat;    /* # of fragment datagrams */
+       uint64_t ifs6_out_discard;      /* # of discarded datagrams */
+       uint64_t ifs6_out_fragok;       /* # of datagrams fragmented */
+       uint64_t ifs6_out_fragfail;     /* # of datagrams failed on fragment */
+       uint64_t ifs6_out_fragcreat;    /* # of fragment datagrams */
                                        /* NOTE: this is # after fragment */
-       u_quad_t ifs6_reass_reqd;       /* # of incoming fragmented packets */
+       uint64_t ifs6_reass_reqd;       /* # of incoming fragmented packets */
                                        /* NOTE: increment on final dst if */
-       u_quad_t ifs6_reass_ok;         /* # of reassembled packets */
+       uint64_t ifs6_reass_ok;         /* # of reassembled packets */
                                        /* NOTE: this is # after reass */
                                        /* NOTE: increment on final dst if */
-       u_quad_t ifs6_reass_fail;       /* # of reass failures */
+       uint64_t ifs6_reass_fail;       /* # of reass failures */
                                        /* NOTE: may not be packet count */
                                        /* NOTE: increment on final dst if */
-       u_quad_t ifs6_in_mcast;         /* # of inbound multicast datagrams */
-       u_quad_t ifs6_out_mcast;        /* # of outbound multicast datagrams */
+       uint64_t ifs6_in_mcast;         /* # of inbound multicast datagrams */
+       uint64_t ifs6_out_mcast;        /* # of outbound multicast datagrams */
 };
 
 /*
@@ -195,77 +195,77 @@ struct icmp6_ifstat {
         * Input statistics
         */
        /* ipv6IfIcmpInMsgs, total # of input messages */
-       u_quad_t ifs6_in_msg;
+       uint64_t ifs6_in_msg;
        /* ipv6IfIcmpInErrors, # of input error messages */
-       u_quad_t ifs6_in_error;
+       uint64_t ifs6_in_error;
        /* ipv6IfIcmpInDestUnreachs, # of input dest unreach errors */
-       u_quad_t ifs6_in_dstunreach;
+       uint64_t ifs6_in_dstunreach;
        /* ipv6IfIcmpInAdminProhibs, # of input administratively prohibited 
errs */
-       u_quad_t ifs6_in_adminprohib;
+       uint64_t ifs6_in_adminprohib;
        /* ipv6IfIcmpInTimeExcds, # of input time exceeded errors */
-       u_quad_t ifs6_in_timeexceed;
+       uint64_t ifs6_in_timeexceed;
        /* ipv6IfIcmpInParmProblems, # of input parameter problem errors */
-       u_quad_t ifs6_in_paramprob;
+       uint64_t ifs6_in_paramprob;
        /* ipv6IfIcmpInPktTooBigs, # of input packet too big errors */
-       u_quad_t ifs6_in_pkttoobig;
+       uint64_t ifs6_in_pkttoobig;
        /* ipv6IfIcmpInEchos, # of input echo requests */
-       u_quad_t ifs6_in_echo;
+       uint64_t ifs6_in_echo;
        /* ipv6IfIcmpInEchoReplies, # of input echo replies */
-       u_quad_t ifs6_in_echoreply;
+       uint64_t ifs6_in_echoreply;
        /* ipv6IfIcmpInRouterSolicits, # of input router solicitations */
-       u_quad_t ifs6_in_routersolicit;
+       uint64_t ifs6_in_routersolicit;
        /* ipv6IfIcmpInRouterAdvertisements, # of input router advertisements */
-       u_quad_t ifs6_in_routeradvert;
+       uint64_t ifs6_in_routeradvert;
        /* ipv6IfIcmpInNeighborSolicits, # of input neighbor solicitations */
-       u_quad_t ifs6_in_neighborsolicit;
+       uint64_t ifs6_in_neighborsolicit;
        /* ipv6IfIcmpInNeighborAdvertisements, # of input neighbor 
advertisements */
-       u_quad_t ifs6_in_neighboradvert;
+       uint64_t ifs6_in_neighboradvert;
        /* ipv6IfIcmpInRedirects, # of input redirects */
-       u_quad_t ifs6_in_redirect;
+       uint64_t ifs6_in_redirect;
        /* ipv6IfIcmpInGroupMembQueries, # of input MLD queries */
-       u_quad_t ifs6_in_mldquery;
+       uint64_t ifs6_in_mldquery;
        /* ipv6IfIcmpInGroupMembResponses, # of input MLD reports */
-       u_quad_t ifs6_in_mldreport;
+       uint64_t ifs6_in_mldreport;
        /* ipv6IfIcmpInGroupMembReductions, # of input MLD done */
-       u_quad_t ifs6_in_mlddone;
+       uint64_t ifs6_in_mlddone;
 
        /*
         * Output statistics. We should solve unresolved routing problem...
         */
        /* ipv6IfIcmpOutMsgs, total # of output messages */
-       u_quad_t ifs6_out_msg;
+       uint64_t ifs6_out_msg;
        /* ipv6IfIcmpOutErrors, # of output error messages */
-       u_quad_t ifs6_out_error;
+       uint64_t ifs6_out_error;
        /* ipv6IfIcmpOutDestUnreachs, # of output dest unreach errors */
-       u_quad_t ifs6_out_dstunreach;
+       uint64_t ifs6_out_dstunreach;
        /* ipv6IfIcmpOutAdminProhibs, # of output administratively prohibited 
errs */
-       u_quad_t ifs6_out_adminprohib;
+       uint64_t ifs6_out_adminprohib;
        /* ipv6IfIcmpOutTimeExcds, # of output time exceeded errors */
-       u_quad_t ifs6_out_timeexceed;
+       uint64_t ifs6_out_timeexceed;
        /* ipv6IfIcmpOutParmProblems, # of output parameter problem errors */
-       u_quad_t ifs6_out_paramprob;
+       uint64_t ifs6_out_paramprob;
        /* ipv6IfIcmpOutPktTooBigs, # of output packet too big errors */
-       u_quad_t ifs6_out_pkttoobig;
+       uint64_t ifs6_out_pkttoobig;
        /* ipv6IfIcmpOutEchos, # of output echo requests */
-       u_quad_t ifs6_out_echo;
+       uint64_t ifs6_out_echo;
        /* ipv6IfIcmpOutEchoReplies, # of output echo replies */
-       u_quad_t ifs6_out_echoreply;
+       uint64_t ifs6_out_echoreply;
        /* ipv6IfIcmpOutRouterSolicits, # of output router solicitations */
-       u_quad_t ifs6_out_routersolicit;
+       uint64_t ifs6_out_routersolicit;
        /* ipv6IfIcmpOutRouterAdvertisements, # of output router advertisements 
*/
-       u_quad_t ifs6_out_routeradvert;
+       uint64_t ifs6_out_routeradvert;
        /* ipv6IfIcmpOutNeighborSolicits, # of output neighbor solicitations */
-       u_quad_t ifs6_out_neighborsolicit;
+       uint64_t ifs6_out_neighborsolicit;
        /* ipv6IfIcmpOutNeighborAdvertisements, # of output neighbor 
advertisements */
-       u_quad_t ifs6_out_neighboradvert;
+       uint64_t ifs6_out_neighboradvert;
        /* ipv6IfIcmpOutRedirects, # of output redirects */
-       u_quad_t ifs6_out_redirect;
+       uint64_t ifs6_out_redirect;
        /* ipv6IfIcmpOutGroupMembQueries, # of output MLD queries */
-       u_quad_t ifs6_out_mldquery;
+       uint64_t ifs6_out_mldquery;
        /* ipv6IfIcmpOutGroupMembResponses, # of output MLD reports */
-       u_quad_t ifs6_out_mldreport;
+       uint64_t ifs6_out_mldreport;
        /* ipv6IfIcmpOutGroupMembReductions, # of output MLD done */
-       u_quad_t ifs6_out_mlddone;
+       uint64_t ifs6_out_mlddone;
 };
 
 struct in6_ifreq {

Modified: head/sys/netinet6/ip6_mroute.h
==============================================================================
--- head/sys/netinet6/ip6_mroute.h      Tue Jul  9 09:31:26 2013        
(r253080)
+++ head/sys/netinet6/ip6_mroute.h      Tue Jul  9 09:32:06 2013        
(r253081)
@@ -121,19 +121,19 @@ struct mf6cctl {
  * The kernel's multicast routing statistics.
  */
 struct mrt6stat {
-       u_quad_t mrt6s_mfc_lookups;     /* # forw. cache hash table hits   */
-       u_quad_t mrt6s_mfc_misses;      /* # forw. cache hash table misses */
-       u_quad_t mrt6s_upcalls;         /* # calls to multicast routing daemon 
*/
-       u_quad_t mrt6s_no_route;        /* no route for packet's origin    */
-       u_quad_t mrt6s_bad_tunnel;      /* malformed tunnel options        */
-       u_quad_t mrt6s_cant_tunnel;     /* no room for tunnel options      */
-       u_quad_t mrt6s_wrong_if;        /* arrived on wrong interface      */
-       u_quad_t mrt6s_upq_ovflw;       /* upcall Q overflow               */
-       u_quad_t mrt6s_cache_cleanups;  /* # entries with no upcalls       */
-       u_quad_t mrt6s_drop_sel;        /* pkts dropped selectively        */
-       u_quad_t mrt6s_q_overflow;      /* pkts dropped - Q overflow       */
-       u_quad_t mrt6s_pkt2large;       /* pkts dropped - size > BKT SIZE  */
-       u_quad_t mrt6s_upq_sockfull;    /* upcalls dropped - socket full   */
+       uint64_t mrt6s_mfc_lookups;     /* # forw. cache hash table hits   */
+       uint64_t mrt6s_mfc_misses;      /* # forw. cache hash table misses */
+       uint64_t mrt6s_upcalls;         /* # calls to multicast routing daemon 
*/
+       uint64_t mrt6s_no_route;        /* no route for packet's origin    */
+       uint64_t mrt6s_bad_tunnel;      /* malformed tunnel options        */
+       uint64_t mrt6s_cant_tunnel;     /* no room for tunnel options      */
+       uint64_t mrt6s_wrong_if;        /* arrived on wrong interface      */
+       uint64_t mrt6s_upq_ovflw;       /* upcall Q overflow               */
+       uint64_t mrt6s_cache_cleanups;  /* # entries with no upcalls       */
+       uint64_t mrt6s_drop_sel;        /* pkts dropped selectively        */
+       uint64_t mrt6s_q_overflow;      /* pkts dropped - Q overflow       */
+       uint64_t mrt6s_pkt2large;       /* pkts dropped - size > BKT SIZE  */
+       uint64_t mrt6s_upq_sockfull;    /* upcalls dropped - socket full   */
 };
 
 #ifdef MRT6_OINIT

Modified: head/sys/netinet6/ip6_var.h
==============================================================================
--- head/sys/netinet6/ip6_var.h Tue Jul  9 09:31:26 2013        (r253080)
+++ head/sys/netinet6/ip6_var.h Tue Jul  9 09:32:06 2013        (r253081)
@@ -181,39 +181,39 @@ struct    ip6_pktopts {
  */
 
 struct ip6stat {
-       u_quad_t ip6s_total;            /* total packets received */
-       u_quad_t ip6s_tooshort;         /* packet too short */
-       u_quad_t ip6s_toosmall;         /* not enough data */
-       u_quad_t ip6s_fragments;        /* fragments received */
-       u_quad_t ip6s_fragdropped;      /* frags dropped(dups, out of space) */
-       u_quad_t ip6s_fragtimeout;      /* fragments timed out */
-       u_quad_t ip6s_fragoverflow;     /* fragments that exceeded limit */
-       u_quad_t ip6s_forward;          /* packets forwarded */
-       u_quad_t ip6s_cantforward;      /* packets rcvd for unreachable dest */
-       u_quad_t ip6s_redirectsent;     /* packets forwarded on same net */
-       u_quad_t ip6s_delivered;        /* datagrams delivered to upper level*/
-       u_quad_t ip6s_localout;         /* total ip packets generated here */
-       u_quad_t ip6s_odropped;         /* lost packets due to nobufs, etc. */
-       u_quad_t ip6s_reassembled;      /* total packets reassembled ok */
-       u_quad_t ip6s_fragmented;       /* datagrams successfully fragmented */
-       u_quad_t ip6s_ofragments;       /* output fragments created */
-       u_quad_t ip6s_cantfrag;         /* don't fragment flag was set, etc. */
-       u_quad_t ip6s_badoptions;       /* error in option processing */
-       u_quad_t ip6s_noroute;          /* packets discarded due to no route */
-       u_quad_t ip6s_badvers;          /* ip6 version != 6 */
-       u_quad_t ip6s_rawout;           /* total raw ip packets generated */
-       u_quad_t ip6s_badscope;         /* scope error */
-       u_quad_t ip6s_notmember;        /* don't join this multicast group */
+       uint64_t ip6s_total;            /* total packets received */
+       uint64_t ip6s_tooshort;         /* packet too short */
+       uint64_t ip6s_toosmall;         /* not enough data */
+       uint64_t ip6s_fragments;        /* fragments received */
+       uint64_t ip6s_fragdropped;      /* frags dropped(dups, out of space) */
+       uint64_t ip6s_fragtimeout;      /* fragments timed out */
+       uint64_t ip6s_fragoverflow;     /* fragments that exceeded limit */
+       uint64_t ip6s_forward;          /* packets forwarded */
+       uint64_t ip6s_cantforward;      /* packets rcvd for unreachable dest */
+       uint64_t ip6s_redirectsent;     /* packets forwarded on same net */
+       uint64_t ip6s_delivered;        /* datagrams delivered to upper level*/
+       uint64_t ip6s_localout;         /* total ip packets generated here */
+       uint64_t ip6s_odropped;         /* lost packets due to nobufs, etc. */
+       uint64_t ip6s_reassembled;      /* total packets reassembled ok */
+       uint64_t ip6s_fragmented;       /* datagrams successfully fragmented */
+       uint64_t ip6s_ofragments;       /* output fragments created */
+       uint64_t ip6s_cantfrag;         /* don't fragment flag was set, etc. */
+       uint64_t ip6s_badoptions;       /* error in option processing */
+       uint64_t ip6s_noroute;          /* packets discarded due to no route */
+       uint64_t ip6s_badvers;          /* ip6 version != 6 */
+       uint64_t ip6s_rawout;           /* total raw ip packets generated */
+       uint64_t ip6s_badscope;         /* scope error */
+       uint64_t ip6s_notmember;        /* don't join this multicast group */
 #define        IP6S_HDRCNT             256     /* headers count */
-       u_quad_t ip6s_nxthist[IP6S_HDRCNT]; /* next header history */
-       u_quad_t ip6s_m1;               /* one mbuf */
+       uint64_t ip6s_nxthist[IP6S_HDRCNT]; /* next header history */
+       uint64_t ip6s_m1;               /* one mbuf */
 #define        IP6S_M2MMAX             32
-       u_quad_t ip6s_m2m[IP6S_M2MMAX]; /* two or more mbuf */
-       u_quad_t ip6s_mext1;            /* one ext mbuf */
-       u_quad_t ip6s_mext2m;           /* two or more ext mbuf */
-       u_quad_t ip6s_exthdrtoolong;    /* ext hdr are not contiguous */
-       u_quad_t ip6s_nogif;            /* no match gif found */
-       u_quad_t ip6s_toomanyhdr;       /* discarded due to too many headers */
+       uint64_t ip6s_m2m[IP6S_M2MMAX]; /* two or more mbuf */
+       uint64_t ip6s_mext1;            /* one ext mbuf */
+       uint64_t ip6s_mext2m;           /* two or more ext mbuf */
+       uint64_t ip6s_exthdrtoolong;    /* ext hdr are not contiguous */
+       uint64_t ip6s_nogif;            /* no match gif found */
+       uint64_t ip6s_toomanyhdr;       /* discarded due to too many headers */
 
        /*
         * statistics for improvement of the source address selection
@@ -223,26 +223,26 @@ struct    ip6stat {
 #define        IP6S_RULESMAX           16
 #define        IP6S_SCOPECNT           16
        /* number of times that address selection fails */
-       u_quad_t ip6s_sources_none;
+       uint64_t ip6s_sources_none;
        /* number of times that an address on the outgoing I/F is chosen */
-       u_quad_t ip6s_sources_sameif[IP6S_SCOPECNT];
+       uint64_t ip6s_sources_sameif[IP6S_SCOPECNT];
        /* number of times that an address on a non-outgoing I/F is chosen */
-       u_quad_t ip6s_sources_otherif[IP6S_SCOPECNT];
+       uint64_t ip6s_sources_otherif[IP6S_SCOPECNT];
        /*
         * number of times that an address that has the same scope
         * from the destination is chosen.
         */
-       u_quad_t ip6s_sources_samescope[IP6S_SCOPECNT];
+       uint64_t ip6s_sources_samescope[IP6S_SCOPECNT];
        /*
         * number of times that an address that has a different scope
         * from the destination is chosen.
         */
-       u_quad_t ip6s_sources_otherscope[IP6S_SCOPECNT];
+       uint64_t ip6s_sources_otherscope[IP6S_SCOPECNT];
        /* number of times that a deprecated address is chosen */
-       u_quad_t ip6s_sources_deprecated[IP6S_SCOPECNT];
+       uint64_t ip6s_sources_deprecated[IP6S_SCOPECNT];
 
        /* number of times that each rule of source selection is applied. */
-       u_quad_t ip6s_sources_rule[IP6S_RULESMAX];
+       uint64_t ip6s_sources_rule[IP6S_RULESMAX];
 };
 
 #ifdef _KERNEL

Modified: head/sys/netinet6/pim6_var.h
==============================================================================
--- head/sys/netinet6/pim6_var.h        Tue Jul  9 09:31:26 2013        
(r253080)
+++ head/sys/netinet6/pim6_var.h        Tue Jul  9 09:32:06 2013        
(r253081)
@@ -42,13 +42,13 @@
 #define _NETINET6_PIM6_VAR_H_
 
 struct pim6stat {
-       u_quad_t pim6s_rcv_total;       /* total PIM messages received  */
-       u_quad_t pim6s_rcv_tooshort;    /* received with too few bytes  */
-       u_quad_t pim6s_rcv_badsum;      /* received with bad checksum   */
-       u_quad_t pim6s_rcv_badversion;  /* received bad PIM version     */
-       u_quad_t pim6s_rcv_registers;   /* received registers           */
-       u_quad_t pim6s_rcv_badregisters; /* received invalid registers  */
-       u_quad_t pim6s_snd_registers;   /* sent registers               */
+       uint64_t pim6s_rcv_total;       /* total PIM messages received  */
+       uint64_t pim6s_rcv_tooshort;    /* received with too few bytes  */
+       uint64_t pim6s_rcv_badsum;      /* received with bad checksum   */
+       uint64_t pim6s_rcv_badversion;  /* received bad PIM version     */
+       uint64_t pim6s_rcv_registers;   /* received registers           */
+       uint64_t pim6s_rcv_badregisters; /* received invalid registers  */
+       uint64_t pim6s_snd_registers;   /* sent registers               */
 };
 
 #if (defined(KERNEL)) || (defined(_KERNEL))

Modified: head/sys/netinet6/raw_ip6.h
==============================================================================
--- head/sys/netinet6/raw_ip6.h Tue Jul  9 09:31:26 2013        (r253080)
+++ head/sys/netinet6/raw_ip6.h Tue Jul  9 09:32:06 2013        (r253081)
@@ -37,14 +37,14 @@
  * ICMPv6 stat is counted separately.  see netinet/icmp6.h
  */
 struct rip6stat {
-       u_quad_t rip6s_ipackets;        /* total input packets */
-       u_quad_t rip6s_isum;            /* input checksum computations */
-       u_quad_t rip6s_badsum;          /* of above, checksum error */
-       u_quad_t rip6s_nosock;          /* no matching socket */
-       u_quad_t rip6s_nosockmcast;     /* of above, arrived as multicast */
-       u_quad_t rip6s_fullsock;        /* not delivered, input socket full */
+       uint64_t rip6s_ipackets;        /* total input packets */
+       uint64_t rip6s_isum;            /* input checksum computations */
+       uint64_t rip6s_badsum;          /* of above, checksum error */
+       uint64_t rip6s_nosock;          /* no matching socket */
+       uint64_t rip6s_nosockmcast;     /* of above, arrived as multicast */
+       uint64_t rip6s_fullsock;        /* not delivered, input socket full */
 
-       u_quad_t rip6s_opackets;        /* total output packets */
+       uint64_t rip6s_opackets;        /* total output packets */
 };
 
 #ifdef _KERNEL

Modified: head/sys/netipsec/ah_var.h
==============================================================================
--- head/sys/netipsec/ah_var.h  Tue Jul  9 09:31:26 2013        (r253080)
+++ head/sys/netipsec/ah_var.h  Tue Jul  9 09:32:06 2013        (r253081)
@@ -48,26 +48,26 @@
 #define        AH_ALG_MAX      16
 
 struct ahstat {
-       u_int32_t       ahs_hdrops;     /* Packet shorter than header shows */
-       u_int32_t       ahs_nopf;       /* Protocol family not supported */
-       u_int32_t       ahs_notdb;
-       u_int32_t       ahs_badkcr;
-       u_int32_t       ahs_badauth;
-       u_int32_t       ahs_noxform;
-       u_int32_t       ahs_qfull;
-       u_int32_t       ahs_wrap;
-       u_int32_t       ahs_replay;
-       u_int32_t       ahs_badauthl;   /* Bad authenticator length */
-       u_int32_t       ahs_input;      /* Input AH packets */
-       u_int32_t       ahs_output;     /* Output AH packets */
-       u_int32_t       ahs_invalid;    /* Trying to use an invalid TDB */
-       u_int64_t       ahs_ibytes;     /* Input bytes */
-       u_int64_t       ahs_obytes;     /* Output bytes */
-       u_int32_t       ahs_toobig;     /* Packet got larger than IP_MAXPACKET 
*/
-       u_int32_t       ahs_pdrops;     /* Packet blocked due to policy */
-       u_int32_t       ahs_crypto;     /* Crypto processing failure */
-       u_int32_t       ahs_tunnel;     /* Tunnel sanity check failure */
-       u_int32_t       ahs_hist[AH_ALG_MAX];   /* Per-algorithm op count */
+       uint64_t        ahs_hdrops;     /* Packet shorter than header shows */
+       uint64_t        ahs_nopf;       /* Protocol family not supported */
+       uint64_t        ahs_notdb;
+       uint64_t        ahs_badkcr;
+       uint64_t        ahs_badauth;
+       uint64_t        ahs_noxform;
+       uint64_t        ahs_qfull;
+       uint64_t        ahs_wrap;
+       uint64_t        ahs_replay;
+       uint64_t        ahs_badauthl;   /* Bad authenticator length */
+       uint64_t        ahs_input;      /* Input AH packets */
+       uint64_t        ahs_output;     /* Output AH packets */
+       uint64_t        ahs_invalid;    /* Trying to use an invalid TDB */
+       uint64_t        ahs_ibytes;     /* Input bytes */
+       uint64_t        ahs_obytes;     /* Output bytes */
+       uint64_t        ahs_toobig;     /* Packet got larger than IP_MAXPACKET 
*/
+       uint64_t        ahs_pdrops;     /* Packet blocked due to policy */
+       uint64_t        ahs_crypto;     /* Crypto processing failure */
+       uint64_t        ahs_tunnel;     /* Tunnel sanity check failure */
+       uint64_t        ahs_hist[AH_ALG_MAX];   /* Per-algorithm op count */
 };
 
 #ifdef _KERNEL

Modified: head/sys/netipsec/esp_var.h
==============================================================================
--- head/sys/netipsec/esp_var.h Tue Jul  9 09:31:26 2013        (r253080)
+++ head/sys/netipsec/esp_var.h Tue Jul  9 09:32:06 2013        (r253081)
@@ -48,27 +48,27 @@
 #define        ESP_ALG_MAX     256             /* NB: could be < but skipjack 
is 249 */
 
 struct espstat {
-       u_int32_t       esps_hdrops;    /* Packet shorter than header shows */
-       u_int32_t       esps_nopf;      /* Protocol family not supported */
-       u_int32_t       esps_notdb;
-       u_int32_t       esps_badkcr;
-       u_int32_t       esps_qfull;
-       u_int32_t       esps_noxform;
-       u_int32_t       esps_badilen;
-       u_int32_t       esps_wrap;      /* Replay counter wrapped around */
-       u_int32_t       esps_badenc;    /* Bad encryption detected */
-       u_int32_t       esps_badauth;   /* Only valid for transforms with auth 
*/
-       u_int32_t       esps_replay;    /* Possible packet replay detected */
-       u_int32_t       esps_input;     /* Input ESP packets */
-       u_int32_t       esps_output;    /* Output ESP packets */
-       u_int32_t       esps_invalid;   /* Trying to use an invalid TDB */
-       u_int64_t       esps_ibytes;    /* Input bytes */
-       u_int64_t       esps_obytes;    /* Output bytes */
-       u_int32_t       esps_toobig;    /* Packet got larger than IP_MAXPACKET 
*/
-       u_int32_t       esps_pdrops;    /* Packet blocked due to policy */
-       u_int32_t       esps_crypto;    /* Crypto processing failure */
-       u_int32_t       esps_tunnel;    /* Tunnel sanity check failure */
-       u_int32_t       esps_hist[ESP_ALG_MAX]; /* Per-algorithm op count */
+       uint64_t        esps_hdrops;    /* Packet shorter than header shows */
+       uint64_t        esps_nopf;      /* Protocol family not supported */
+       uint64_t        esps_notdb;
+       uint64_t        esps_badkcr;
+       uint64_t        esps_qfull;
+       uint64_t        esps_noxform;
+       uint64_t        esps_badilen;
+       uint64_t        esps_wrap;      /* Replay counter wrapped around */
+       uint64_t        esps_badenc;    /* Bad encryption detected */
+       uint64_t        esps_badauth;   /* Only valid for transforms with auth 
*/
+       uint64_t        esps_replay;    /* Possible packet replay detected */
+       uint64_t        esps_input;     /* Input ESP packets */
+       uint64_t        esps_output;    /* Output ESP packets */
+       uint64_t        esps_invalid;   /* Trying to use an invalid TDB */
+       uint64_t        esps_ibytes;    /* Input bytes */
+       uint64_t        esps_obytes;    /* Output bytes */
+       uint64_t        esps_toobig;    /* Packet got larger than IP_MAXPACKET 
*/
+       uint64_t        esps_pdrops;    /* Packet blocked due to policy */
+       uint64_t        esps_crypto;    /* Crypto processing failure */
+       uint64_t        esps_tunnel;    /* Tunnel sanity check failure */
+       uint64_t        esps_hist[ESP_ALG_MAX]; /* Per-algorithm op count */
 };
 
 #ifdef _KERNEL

Modified: head/sys/netipsec/ipcomp_var.h
==============================================================================
--- head/sys/netipsec/ipcomp_var.h      Tue Jul  9 09:31:26 2013        
(r253080)
+++ head/sys/netipsec/ipcomp_var.h      Tue Jul  9 09:32:06 2013        
(r253081)
@@ -41,27 +41,26 @@
  */
 #define        IPCOMP_ALG_MAX  8
 
-#define        IPCOMPSTAT_VERSION      1
+#define        IPCOMPSTAT_VERSION      2
 struct ipcompstat {
-       u_int32_t       ipcomps_hdrops; /* Packet shorter than header shows */
-       u_int32_t       ipcomps_nopf;   /* Protocol family not supported */
-       u_int32_t       ipcomps_notdb;
-       u_int32_t       ipcomps_badkcr;
-       u_int32_t       ipcomps_qfull;
-       u_int32_t       ipcomps_noxform;
-       u_int32_t       ipcomps_wrap;
-       u_int32_t       ipcomps_input;  /* Input IPcomp packets */
-       u_int32_t       ipcomps_output; /* Output IPcomp packets */
-       u_int32_t       ipcomps_invalid;/* Trying to use an invalid TDB */
-       u_int64_t       ipcomps_ibytes; /* Input bytes */
-       u_int64_t       ipcomps_obytes; /* Output bytes */
-       u_int32_t       ipcomps_toobig; /* Packet got > IP_MAXPACKET */
-       u_int32_t       ipcomps_pdrops; /* Packet blocked due to policy */
-       u_int32_t       ipcomps_crypto; /* "Crypto" processing failure */
-       u_int32_t       ipcomps_hist[IPCOMP_ALG_MAX];/* Per-algorithm op count 
*/
-       u_int32_t       version;        /* Version of this structure. */
-       u_int32_t       ipcomps_threshold; /* Packet < comp. algo. threshold. */
-       u_int32_t       ipcomps_uncompr; /* Compression was useles. */
+       uint64_t        ipcomps_hdrops; /* Packet shorter than header shows */
+       uint64_t        ipcomps_nopf;   /* Protocol family not supported */
+       uint64_t        ipcomps_notdb;
+       uint64_t        ipcomps_badkcr;
+       uint64_t        ipcomps_qfull;
+       uint64_t        ipcomps_noxform;
+       uint64_t        ipcomps_wrap;
+       uint64_t        ipcomps_input;  /* Input IPcomp packets */
+       uint64_t        ipcomps_output; /* Output IPcomp packets */
+       uint64_t        ipcomps_invalid;/* Trying to use an invalid TDB */
+       uint64_t        ipcomps_ibytes; /* Input bytes */
+       uint64_t        ipcomps_obytes; /* Output bytes */
+       uint64_t        ipcomps_toobig; /* Packet got > IP_MAXPACKET */
+       uint64_t        ipcomps_pdrops; /* Packet blocked due to policy */
+       uint64_t        ipcomps_crypto; /* "Crypto" processing failure */
+       uint64_t        ipcomps_hist[IPCOMP_ALG_MAX];/* Per-algorithm op count 
*/
+       uint64_t        ipcomps_threshold; /* Packet < comp. algo. threshold. */
+       uint64_t        ipcomps_uncompr; /* Compression was useles. */
 };
 
 #ifdef _KERNEL

Modified: head/sys/netipsec/ipip_var.h
==============================================================================
--- head/sys/netipsec/ipip_var.h        Tue Jul  9 09:31:26 2013        
(r253080)
+++ head/sys/netipsec/ipip_var.h        Tue Jul  9 09:32:06 2013        
(r253081)
@@ -44,18 +44,17 @@
  * Not quite all the functionality of RFC-1853, but the main idea is there.
  */
 
-struct ipipstat
-{
-    u_int32_t  ipips_ipackets;         /* total input packets */
-    u_int32_t  ipips_opackets;         /* total output packets */
-    u_int32_t  ipips_hdrops;           /* packet shorter than header shows */
-    u_int32_t  ipips_qfull;
-    u_int64_t   ipips_ibytes;
-    u_int64_t   ipips_obytes;
-    u_int32_t  ipips_pdrops;           /* packet dropped due to policy */
-    u_int32_t  ipips_spoof;            /* IP spoofing attempts */
-    u_int32_t   ipips_family;          /* Protocol family mismatch */
-    u_int32_t   ipips_unspec;            /* Missing tunnel endpoint address */
+struct ipipstat {
+       uint64_t        ipips_ipackets; /* total input packets */
+       uint64_t        ipips_opackets; /* total output packets */
+       uint64_t        ipips_hdrops;   /* packet shorter than header shows */
+       uint64_t        ipips_qfull;
+       uint64_t        ipips_ibytes;
+       uint64_t        ipips_obytes;
+       uint64_t        ipips_pdrops;   /* packet dropped due to policy */
+       uint64_t        ipips_spoof;    /* IP spoofing attempts */
+       uint64_t        ipips_family;   /* Protocol family mismatch */
+       uint64_t        ipips_unspec;   /* Missing tunnel endpoint address */
 };
 
 #ifdef _KERNEL

Modified: head/sys/netipsec/ipsec.h
==============================================================================
--- head/sys/netipsec/ipsec.h   Tue Jul  9 09:31:26 2013        (r253080)
+++ head/sys/netipsec/ipsec.h   Tue Jul  9 09:32:06 2013        (r253081)
@@ -217,54 +217,54 @@ struct secspacq {
 
 /* statistics for ipsec processing */
 struct ipsecstat {
-       u_quad_t in_success;  /* succeeded inbound process */
-       u_quad_t in_polvio;
+       uint64_t in_success;  /* succeeded inbound process */
+       uint64_t in_polvio;
                        /* security policy violation for inbound process */
-       u_quad_t in_nosa;     /* inbound SA is unavailable */
-       u_quad_t in_inval;    /* inbound processing failed due to EINVAL */
-       u_quad_t in_nomem;    /* inbound processing failed due to ENOBUFS */
-       u_quad_t in_badspi;   /* failed getting a SPI */
-       u_quad_t in_ahreplay; /* AH replay check failed */
-       u_quad_t in_espreplay; /* ESP replay check failed */
-       u_quad_t in_ahauthsucc; /* AH authentication success */
-       u_quad_t in_ahauthfail; /* AH authentication failure */
-       u_quad_t in_espauthsucc; /* ESP authentication success */
-       u_quad_t in_espauthfail; /* ESP authentication failure */
-       u_quad_t in_esphist[256];
-       u_quad_t in_ahhist[256];
-       u_quad_t in_comphist[256];
-       u_quad_t out_success; /* succeeded outbound process */
-       u_quad_t out_polvio;
+       uint64_t in_nosa;     /* inbound SA is unavailable */
+       uint64_t in_inval;    /* inbound processing failed due to EINVAL */
+       uint64_t in_nomem;    /* inbound processing failed due to ENOBUFS */
+       uint64_t in_badspi;   /* failed getting a SPI */
+       uint64_t in_ahreplay; /* AH replay check failed */
+       uint64_t in_espreplay; /* ESP replay check failed */
+       uint64_t in_ahauthsucc; /* AH authentication success */
+       uint64_t in_ahauthfail; /* AH authentication failure */
+       uint64_t in_espauthsucc; /* ESP authentication success */
+       uint64_t in_espauthfail; /* ESP authentication failure */
+       uint64_t in_esphist[256];
+       uint64_t in_ahhist[256];
+       uint64_t in_comphist[256];
+       uint64_t out_success; /* succeeded outbound process */
+       uint64_t out_polvio;
                        /* security policy violation for outbound process */
-       u_quad_t out_nosa;    /* outbound SA is unavailable */
-       u_quad_t out_inval;   /* outbound process failed due to EINVAL */
-       u_quad_t out_nomem;    /* inbound processing failed due to ENOBUFS */
-       u_quad_t out_noroute; /* there is no route */
-       u_quad_t out_esphist[256];
-       u_quad_t out_ahhist[256];
-       u_quad_t out_comphist[256];
-
-       u_quad_t spdcachelookup;
-       u_quad_t spdcachemiss;
-
-       u_int32_t ips_in_polvio;        /* input: sec policy violation */
-       u_int32_t ips_out_polvio;       /* output: sec policy violation */
-       u_int32_t ips_out_nosa;         /* output: SA unavailable  */
-       u_int32_t ips_out_nomem;        /* output: no memory available */
-       u_int32_t ips_out_noroute;      /* output: no route available */
-       u_int32_t ips_out_inval;        /* output: generic error */
-       u_int32_t ips_out_bundlesa;     /* output: bundled SA processed */
-       u_int32_t ips_mbcoalesced;      /* mbufs coalesced during clone */
-       u_int32_t ips_clcoalesced;      /* clusters coalesced during clone */
-       u_int32_t ips_clcopied;         /* clusters copied during clone */
-       u_int32_t ips_mbinserted;       /* mbufs inserted during makespace */
+       uint64_t out_nosa;    /* outbound SA is unavailable */
+       uint64_t out_inval;   /* outbound process failed due to EINVAL */
+       uint64_t out_nomem;    /* inbound processing failed due to ENOBUFS */
+       uint64_t out_noroute; /* there is no route */
+       uint64_t out_esphist[256];
+       uint64_t out_ahhist[256];
+       uint64_t out_comphist[256];
+
+       uint64_t spdcachelookup;
+       uint64_t spdcachemiss;
+
+       uint64_t ips_in_polvio;         /* input: sec policy violation */
+       uint64_t ips_out_polvio;        /* output: sec policy violation */
+       uint64_t ips_out_nosa;          /* output: SA unavailable  */
+       uint64_t ips_out_nomem;         /* output: no memory available */
+       uint64_t ips_out_noroute;       /* output: no route available */
+       uint64_t ips_out_inval;         /* output: generic error */
+       uint64_t ips_out_bundlesa;      /* output: bundled SA processed */
+       uint64_t ips_mbcoalesced;       /* mbufs coalesced during clone */
+       uint64_t ips_clcoalesced;       /* clusters coalesced during clone */
+       uint64_t ips_clcopied;          /* clusters copied during clone */
+       uint64_t ips_mbinserted;        /* mbufs inserted during makespace */
        /* 
         * Temporary statistics for performance analysis.
         */
        /* See where ESP/AH/IPCOMP header land in mbuf on input */
-       u_int32_t ips_input_front;
-       u_int32_t ips_input_middle;
-       u_int32_t ips_input_end;
+       uint64_t ips_input_front;
+       uint64_t ips_input_middle;
+       uint64_t ips_input_end;
 };
 
 /*

Modified: head/sys/netipsec/keysock.h
==============================================================================
--- head/sys/netipsec/keysock.h Tue Jul  9 09:31:26 2013        (r253080)
+++ head/sys/netipsec/keysock.h Tue Jul  9 09:32:06 2013        (r253081)
@@ -36,26 +36,26 @@
 /* statistics for pfkey socket */
 struct pfkeystat {
        /* kernel -> userland */
-       u_quad_t out_total;             /* # of total calls */
-       u_quad_t out_bytes;             /* total bytecount */
-       u_quad_t out_msgtype[256];      /* message type histogram */
-       u_quad_t out_invlen;            /* invalid length field */
-       u_quad_t out_invver;            /* invalid version field */
-       u_quad_t out_invmsgtype;        /* invalid message type field */
-       u_quad_t out_tooshort;          /* msg too short */
-       u_quad_t out_nomem;             /* memory allocation failure */
-       u_quad_t out_dupext;            /* duplicate extension */
-       u_quad_t out_invexttype;        /* invalid extension type */
-       u_quad_t out_invsatype;         /* invalid sa type */
-       u_quad_t out_invaddr;           /* invalid address extension */
+       uint64_t out_total;             /* # of total calls */
+       uint64_t out_bytes;             /* total bytecount */
+       uint64_t out_msgtype[256];      /* message type histogram */
+       uint64_t out_invlen;            /* invalid length field */
+       uint64_t out_invver;            /* invalid version field */
+       uint64_t out_invmsgtype;        /* invalid message type field */
+       uint64_t out_tooshort;          /* msg too short */
+       uint64_t out_nomem;             /* memory allocation failure */
+       uint64_t out_dupext;            /* duplicate extension */
+       uint64_t out_invexttype;        /* invalid extension type */
+       uint64_t out_invsatype;         /* invalid sa type */
+       uint64_t out_invaddr;           /* invalid address extension */
        /* userland -> kernel */
-       u_quad_t in_total;              /* # of total calls */
-       u_quad_t in_bytes;              /* total bytecount */
-       u_quad_t in_msgtype[256];       /* message type histogram */
-       u_quad_t in_msgtarget[3];       /* one/all/registered */
-       u_quad_t in_nomem;              /* memory allocation failure */
+       uint64_t in_total;              /* # of total calls */
+       uint64_t in_bytes;              /* total bytecount */
+       uint64_t in_msgtype[256];       /* message type histogram */
+       uint64_t in_msgtarget[3];       /* one/all/registered */
+       uint64_t in_nomem;              /* memory allocation failure */
        /* others */
-       u_quad_t sockerr;               /* # of socket related errors */
+       uint64_t sockerr;               /* # of socket related errors */
 };
 
 #define KEY_SENDUP_ONE         0

Modified: head/sys/netipsec/xform_ipcomp.c
==============================================================================
--- head/sys/netipsec/xform_ipcomp.c    Tue Jul  9 09:31:26 2013        
(r253080)
+++ head/sys/netipsec/xform_ipcomp.c    Tue Jul  9 09:32:06 2013        
(r253081)
@@ -636,8 +636,6 @@ static void
 vnet_ipcomp_attach(const void *unused __unused)
 {
 
-       /* XXX */
-       V_ipcompstat.version = IPCOMPSTAT_VERSION;
 }
 
 VNET_SYSINIT(vnet_ipcomp_xform_init, SI_SUB_PROTO_DOMAIN, SI_ORDER_MIDDLE,

Modified: head/tools/tools/crypto/ipsecstats.c
==============================================================================
--- head/tools/tools/crypto/ipsecstats.c        Tue Jul  9 09:31:26 2013        
(r253080)
+++ head/tools/tools/crypto/ipsecstats.c        Tue Jul  9 09:32:06 2013        
(r253081)
@@ -82,7 +82,7 @@ algname(int a, const struct alg algs[], 
 int
 main(int argc, char *argv[])
 {
-#define        STAT(x,fmt)     if (x) printf(fmt "\n", x)
+#define        STAT(x,fmt)     if (x) printf(fmt "\n", (uintmax_t)x)
        struct ipsecstat ips;
        struct ahstat ahs;
        struct espstat esps;
@@ -99,8 +99,7 @@ main(int argc, char *argv[])
        if (sysctlbyname("net.inet.esp.stats", &esps, &slen, NULL, NULL) < 0)
                err(1, "net.inet.esp.stats");
 
-#define        AHSTAT(x,fmt)   if (x) printf("ah " fmt ": %u\n", x)
-#define        AHSTAT64(x,fmt) if (x) printf("ah " fmt ": %llu\n", x)
+#define        AHSTAT(x,fmt)   if (x) printf("ah " fmt ": %ju\n", (uintmax_t)x)
        AHSTAT(ahs.ahs_input, "input packets processed");
        AHSTAT(ahs.ahs_output, "output packets processed");
        AHSTAT(ahs.ahs_hdrops, "headers too short");
@@ -120,17 +119,15 @@ main(int argc, char *argv[])
        AHSTAT(ahs.ahs_tunnel, "tunnel sanity check failures");
        for (i = 0; i < AH_ALG_MAX; i++)
                if (ahs.ahs_hist[i])
-                       printf("ah packets with %s: %u\n"
+                       printf("ah packets with %s: %ju\n"
                                , algname(i, aalgs, N(aalgs))
-                               , ahs.ahs_hist[i]
+                               , (uintmax_t)ahs.ahs_hist[i]
                        );
-       AHSTAT64(ahs.ahs_ibytes, "bytes received");
-       AHSTAT64(ahs.ahs_obytes, "bytes transmitted");
-#undef AHSTAT64
+       AHSTAT(ahs.ahs_ibytes, "bytes received");
+       AHSTAT(ahs.ahs_obytes, "bytes transmitted");
 #undef AHSTAT
 
-#define        ESPSTAT(x,fmt)  if (x) printf("esp " fmt ": %u\n", x)
-#define        ESPSTAT64(x,fmt)        if (x) printf("esp " fmt ": %llu\n", x)
+#define        ESPSTAT(x,fmt)  if (x) printf("esp " fmt ": %ju\n", 
(uintmax_t)x)
        ESPSTAT(esps.esps_input, "input packets processed");
        ESPSTAT(esps.esps_output, "output packets processed");
        ESPSTAT(esps.esps_hdrops, "headers too short");
@@ -151,29 +148,30 @@ main(int argc, char *argv[])
        ESPSTAT(esps.esps_tunnel, "tunnel sanity check failures");
        for (i = 0; i < ESP_ALG_MAX; i++)
                if (esps.esps_hist[i])
-                       printf("esp packets with %s: %u\n"
+                       printf("esp packets with %s: %ju\n"
                                , algname(i, espalgs, N(espalgs))
-                               , esps.esps_hist[i]
+                               , (uintmax_t)esps.esps_hist[i]
                        );
-       ESPSTAT64(esps.esps_ibytes, "bytes received");
-       ESPSTAT64(esps.esps_obytes, "bytes transmitted");
-#undef ESPSTAT64
+       ESPSTAT(esps.esps_ibytes, "bytes received");
+       ESPSTAT(esps.esps_obytes, "bytes transmitted");
 #undef ESPSTAT
 
        printf("\n");
        if (ips.ips_in_polvio+ips.ips_out_polvio)
-               printf("policy violations: input %u output %u\n",
-                       ips.ips_in_polvio, ips.ips_out_polvio);
-       STAT(ips.ips_out_nosa, "no SA found %u (output)");
-       STAT(ips.ips_out_nomem, "no memory available %u (output)");
-       STAT(ips.ips_out_noroute, "no route available %u (output)");
-       STAT(ips.ips_out_inval, "generic error %u (output)");
-       STAT(ips.ips_out_bundlesa, "bundled SA processed %u (output)");
-       printf("m_clone processing: %u mbufs + %u clusters coalesced\n",
-               ips.ips_mbcoalesced, ips.ips_clcoalesced);
-       printf("m_clone processing: %u clusters copied\n", ips.ips_clcopied);
-       printf("m_makespace: %u mbufs inserted\n", ips.ips_mbinserted);
-       printf("header position [front/middle/end]: %u/%u/%u\n",
-               ips.ips_input_front, ips.ips_input_middle, ips.ips_input_end);
+               printf("policy violations: input %ju output %ju\n",
+                   (uintmax_t)ips.ips_in_polvio,
+                   (uintmax_t)ips.ips_out_polvio);

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to