[BACK]Return to udp6_var.h CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / netinet6

Annotation of src/sys/netinet6/udp6_var.h, Revision 1.9.6.2

1.9.6.2 ! jdolecek    1: /*     $NetBSD: udp6_var.h,v 1.9.6.1 2002/01/10 20:03:33 thorpej Exp $ */
1.9       itojun      2: /*     $KAME: udp6_var.h,v 1.11 2000/06/05 00:14:31 itojun Exp $       */
1.3       thorpej     3:
1.2       itojun      4: /*
                      5:  * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
                      6:  * All rights reserved.
1.9       itojun      7:  *
1.2       itojun      8:  * Redistribution and use in source and binary forms, with or without
                      9:  * modification, are permitted provided that the following conditions
                     10:  * are met:
                     11:  * 1. Redistributions of source code must retain the above copyright
                     12:  *    notice, this list of conditions and the following disclaimer.
                     13:  * 2. Redistributions in binary form must reproduce the above copyright
                     14:  *    notice, this list of conditions and the following disclaimer in the
                     15:  *    documentation and/or other materials provided with the distribution.
                     16:  * 3. Neither the name of the project nor the names of its contributors
                     17:  *    may be used to endorse or promote products derived from this software
                     18:  *    without specific prior written permission.
1.9       itojun     19:  *
1.2       itojun     20:  * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
                     21:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     22:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     23:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
                     24:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     25:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     26:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     27:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     28:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     29:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     30:  * SUCH DAMAGE.
                     31:  */
                     32:
                     33: /*
                     34:  * Copyright (c) 1982, 1986, 1989, 1993
                     35:  *     The Regents of the University of California.  All rights reserved.
                     36:  *
                     37:  * Redistribution and use in source and binary forms, with or without
                     38:  * modification, are permitted provided that the following conditions
                     39:  * are met:
                     40:  * 1. Redistributions of source code must retain the above copyright
                     41:  *    notice, this list of conditions and the following disclaimer.
                     42:  * 2. Redistributions in binary form must reproduce the above copyright
                     43:  *    notice, this list of conditions and the following disclaimer in the
                     44:  *    documentation and/or other materials provided with the distribution.
                     45:  * 3. All advertising materials mentioning features or use of this software
                     46:  *    must display the following acknowledgement:
                     47:  *     This product includes software developed by the University of
                     48:  *     California, Berkeley and its contributors.
                     49:  * 4. Neither the name of the University nor the names of its contributors
                     50:  *    may be used to endorse or promote products derived from this software
                     51:  *    without specific prior written permission.
                     52:  *
                     53:  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     54:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     55:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     56:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     57:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     58:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     59:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     60:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     61:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     62:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     63:  * SUCH DAMAGE.
                     64:  *
                     65:  *     @(#)udp_var.h   8.1 (Berkeley) 6/10/93
                     66:  */
                     67:
                     68: #ifndef _NETINET6_UDP6_VAR_H_
                     69: #define _NETINET6_UDP6_VAR_H_
                     70:
                     71: /*
                     72:  * UDP Kernel structures and variables.
                     73:  */
                     74: struct udp6stat {
                     75:                                /* input statistics: */
1.4       bouyer     76:        u_quad_t udp6s_ipackets;        /* total input packets */
                     77:        u_quad_t udp6s_hdrops;          /* packet shorter than header */
                     78:        u_quad_t udp6s_badsum;          /* checksum error */
                     79:        u_quad_t udp6s_nosum;           /* no checksum */
                     80:        u_quad_t udp6s_badlen;          /* data length larger than packet */
                     81:        u_quad_t udp6s_noport;          /* no socket on port */
                     82:        u_quad_t udp6s_noportmcast;     /* of above, arrived as broadcast */
                     83:        u_quad_t udp6s_fullsock;        /* not delivered, input socket full */
                     84:        u_quad_t udp6ps_pcbcachemiss;   /* input packets missing pcb cache */
1.2       itojun     85:                                /* output statistics: */
1.4       bouyer     86:        u_quad_t udp6s_opackets;        /* total output packets */
1.2       itojun     87: };
                     88:
                     89: /*
                     90:  * Names for UDP sysctl objects
                     91:  */
1.8       itojun     92: #define UDP6CTL_SENDSPACE      1       /* default send buffer */
1.2       itojun     93: #define UDP6CTL_RECVSPACE      2       /* default recv buffer */
                     94: #define UDP6CTL_MAXID          3
                     95:
                     96: #define UDP6CTL_NAMES { \
                     97:        { 0, 0 }, \
1.8       itojun     98:        { "sendspace", CTLTYPE_INT }, \
1.2       itojun     99:        { "recvspace", CTLTYPE_INT }, \
                    100: }
                    101:
                    102: #ifdef _KERNEL
1.9.6.2 ! jdolecek  103: extern struct  in6pcb udb6;
        !           104: extern struct  udp6stat udp6stat;
1.2       itojun    105:
1.5       itojun    106: void   udp6_ctlinput __P((int, struct sockaddr *, void *));
1.2       itojun    107: void   udp6_init __P((void));
                    108: int    udp6_input __P((struct mbuf **, int *, int));
1.9       itojun    109: int    udp6_output __P((struct in6pcb *, struct mbuf *, struct mbuf *,
                    110:        struct mbuf *, struct proc *));
1.2       itojun    111: int    udp6_sysctl __P((int *, u_int, void *, size_t *, void *, size_t));
1.5       itojun    112: int    udp6_usrreq __P((struct socket *,
                    113:                         int, struct mbuf *, struct mbuf *, struct mbuf *,
                    114:                         struct proc *));
1.2       itojun    115: #endif /* _KERNEL */
                    116:
1.9.6.1   thorpej   117: #endif /* _NETINET6_UDP6_VAR_H_ */

CVSweb <webmaster@jp.NetBSD.org>