xref: /freebsd/bin/ls/extern.h (revision 97c31821eb0b1180778ad2da660a1778c2cb4b62)
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  *
31d46c1a60SSteve Price  *	from: @(#)extern.h	8.1 (Berkeley) 5/31/93
322a456239SPeter Wemm  * $FreeBSD$
334b88c807SRodney W. Grimes  */
344b88c807SRodney W. Grimes 
35e10ba800SKyle Evans #include <stdbool.h>
36e10ba800SKyle Evans 
3746251ddeSWarner Losh int	 acccmp(const FTSENT *, const FTSENT *);
3846251ddeSWarner Losh int	 revacccmp(const FTSENT *, const FTSENT *);
39fe79420eSJohn Baldwin int	 birthcmp(const FTSENT *, const FTSENT *);
40fe79420eSJohn Baldwin int	 revbirthcmp(const FTSENT *, const FTSENT *);
4146251ddeSWarner Losh int	 modcmp(const FTSENT *, const FTSENT *);
4246251ddeSWarner Losh int	 revmodcmp(const FTSENT *, const FTSENT *);
4346251ddeSWarner Losh int	 namecmp(const FTSENT *, const FTSENT *);
4446251ddeSWarner Losh int	 revnamecmp(const FTSENT *, const FTSENT *);
4546251ddeSWarner Losh int	 statcmp(const FTSENT *, const FTSENT *);
4646251ddeSWarner Losh int	 revstatcmp(const FTSENT *, const FTSENT *);
4771b8b748SDima Dorfman int	 sizecmp(const FTSENT *, const FTSENT *);
4871b8b748SDima Dorfman int	 revsizecmp(const FTSENT *, const FTSENT *);
494b88c807SRodney W. Grimes 
5040feca3aSMark Murray void	 printcol(const DISPLAY *);
5140feca3aSMark Murray void	 printlong(const DISPLAY *);
520fdf7fa8SConrad Meyer int	 printname(const char *);
5340feca3aSMark Murray void	 printscol(const DISPLAY *);
5440feca3aSMark Murray void	 printstream(const DISPLAY *);
5546251ddeSWarner Losh void	 usage(void);
560fdf7fa8SConrad Meyer int	 prn_normal(const char *);
579052855aSMark Murray size_t	 len_octal(const char *, int);
580fdf7fa8SConrad Meyer int	 prn_octal(const char *);
590fdf7fa8SConrad Meyer int	 prn_printable(const char *);
6074985094SJosef Karthauser #ifdef COLORLS
6146251ddeSWarner Losh void	 parsecolors(const char *cs);
6246251ddeSWarner Losh void	 colorquit(int);
635a890e22SJosef Karthauser 
64fd4e4d60SAndrey A. Chernov extern	char	*ansi_fgcol;
65fd4e4d60SAndrey A. Chernov extern	char	*ansi_bgcol;
66fd4e4d60SAndrey A. Chernov extern	char	*ansi_coloff;
67c1499cf6SJosef Karthauser extern	char	*attrs_off;
68c1499cf6SJosef Karthauser extern	char	*enter_bold;
69*97c31821SCameron Katri extern	char	*enter_underline;
70e10ba800SKyle Evans 
71e10ba800SKyle Evans extern int	 colorflag;
72e10ba800SKyle Evans extern bool	 explicitansi;
73e10ba800SKyle Evans 
74e10ba800SKyle Evans #define	COLORFLAG_NEVER		0
75e10ba800SKyle Evans #define	COLORFLAG_AUTO		1
76e10ba800SKyle Evans #define	COLORFLAG_ALWAYS	2
7774985094SJosef Karthauser #endif
7840feca3aSMark Murray extern int	termwidth;
79