pim6_var.h revision 53541
1/* 2 * Copyright (C) 1998 WIDE Project. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the project nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 * 29 * $FreeBSD: head/sys/netinet6/pim6_var.h 53541 1999-11-22 02:45:11Z shin $ 30 */ 31/* $Id: pim6_var.h,v 1.2 1999/08/01 15:58:13 itojun Exp $ */ 32 33#ifndef _NETINET6_PIM6_VAR_H_ 34#define _NETINET6_PIM6_VAR_H_ 35 36/* 37 * Protocol Independent Multicast (PIM), 38 * implementation-specific definitions. 39 * 40 * Written by George Edmond Eddy (Rusty), ISI, February 1998 41 * Modified by Pavlin Ivanov Radoslavov, USC/ISI, May 1998 42 */ 43 44struct pim6stat { 45 u_int pim6s_rcv_total; /* total PIM messages received */ 46 u_int pim6s_rcv_tooshort; /* received with too few bytes */ 47 u_int pim6s_rcv_badsum; /* received with bad checksum */ 48 u_int pim6s_rcv_badversion; /* received bad PIM version */ 49 u_int pim6s_rcv_registers; /* received registers */ 50 u_int pim6s_rcv_badregisters; /* received invalid registers */ 51 u_int pim6s_snd_registers; /* sent registers */ 52}; 53 54#if (defined(KERNEL)) || (defined(_KERNEL)) 55extern struct pim6stat pim6stat; 56 57int pim6_input __P((struct mbuf **, int*, int)); 58#endif /* KERNEL */ 59 60/* 61 * Names for PIM sysctl objects 62 */ 63#define PIMCTL_STATS 1 /* statistics (read-only) */ 64#define PIMCTL_MAXID 2 65 66#define PIMCTL_NAMES { \ 67 { 0, 0 }, \ 68 { 0, 0 }, \ 69} 70 71#endif /* _NETINET6_PIM6_VAR_H_ */ 72