1107120Sjulian/* 2107120Sjulian * ng_h4_prse.h 3139823Simp */ 4139823Simp 5139823Simp/*- 6107120Sjulian * Copyright (c) 2001 Maksim Yevmenkin <m_evmenkin@yahoo.com> 7107120Sjulian * All rights reserved. 8107120Sjulian * 9107120Sjulian * Redistribution and use in source and binary forms, with or without 10107120Sjulian * modification, are permitted provided that the following conditions 11107120Sjulian * are met: 12107120Sjulian * 1. Redistributions of source code must retain the above copyright 13107120Sjulian * notice, this list of conditions and the following disclaimer. 14107120Sjulian * 2. Redistributions in binary form must reproduce the above copyright 15107120Sjulian * notice, this list of conditions and the following disclaimer in the 16107120Sjulian * documentation and/or other materials provided with the distribution. 17107120Sjulian * 18107120Sjulian * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 19107120Sjulian * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20107120Sjulian * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21107120Sjulian * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 22107120Sjulian * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23107120Sjulian * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24107120Sjulian * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25107120Sjulian * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26107120Sjulian * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27107120Sjulian * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28107120Sjulian * SUCH DAMAGE. 29107120Sjulian * 30171818Semax * $Id: ng_h4_prse.h,v 1.4 2005/10/31 17:57:43 max Exp $ 31107120Sjulian * $FreeBSD$ 32107120Sjulian */ 33107120Sjulian 34107120Sjulian/*************************************************************************** 35107120Sjulian *************************************************************************** 36107120Sjulian ** ng_parse definitions for the H4 node 37107120Sjulian *************************************************************************** 38107120Sjulian ***************************************************************************/ 39107120Sjulian 40107120Sjulian#ifndef _NETGRAPH_H4_PRSE_H_ 41122634Semax#define _NETGRAPH_H4_PRSE_H_ 42107120Sjulian 43107120Sjulian/* 44107120Sjulian * H4 node command list 45107120Sjulian */ 46107120Sjulian 47107120Sjulian/* Stat info */ 48107120Sjulianstatic const struct ng_parse_struct_field ng_h4_stat_type_fields[] = 49107120Sjulian{ 50107120Sjulian { "pckts_recv", &ng_parse_uint32_type, }, 51107120Sjulian { "bytes_recv", &ng_parse_uint32_type, }, 52107120Sjulian { "pckts_sent", &ng_parse_uint32_type, }, 53107120Sjulian { "bytes_sent", &ng_parse_uint32_type, }, 54107120Sjulian { "oerrors", &ng_parse_uint32_type, }, 55107120Sjulian { "ierrors", &ng_parse_uint32_type, }, 56107120Sjulian { NULL, } 57107120Sjulian}; 58107120Sjulianstatic const struct ng_parse_type ng_h4_stat_type = { 59107120Sjulian &ng_parse_struct_type, 60107120Sjulian &ng_h4_stat_type_fields 61107120Sjulian}; 62107120Sjulian 63107120Sjulianstatic const struct ng_cmdlist ng_h4_cmdlist[] = { 64107120Sjulian { 65107120Sjulian NGM_H4_COOKIE, 66107120Sjulian NGM_H4_NODE_RESET, 67107120Sjulian "reset", 68107120Sjulian NULL, 69107120Sjulian NULL 70107120Sjulian }, 71107120Sjulian { 72107120Sjulian NGM_H4_COOKIE, 73107120Sjulian NGM_H4_NODE_GET_STATE, 74107120Sjulian "get_state", 75107120Sjulian NULL, 76107120Sjulian &ng_parse_uint16_type 77107120Sjulian }, 78107120Sjulian { 79107120Sjulian NGM_H4_COOKIE, 80107120Sjulian NGM_H4_NODE_GET_DEBUG, 81107120Sjulian "get_debug", 82107120Sjulian NULL, 83107120Sjulian &ng_parse_uint16_type 84107120Sjulian }, 85107120Sjulian { 86107120Sjulian NGM_H4_COOKIE, 87107120Sjulian NGM_H4_NODE_SET_DEBUG, 88107120Sjulian "set_debug", 89107120Sjulian &ng_parse_uint16_type, 90107120Sjulian NULL 91107120Sjulian }, 92107120Sjulian { 93107120Sjulian NGM_H4_COOKIE, 94107120Sjulian NGM_H4_NODE_GET_QLEN, 95107120Sjulian "get_qlen", 96107120Sjulian NULL, 97107120Sjulian &ng_parse_int32_type 98107120Sjulian }, 99107120Sjulian { 100107120Sjulian NGM_H4_COOKIE, 101107120Sjulian NGM_H4_NODE_SET_QLEN, 102107120Sjulian "set_qlen", 103107120Sjulian &ng_parse_int32_type, 104107120Sjulian NULL 105107120Sjulian }, 106107120Sjulian { 107107120Sjulian NGM_H4_COOKIE, 108107120Sjulian NGM_H4_NODE_GET_STAT, 109107120Sjulian "get_stat", 110107120Sjulian NULL, 111107120Sjulian &ng_h4_stat_type 112107120Sjulian }, 113107120Sjulian { 114107120Sjulian NGM_H4_COOKIE, 115107120Sjulian NGM_H4_NODE_RESET_STAT, 116107120Sjulian "reset_stat", 117107120Sjulian NULL, 118107120Sjulian NULL 119107120Sjulian }, 120107120Sjulian { 0, } 121107120Sjulian}; 122107120Sjulian 123107120Sjulian#endif /* ndef _NETGRAPH_H4_PRSE_H_ */ 124107120Sjulian 125