/* $OpenBSD: top.h,v 1.11 2007/09/25 06:02:36 otto Exp $ */ /* * Top users/processes display for Unix * Version 3 * * Copyright (c) 1984, 1989, William LeFebvre, Rice University * Copyright (c) 1989, 1990, 1992, William LeFebvre, Northwestern University * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR OR HIS EMPLOYER BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* * Top - a top users display for Berkeley Unix * * General (global) definitions */ #include /* Current major version number */ #define VERSION 3 /* Number of lines of header information on the standard screen */ extern int Header_lines; /* Maximum number of columns allowed for display */ #define MAX_COLS 256 /* Log base 2 of 1024 is 10 (2^10 == 1024) */ #define LOG1024 10 /* Special atoi routine returns either a non-negative number or one of: */ #define Infinity -1 #define Invalid -2 /* maximum number we can have */ #define Largest 0x7fffffff /* * The entire display is based on these next numbers being defined as is. */ #define NUM_AVERAGES 3 struct errs { /* structure for a system-call error */ int err; /* value of errno (that is, the actual error) */ char *arg; /* argument that caused the error */ }; extern struct errs errs[]; extern int errcnt; /* commands.c */ extern int error_count(void); extern void show_errors(void); extern char *kill_procs(char *); extern char *renice_procs(char *); /* top.c */ extern void quit(int); /* username.c */ extern char *username(uid_t); extern uid_t userid(char *);