Annotation of sys/netinet/ip_ether.h, Revision 1.1
1.1 ! nbrk 1: /* $OpenBSD: ip_ether.h,v 1.13 2002/06/09 16:26:10 itojun Exp $ */
! 2: /*
! 3: * The author of this code is Angelos D. Keromytis (angelos@adk.gr)
! 4: *
! 5: * This code was written by Angelos D. Keromytis in October 1999.
! 6: *
! 7: * Copyright (C) 1999-2001 Angelos D. Keromytis.
! 8: *
! 9: * Permission to use, copy, and modify this software with or without fee
! 10: * is hereby granted, provided that this entire notice is included in
! 11: * all copies of any software which is or includes a copy or
! 12: * modification of this software.
! 13: * You may use this code under the GNU public license if you so wish. Please
! 14: * contribute changes back to the authors under this freer than GPL license
! 15: * so that we may further the use of strong encryption without limitations to
! 16: * all.
! 17: *
! 18: * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR
! 19: * IMPLIED WARRANTY. IN PARTICULAR, NONE OF THE AUTHORS MAKES ANY
! 20: * REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE
! 21: * MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR
! 22: * PURPOSE.
! 23: */
! 24:
! 25: #ifndef _NETINET_IP_ETHER_H_
! 26: #define _NETINET_IP_ETHER_H_
! 27:
! 28: /*
! 29: * Ethernet-inside-IP processing.
! 30: */
! 31:
! 32: struct etheripstat {
! 33: u_int32_t etherip_hdrops; /* packet shorter than header shows */
! 34: u_int32_t etherip_qfull; /* bridge queue full, packet dropped */
! 35: u_int32_t etherip_noifdrops; /* no interface/bridge information */
! 36: u_int32_t etherip_pdrops; /* packet dropped due to policy */
! 37: u_int32_t etherip_adrops; /* all other drops */
! 38: u_int32_t etherip_ipackets; /* total input packets */
! 39: u_int32_t etherip_opackets; /* total output packets */
! 40: u_int64_t etherip_ibytes; /* input bytes */
! 41: u_int64_t etherip_obytes; /* output bytes */
! 42: };
! 43:
! 44: struct etherip_header {
! 45: u_int8_t eip_ver; /* version/reserved */
! 46: u_int8_t eip_pad; /* required padding byte */
! 47: };
! 48: #define ETHERIP_VER_VERS_MASK 0x0f
! 49: #define ETHERIP_VER_RSVD_MASK 0xf0
! 50:
! 51: #define ETHERIP_VERSION 0x03
! 52:
! 53: /*
! 54: * Names for Ether-IP sysctl objects
! 55: */
! 56: #define ETHERIPCTL_ALLOW 1 /* accept incoming EtherIP packets */
! 57: #define ETHERIPCTL_MAXID 2
! 58:
! 59: #define ETHERIPCTL_NAMES { \
! 60: { 0, 0 }, \
! 61: { "allow", CTLTYPE_INT }, \
! 62: }
! 63:
! 64: #ifdef _KERNEL
! 65: int etherip_sysctl(int *, u_int, void *, size_t *, void *, size_t);
! 66:
! 67: extern int etherip_allow;
! 68: extern struct etheripstat etheripstat;
! 69: #endif /* _KERNEL */
! 70: #endif /* _NETINET_IP_ETHER_H_ */
CVSweb