14b88c807SRodney W. Grimes /*- 28a16b7a1SPedro F. Giffuni * SPDX-License-Identifier: BSD-3-Clause 38a16b7a1SPedro F. Giffuni * 44b88c807SRodney W. Grimes * Copyright (c) 1991, 1993 54b88c807SRodney W. Grimes * The Regents of the University of California. All rights reserved. 64b88c807SRodney W. Grimes * 74b88c807SRodney W. Grimes * Redistribution and use in source and binary forms, with or without 84b88c807SRodney W. Grimes * modification, are permitted provided that the following conditions 94b88c807SRodney W. Grimes * are met: 104b88c807SRodney W. Grimes * 1. Redistributions of source code must retain the above copyright 114b88c807SRodney W. Grimes * notice, this list of conditions and the following disclaimer. 124b88c807SRodney W. Grimes * 2. Redistributions in binary form must reproduce the above copyright 134b88c807SRodney W. Grimes * notice, this list of conditions and the following disclaimer in the 144b88c807SRodney 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 164b88c807SRodney W. Grimes * may be used to endorse or promote products derived from this software 174b88c807SRodney W. Grimes * without specific prior written permission. 184b88c807SRodney W. Grimes * 194b88c807SRodney W. Grimes * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 204b88c807SRodney W. Grimes * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 214b88c807SRodney W. Grimes * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 224b88c807SRodney W. Grimes * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 234b88c807SRodney W. Grimes * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 244b88c807SRodney W. Grimes * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 254b88c807SRodney W. Grimes * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 264b88c807SRodney W. Grimes * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 274b88c807SRodney W. Grimes * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 284b88c807SRodney W. Grimes * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 294b88c807SRodney W. Grimes * SUCH DAMAGE. 304b88c807SRodney W. Grimes */ 314b88c807SRodney W. Grimes 32e10ba800SKyle Evans #include <stdbool.h> 33e10ba800SKyle Evans 3446251ddeSWarner Losh int acccmp(const FTSENT *, const FTSENT *); 3546251ddeSWarner Losh int revacccmp(const FTSENT *, const FTSENT *); 36fe79420eSJohn Baldwin int birthcmp(const FTSENT *, const FTSENT *); 37fe79420eSJohn Baldwin int revbirthcmp(const FTSENT *, const FTSENT *); 3846251ddeSWarner Losh int modcmp(const FTSENT *, const FTSENT *); 3946251ddeSWarner Losh int revmodcmp(const FTSENT *, const FTSENT *); 4046251ddeSWarner Losh int namecmp(const FTSENT *, const FTSENT *); 4146251ddeSWarner Losh int revnamecmp(const FTSENT *, const FTSENT *); 42*e2662256SAymeric Wibo int verscmp(const FTSENT *, const FTSENT *); 43*e2662256SAymeric Wibo int revverscmp(const FTSENT *, const FTSENT *); 4446251ddeSWarner Losh int statcmp(const FTSENT *, const FTSENT *); 4546251ddeSWarner Losh int revstatcmp(const FTSENT *, const FTSENT *); 4671b8b748SDima Dorfman int sizecmp(const FTSENT *, const FTSENT *); 4771b8b748SDima Dorfman int revsizecmp(const FTSENT *, const FTSENT *); 484b88c807SRodney W. Grimes 4940feca3aSMark Murray void printcol(const DISPLAY *); 5040feca3aSMark Murray void printlong(const DISPLAY *); 510fdf7fa8SConrad Meyer int printname(const char *); 5240feca3aSMark Murray void printscol(const DISPLAY *); 5340feca3aSMark Murray void printstream(const DISPLAY *); 5446251ddeSWarner Losh void usage(void); 550fdf7fa8SConrad Meyer int prn_normal(const char *); 569052855aSMark Murray size_t len_octal(const char *, int); 570fdf7fa8SConrad Meyer int prn_octal(const char *); 580fdf7fa8SConrad Meyer int prn_printable(const char *); 5974985094SJosef Karthauser #ifdef COLORLS 6046251ddeSWarner Losh void parsecolors(const char *cs); 6146251ddeSWarner Losh void colorquit(int); 625a890e22SJosef Karthauser 63fd4e4d60SAndrey A. Chernov extern char *ansi_fgcol; 64fd4e4d60SAndrey A. Chernov extern char *ansi_bgcol; 65fd4e4d60SAndrey A. Chernov extern char *ansi_coloff; 66c1499cf6SJosef Karthauser extern char *attrs_off; 67c1499cf6SJosef Karthauser extern char *enter_bold; 6897c31821SCameron Katri extern char *enter_underline; 69e10ba800SKyle Evans 70e10ba800SKyle Evans extern int colorflag; 71e10ba800SKyle Evans extern bool explicitansi; 72e10ba800SKyle Evans 73e10ba800SKyle Evans #define COLORFLAG_NEVER 0 74e10ba800SKyle Evans #define COLORFLAG_AUTO 1 75e10ba800SKyle Evans #define COLORFLAG_ALWAYS 2 7674985094SJosef Karthauser #endif 7740feca3aSMark Murray extern int termwidth; 78