root/netinet/ip_ecn.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


    1 /*      $OpenBSD: ip_ecn.h,v 1.5 2002/05/16 14:10:51 kjc Exp $  */
    2 /*      $KAME: ip_ecn.h,v 1.5 2000/03/27 04:58:38 sumikawa Exp $        */
    3 
    4 /*
    5  * Copyright (C) 1999 WIDE Project.
    6  * All rights reserved.
    7  *
    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.
   19  *
   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 #ifndef _NETINET_IP_ECN_H_
   35 #define _NETINET_IP_ECN_H_
   36 
   37 /*
   38  * ECN consideration on tunnel ingress/egress operation.
   39  * http://www.aciri.org/floyd/papers/draft-ipsec-ecn-00.txt
   40  */
   41 
   42 #define ECN_ALLOWED     1       /* ECN allowed */
   43 #define ECN_FORBIDDEN   0       /* ECN forbidden */
   44 #define ECN_NOCARE      (-1)    /* no consideration to ECN */
   45 
   46 #if defined(_KERNEL)
   47 extern void ip_ecn_ingress(int, u_int8_t *, u_int8_t *);
   48 extern int ip_ecn_egress(int, u_int8_t *, u_int8_t *);
   49 #ifdef INET6
   50 extern void ip6_ecn_ingress(int, u_int32_t *, u_int32_t *);
   51 extern int ip6_ecn_egress(int, u_int32_t *, u_int32_t *);
   52 #endif /* INET6 */
   53 #endif /* _KERNEL */
   54 #endif /* _NETINET_IP_ECN_H_ */

/* [<][>][^][v][top][bottom][index][help] */