[BACK]Return to ip_ipip.h CVS log [TXT][DIR] Up to [local] / sys / netinet

Annotation of sys/netinet/ip_ipip.h, Revision 1.1.1.1

1.1       nbrk        1: /*     $OpenBSD: ip_ipip.h,v 1.5 2002/06/09 16:26:10 itojun Exp $ */
                      2: /*
                      3:  * The authors of this code are John Ioannidis (ji@tla.org),
                      4:  * Angelos D. Keromytis (kermit@csd.uch.gr) and
                      5:  * Niels Provos (provos@physnet.uni-hamburg.de).
                      6:  *
                      7:  * The original version of this code was written by John Ioannidis
                      8:  * for BSD/OS in Athens, Greece, in November 1995.
                      9:  *
                     10:  * Ported to OpenBSD and NetBSD, with additional transforms, in December 1996,
                     11:  * by Angelos D. Keromytis.
                     12:  *
                     13:  * Additional transforms and features in 1997 and 1998 by Angelos D. Keromytis
                     14:  * and Niels Provos.
                     15:  *
                     16:  * Additional features in 1999 by Angelos D. Keromytis.
                     17:  *
                     18:  * Copyright (C) 1995, 1996, 1997, 1998, 1999 by John Ioannidis,
                     19:  * Angelos D. Keromytis and Niels Provos.
                     20:  * Copyright (c) 2001, Angelos D. Keromytis.
                     21:  *
                     22:  * Permission to use, copy, and modify this software with or without fee
                     23:  * is hereby granted, provided that this entire notice is included in
                     24:  * all copies of any software which is or includes a copy or
                     25:  * modification of this software.
                     26:  * You may use this code under the GNU public license if you so wish. Please
                     27:  * contribute changes back to the authors under this freer than GPL license
                     28:  * so that we may further the use of strong encryption without limitations to
                     29:  * all.
                     30:  *
                     31:  * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR
                     32:  * IMPLIED WARRANTY. IN PARTICULAR, NONE OF THE AUTHORS MAKES ANY
                     33:  * REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE
                     34:  * MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR
                     35:  * PURPOSE.
                     36:  */
                     37:
                     38: #ifndef _NETINET_IPIP_H_
                     39: #define _NETINET_IPIP_H_
                     40:
                     41: /*
                     42:  * IP-inside-IP processing.
                     43:  * Not quite all the functionality of RFC-1853, but the main idea is there.
                     44:  */
                     45:
                     46: struct ipipstat
                     47: {
                     48:     u_int32_t  ipips_ipackets;         /* total input packets */
                     49:     u_int32_t  ipips_opackets;         /* total output packets */
                     50:     u_int32_t  ipips_hdrops;           /* packet shorter than header shows */
                     51:     u_int32_t  ipips_qfull;
                     52:     u_int64_t   ipips_ibytes;
                     53:     u_int64_t   ipips_obytes;
                     54:     u_int32_t  ipips_pdrops;           /* packet dropped due to policy */
                     55:     u_int32_t  ipips_spoof;            /* IP spoofing attempts */
                     56:     u_int32_t   ipips_family;          /* Protocol family mismatch */
                     57:     u_int32_t   ipips_unspec;            /* Missing tunnel endpoint address */
                     58: };
                     59:
                     60: #define IP4_DEFAULT_TTL    0
                     61: #define IP4_SAME_TTL     -1
                     62:
                     63: /*
                     64:  * Names for IPIP sysctl objects
                     65:  */
                     66: #define        IPIPCTL_ALLOW   1               /* accept incoming IP4 packets */
                     67: #define IPIPCTL_MAXID  2
                     68:
                     69: #define IPIPCTL_NAMES { \
                     70:        { 0, 0 }, \
                     71:        { "allow", CTLTYPE_INT }, \
                     72: }
                     73:
                     74: #ifdef _KERNEL
                     75: int    ipip_sysctl(int *, u_int, void *, size_t *, void *, size_t);
                     76:
                     77: extern int ipip_allow;
                     78: extern struct ipipstat ipipstat;
                     79: #endif /* _KERNEL */
                     80: #endif /* _NETINET_IPIP_H_ */

CVSweb