]> git.cameronkatri.com Git - apple_cmds.git/blob - diskdev_cmds/fdisk.tproj/util.h
diskdev_cmds: Fix BINDIRs
[apple_cmds.git] / diskdev_cmds / fdisk.tproj / util.h
1 /*
2 * Copyright (c) 2002 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24 /*-
25 * Copyright (c) 1995
26 * The Regents of the University of California. All rights reserved.
27 * Portions Copyright (c) 1996, Jason Downs. All rights reserved.
28 *
29 * Redistribution and use in source and binary forms, with or without
30 * modification, are permitted provided that the following conditions
31 * are met:
32 * 1. Redistributions of source code must retain the above copyright
33 * notice, this list of conditions and the following disclaimer.
34 * 2. Redistributions in binary form must reproduce the above copyright
35 * notice, this list of conditions and the following disclaimer in the
36 * documentation and/or other materials provided with the distribution.
37 * 3. All advertising materials mentioning features or use of this software
38 * must display the following acknowledgement:
39 * This product includes software developed by the University of
40 * California, Berkeley and its contributors.
41 * 4. Neither the name of the University nor the names of its contributors
42 * may be used to endorse or promote products derived from this software
43 * without specific prior written permission.
44 *
45 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
46 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
47 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
48 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
49 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
50 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
51 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
52 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
53 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
54 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
55 * SUCH DAMAGE.
56 */
57
58 #ifndef _UTIL_H_
59 #define _UTIL_H_
60
61 #include <sys/cdefs.h>
62 #include <sys/types.h>
63
64 /*
65 * fparseln() specific operation flags.
66 */
67 #define FPARSELN_UNESCESC 0x01
68 #define FPARSELN_UNESCCONT 0x02
69 #define FPARSELN_UNESCCOMM 0x04
70 #define FPARSELN_UNESCREST 0x08
71 #define FPARSELN_UNESCALL 0x0f
72
73 /*
74 * opendev() specific operation flags.
75 */
76 #define OPENDEV_PART 0x01 /* Try to open the raw partition. */
77 #define OPENDEV_DRCT 0x02 /* Obsolete (now default behavior). */
78 #define OPENDEV_BLCK 0x04 /* Open block, not character device. */
79
80 /*
81 * uucplock(3) specific flags.
82 */
83 #define UU_LOCK_INUSE (1)
84 #define UU_LOCK_OK (0)
85 #define UU_LOCK_OPEN_ERR (-1)
86 #define UU_LOCK_READ_ERR (-2)
87 #define UU_LOCK_CREAT_ERR (-3)
88 #define UU_LOCK_WRITE_ERR (-4)
89 #define UU_LOCK_LINK_ERR (-5)
90 #define UU_LOCK_TRY_ERR (-6)
91 #define UU_LOCK_OWNER_ERR (-7)
92
93 /*
94 * stub struct definitions.
95 */
96 struct __sFILE;
97 struct login_cap;
98 struct passwd;
99 struct termios;
100 struct winsize;
101
102 __BEGIN_DECLS
103 char *fparseln __P((struct __sFILE *, size_t *, size_t *, const char[3], int));
104 int login_tty __P((int));
105 int logout __P((const char *));
106 void logwtmp __P((const char *, const char *, const char *));
107 int opendev __P((char *, int, int, char **));
108 int pidfile __P((const char *));
109 void pw_setdir __P((const char *));
110 char *pw_file __P((const char *));
111 int pw_lock __P((int retries));
112 int pw_mkdb __P((char *, int));
113 int pw_abort __P((void));
114 void pw_init __P((void));
115 void pw_edit __P((int, const char *));
116 void pw_prompt __P((void));
117 void pw_copy __P((int, int, struct passwd *));
118 void pw_getconf __P((char *, size_t, const char *, const char *));
119 int pw_scan __P((char *, struct passwd *, int *));
120 void pw_error __P((const char *, int, int));
121 int openpty __P((int *, int *, char *, struct termios *,
122 struct winsize *));
123 int opendisk __P((const char *path, int flags, char *buf, size_t buflen,
124 int iscooked));
125 pid_t forkpty __P((int *, char *, struct termios *, struct winsize *));
126 int getmaxpartitions __P((void));
127 int getrawpartition __P((void));
128 void login_fbtab __P((char *, uid_t, gid_t));
129 int login_check_expire __P((struct __sFILE *, struct passwd *, char *, int));
130 char *readlabelfs __P((char *, int));
131 const char *uu_lockerr __P((int _uu_lockresult));
132 int uu_lock __P((const char *_ttyname));
133 int uu_lock_txfr __P((const char *_ttyname, pid_t _pid));
134 int uu_unlock __P((const char *_ttyname));
135 __END_DECLS
136
137 #endif /* !_UTIL_H_ */