-/* $NetBSD: extern.h,v 1.3 1995/03/07 21:12:07 cgd Exp $ */
-
/*-
* Copyright (c) 1991, 1993
* The Regents of the University of California. All rights reserved.
* 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.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* SUCH DAMAGE.
*
* @(#)extern.h 8.1 (Berkeley) 6/6/93
+ * $FreeBSD: src/usr.sbin/mtree/extern.h,v 1.13 2004/01/11 19:38:48 phk Exp $
*/
+#ifndef _EXTERN_H_
+#define _EXTERN_H_
+
#include "mtree.h"
-#ifdef __APPLE__
-#include <fts.h>
+extern uint32_t crc_total;
+
+#ifdef _FTS_H_
+int compare(char *, NODE *, FTSENT *);
+#endif
+int crc(int, uint32_t *, off_t *);
+void cwalk(void);
+char *flags_to_string(u_long);
+char *escape_path(char *string);
+struct timespec ptime(char *path, int *supported);
+
+const char *inotype(u_int);
+u_int parsekey(char *, int *);
+char *rlink(char *);
+NODE *mtree_readspec(FILE *fi);
+int mtree_verifyspec(FILE *fi);
+int mtree_specspec(FILE *fi, FILE *fj);
+
+int check_excludes(const char *, const char *);
+void init_excludes(void);
+void read_excludes_file(const char *);
+const char * ftype(u_int type);
+
+extern int ftsoptions;
+extern u_int keys;
+extern int lineno;
+extern int dflag, eflag, iflag, nflag, qflag, rflag, sflag, uflag, wflag, mflag, tflag, xflag;
+extern int insert_mod, insert_birth, insert_access, insert_change, insert_parent;
+extern struct timespec ts;
+#ifdef MAXPATHLEN
+extern char fullpath[MAXPATHLEN];
#endif
-int compare __P((char *, NODE *, FTSENT *));
-int crc __P((int, u_int32_t *, u_int32_t *));
-void cwalk __P((void));
-void mtree_err __P((const char *, ...));
-char *inotype __P((u_int));
-u_int parsekey __P((char *, int *));
-char *rlink __P((char *));
-NODE *spec __P((void));
-int verify __P((void));
+#endif /* _EXTERN_H_ */