xref: /freebsd/usr.bin/systat/cmdtab.c (revision bdcbfde31e8e9b343f113a1956384bdf30d1ed62)
19b50d902SRodney W. Grimes /*-
28a16b7a1SPedro F. Giffuni  * SPDX-License-Identifier: BSD-3-Clause
38a16b7a1SPedro F. Giffuni  *
49b50d902SRodney W. Grimes  * Copyright (c) 1980, 1992, 1993
59b50d902SRodney W. Grimes  *	The Regents of the University of California.  All rights reserved.
69b50d902SRodney W. Grimes  *
79b50d902SRodney W. Grimes  * Redistribution and use in source and binary forms, with or without
89b50d902SRodney W. Grimes  * modification, are permitted provided that the following conditions
99b50d902SRodney W. Grimes  * are met:
109b50d902SRodney W. Grimes  * 1. Redistributions of source code must retain the above copyright
119b50d902SRodney W. Grimes  *    notice, this list of conditions and the following disclaimer.
129b50d902SRodney W. Grimes  * 2. Redistributions in binary form must reproduce the above copyright
139b50d902SRodney W. Grimes  *    notice, this list of conditions and the following disclaimer in the
149b50d902SRodney W. Grimes  *    documentation and/or other materials provided with the distribution.
15fbbd9655SWarner Losh  * 3. Neither the name of the University nor the names of its contributors
169b50d902SRodney W. Grimes  *    may be used to endorse or promote products derived from this software
179b50d902SRodney W. Grimes  *    without specific prior written permission.
189b50d902SRodney W. Grimes  *
199b50d902SRodney W. Grimes  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
209b50d902SRodney W. Grimes  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
219b50d902SRodney W. Grimes  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
229b50d902SRodney W. Grimes  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
239b50d902SRodney W. Grimes  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
249b50d902SRodney W. Grimes  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
259b50d902SRodney W. Grimes  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
269b50d902SRodney W. Grimes  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
279b50d902SRodney W. Grimes  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
289b50d902SRodney W. Grimes  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
299b50d902SRodney W. Grimes  * SUCH DAMAGE.
309b50d902SRodney W. Grimes  */
319b50d902SRodney W. Grimes 
329ff712b0SMark Murray 
339b50d902SRodney W. Grimes 
349b50d902SRodney W. Grimes #include "systat.h"
359b50d902SRodney W. Grimes #include "extern.h"
3603e00a72SGarrett Wollman #include "mode.h"
379b50d902SRodney W. Grimes 
389b50d902SRodney W. Grimes struct	cmdtab cmdtab[] = {
399b50d902SRodney W. Grimes 	{ "pigs",	showpigs,	fetchpigs,	labelpigs,
409b50d902SRodney W. Grimes 	  initpigs,	openpigs,	closepigs,	0,
4103e00a72SGarrett Wollman 	  0,		CF_LOADAV },
429b50d902SRodney W. Grimes 	{ "swap",	showswap,	fetchswap,	labelswap,
439b50d902SRodney W. Grimes 	  initswap,	openswap,	closeswap,	0,
4403e00a72SGarrett Wollman 	  0,		CF_LOADAV },
459b50d902SRodney W. Grimes 	{ "iostat",	showiostat,	fetchiostat,	labeliostat,
469b50d902SRodney W. Grimes 	  initiostat,	openiostat,	closeiostat,	cmdiostat,
4703e00a72SGarrett Wollman 	  0,		CF_LOADAV },
489b50d902SRodney W. Grimes 	{ "vmstat",	showkre,	fetchkre,	labelkre,
499b50d902SRodney W. Grimes 	  initkre,	openkre,	closekre,	cmdkre,
5003e00a72SGarrett Wollman 	  0,		0 },
519b50d902SRodney W. Grimes 	{ "netstat",	shownetstat,	fetchnetstat,	labelnetstat,
529b50d902SRodney W. Grimes 	  initnetstat,	opennetstat,	closenetstat,	cmdnetstat,
5303e00a72SGarrett Wollman 	  0,		CF_LOADAV },
5403e00a72SGarrett Wollman 	{ "icmp",	showicmp,	fetchicmp,	labelicmp,
5503e00a72SGarrett Wollman 	  initicmp,	openicmp,	closeicmp,	cmdmode,
5603e00a72SGarrett Wollman 	  reseticmp,	CF_LOADAV },
572938fb78SGarrett Wollman 	{ "ip",		showip,		fetchip,	labelip,
582938fb78SGarrett Wollman 	  initip,	openip,		closeip,	cmdmode,
592938fb78SGarrett Wollman 	  resetip,	CF_LOADAV },
60f29d8c1aSDavid Malone #ifdef INET6
61f29d8c1aSDavid Malone 	{ "icmp6",	showicmp6,	fetchicmp6,	labelicmp6,
62f29d8c1aSDavid Malone 	  initicmp6,	openicmp6,	closeicmp6,	cmdmode,
63f29d8c1aSDavid Malone 	  reseticmp6,	CF_LOADAV },
64f29d8c1aSDavid Malone 	{ "ip6",	showip6,	fetchip6,	labelip6,
65f29d8c1aSDavid Malone 	  initip6,	openip6,	closeip6,	cmdmode,
66f29d8c1aSDavid Malone 	  resetip6,	CF_LOADAV },
67f29d8c1aSDavid Malone #endif
681eaa5682SMichael Tuexen 	{ "sctp",	showsctp,	fetchsctp,	labelsctp,
691eaa5682SMichael Tuexen 	  initsctp,	opensctp,	closesctp,	cmdmode,
701eaa5682SMichael Tuexen 	  resetsctp,	CF_LOADAV },
71630fa006SGarrett Wollman 	{ "tcp",	showtcp,	fetchtcp,	labeltcp,
72630fa006SGarrett Wollman 	  inittcp,	opentcp,	closetcp,	cmdmode,
738aa22952SBruce Evans 	  resettcp,	CF_LOADAV },
74b59ba7dfSPoul-Henning Kamp 	{ "ifstat",	showifstat,	fetchifstat,	labelifstat,
75b59ba7dfSPoul-Henning Kamp 	  initifstat,	openifstat,	closeifstat,	cmdifstat,
76b59ba7dfSPoul-Henning Kamp 	  0,		CF_LOADAV },
7727aa4769SMichael Reifenberger 	{ "zarc",	showzarc,	fetchzarc,	labelzarc,
7827aa4769SMichael Reifenberger 	  initzarc,	openzarc,	closezarc,	0,
7927aa4769SMichael Reifenberger 	  resetzarc,	CF_ZFSARC },
80*22054f88SWarner Losh 	{ "iolat",	showiolat,	fetchiolat,	labeliolat,
81*22054f88SWarner Losh 	  initiolat,	openiolat,	closeiolat,	cmdiolat,
82*22054f88SWarner Losh 	  0,		CF_LOADAV },
839ff712b0SMark Murray 	{ NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0, 0 }
849b50d902SRodney W. Grimes };
859b50d902SRodney W. Grimes struct  cmdtab *curcmd = &cmdtab[0];
86