xref: /aosp_15_r20/external/fsck_msdos/fsutil.h (revision 9558e6ac2e10ab0fef46fdd14187b840555f86f4)
1*9558e6acSTreehugger Robot /*	$NetBSD: fsutil.h,v 1.114 2009/10/21 01:07:46 snj Exp $	*/
2*9558e6acSTreehugger Robot 
3*9558e6acSTreehugger Robot /*-
4*9558e6acSTreehugger Robot  * SPDX-License-Identifier: BSD-2-Clause
5*9558e6acSTreehugger Robot  *
6*9558e6acSTreehugger Robot  * Copyright (c) 1996 Christos Zoulas.  All rights reserved.
7*9558e6acSTreehugger Robot  *
8*9558e6acSTreehugger Robot  * Redistribution and use in source and binary forms, with or without
9*9558e6acSTreehugger Robot  * modification, are permitted provided that the following conditions
10*9558e6acSTreehugger Robot  * are met:
11*9558e6acSTreehugger Robot  * 1. Redistributions of source code must retain the above copyright
12*9558e6acSTreehugger Robot  *    notice, this list of conditions and the following disclaimer.
13*9558e6acSTreehugger Robot  * 2. Redistributions in binary form must reproduce the above copyright
14*9558e6acSTreehugger Robot  *    notice, this list of conditions and the following disclaimer in the
15*9558e6acSTreehugger Robot  *    documentation and/or other materials provided with the distribution.
16*9558e6acSTreehugger Robot  *
17*9558e6acSTreehugger Robot  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18*9558e6acSTreehugger Robot  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19*9558e6acSTreehugger Robot  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20*9558e6acSTreehugger Robot  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21*9558e6acSTreehugger Robot  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22*9558e6acSTreehugger Robot  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23*9558e6acSTreehugger Robot  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24*9558e6acSTreehugger Robot  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25*9558e6acSTreehugger Robot  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26*9558e6acSTreehugger Robot  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27*9558e6acSTreehugger Robot  *
28*9558e6acSTreehugger Robot  * $FreeBSD$
29*9558e6acSTreehugger Robot  */
30*9558e6acSTreehugger Robot 
31*9558e6acSTreehugger Robot #ifdef __ANDROID__
32*9558e6acSTreehugger Robot #define    __dead2     __attribute__((__noreturn__))
33*9558e6acSTreehugger Robot #endif
34*9558e6acSTreehugger Robot 
35*9558e6acSTreehugger Robot void pfatal(const char *, ...) __printflike(1, 2);
36*9558e6acSTreehugger Robot void pwarn(const char *, ...) __printflike(1, 2);
37*9558e6acSTreehugger Robot void perr(const char *, ...) __printflike(1, 2);
38*9558e6acSTreehugger Robot void panic(const char *, ...) __dead2 __printflike(1, 2);
39*9558e6acSTreehugger Robot const char *devcheck(const char *);
40*9558e6acSTreehugger Robot const char *cdevname(void);
41*9558e6acSTreehugger Robot void setcdevname(const char *, int);
42*9558e6acSTreehugger Robot struct statfs *getmntpt(const char *);
43*9558e6acSTreehugger Robot void *emalloc(size_t);
44*9558e6acSTreehugger Robot void *erealloc(void *, size_t);
45*9558e6acSTreehugger Robot char *estrdup(const char *);
46*9558e6acSTreehugger Robot 
47*9558e6acSTreehugger Robot #ifndef __ANDROID__
48*9558e6acSTreehugger Robot #define	CHECK_PREEN	0x0001
49*9558e6acSTreehugger Robot #define	CHECK_VERBOSE	0x0002
50*9558e6acSTreehugger Robot #define	CHECK_DEBUG	0x0004
51*9558e6acSTreehugger Robot #define	CHECK_BACKGRD	0x0008
52*9558e6acSTreehugger Robot #define	DO_BACKGRD	0x0010
53*9558e6acSTreehugger Robot #define	CHECK_CLEAN	0x0020
54*9558e6acSTreehugger Robot 
55*9558e6acSTreehugger Robot struct fstab;
56*9558e6acSTreehugger Robot int checkfstab(int, int (*)(struct fstab *),
57*9558e6acSTreehugger Robot     int (*) (const char *, const char *, const char *, const char *, pid_t *));
58*9558e6acSTreehugger Robot #endif
59