This repository was archived by the owner on Aug 2, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlibadm.h
318 lines (277 loc) · 8.55 KB
/
libadm.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2004 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#ifndef __PKG_LIBADM_H__
#define __PKG_LIBADM_H__
#include <sys/types.h>
#include <sys/vtoc.h>
#include <limits.h>
#include <stdio.h>
#include <pkgstrct.h>
#include <pkginfo.h>
#include <valtools.h>
#include "install.h"
#if defined(__STDC__)
#define __P(protos) protos
#else /* __STDC__ */
#define __P(protos) ()
#endif /* __STDC__ */
/*
* ckdate.c
*/
extern int ckdate_err __P((char *fmt, char *error));
extern int ckdate_hlp __P((char *fmt, char *help));
extern int ckdate_val __P((char *fmt, char *input));
extern int ckdate __P((char *date, char *fmt, char *defstr, char *error,
char *help, char *prompt));
/*
* ckgid.c
*/
extern int ckgid_dsp __P((void));
extern int ckgid_val __P((char *grpnm));
extern int ckgrpfile __P((void));
extern void ckgid_err __P((int disp, char *error));
extern void ckgid_hlp __P((int disp, char *help));
extern int ckgid __P((char *gid, short disp, char *defstr, char *error,
char *help, char *prompt));
/*
* ckint.c
*/
extern int ckint_val __P((char *value, short base));
extern void ckint_err __P((short base, char *error));
extern void ckint_hlp __P((short base, char *help));
extern int ckint __P((long *intval, short base, char *defstr, char *error,
char *help, char *prompt));
/*
* ckitem.c
*/
extern CKMENU *allocmenu __P((char *label, int attr));
extern void ckitem_err __P((CKMENU *menup, char *error));
extern void ckitem_hlp __P((CKMENU *menup, char *help));
extern int ckitem __P((CKMENU *menup, char *item[], short max,
char *defstr, char *error, char *help,
char *prompt));
extern int setitem __P((CKMENU *menup, char *choice));
extern int setinvis __P((CKMENU *menup, char *choice));
extern void printmenu __P((CKMENU *menup));
/*
* ckkeywd.c
*/
extern int ckkeywd __P((char *strval, char *keyword[], char *defstr,
char *error, char *help, char *prompt));
/*
* ckpath.c
*/
extern int ckpath_stx __P((int pflags));
extern int ckpath_val __P((char *path, int pflags));
extern void ckpath_err __P((int pflags, char *error, char *input));
extern void ckpath_hlp __P((int pflags, char *help));
extern int ckpath __P((char *pathval, int pflags, char *defstr,
char *error, char *help, char *prompt));
/*
* ckrange.c
*/
extern void ckrange_err __P((long lower, long upper, int base,
char *error));
extern void ckrange_hlp __P((long lower, long upper, int base, char *help));
extern int ckrange_val __P((long lower, long upper, int base,
char *input));
extern int ckrange __P((long *rngval, long lower, long upper, short base,
char *defstr, char *error, char *help,
char *prompt));
/*
* ckstr.c
*/
extern int ckstr_val __P((char *regexp[], int length, char *input));
extern void ckstr_err __P((char *regexp[], int length, char *error,
char *input));
extern void ckstr_hlp __P((char *regexp[], int length, char *help));
extern int ckstr __P((char *strval, char *regexp[], int length,
char *defstr, char *error, char *help,
char *prompt));
/*
* cktime.c
*/
extern int cktime_val __P((char *fmt, char *input));
extern int cktime_err __P((char *fmt, char *error));
extern int cktime_hlp __P((char *fmt, char *help));
extern int fmtcheck __P((char *fmt));
extern int cktime __P((char *tod, char *fmt, char *defstr, char *error,
char *help, char *prompt));
/*
* ckuid.c
*/
extern int ckuid_dsp __P((void));
extern int ckuid_val __P((char *usrnm));
extern int ckpwdfile __P((void));
extern void ckuid_err __P((short disp, char *error));
extern void ckuid_hlp __P((int disp, char *help));
extern int ckuid __P((char *uid, short disp, char *defstr, char *error,
char *help, char *prompt));
/*
* ckyorn.c
*/
extern int ckyorn_val __P((char *str));
extern void ckyorn_err __P((char *error));
extern void ckyorn_hlp __P((char *help));
extern int ckyorn __P((char *yorn, char *defstr, char *error, char *help,
char *prompt));
/*
* devattr.c
*/
extern char *devattr __P((char *device, char *attribute));
/*
* devreserv.c
*/
extern char *_rsvtabpath __P((void));
extern int _openlkfile __P((void));
extern int _closelkfile __P((void));
extern int unreserv __P((long key, char *device));
extern char **devreserv __P((long key, char **rsvlst[]));
extern int devfree __P((long key, char *device));
extern struct reservdev **reservdev __P((void));
/*
* devtab.c
*/
extern void _setdevtab __P((void));
extern void _enddevtab __P((void));
extern char *_devtabpath __P((void));
extern int _opendevtab __P((char *mode));
extern int _validalias __P((char *alias));
extern struct devtabent *_getdevtabent __P((void));
extern void _freedevtabent __P((struct devtabent *ent));
extern struct devtabent *_getdevrec __P((char *device));
/*
* dgrpent.c
*/
extern void _setdgrptab __P((void));
extern void _enddgrptab __P((void));
extern char *_dgrptabpath __P((void));
extern int _opendgrptab __P((char *mode));
extern struct dgrptabent *_getdgrptabent __P((void));
extern void _freedgrptabent __P((struct dgrptabent *ent));
extern struct dgrptabent *_getdgrprec __P((char *dgroup));
/*
* fulldevnm.c
*/
extern char *getfullblkname __P((char *cp));
extern char *getfullrawname __P((char *cp));
/*
* getdev.c
*/
extern char **getdev __P((char **devices, char **criteria, int options));
/*
* getdgrp.c
*/
extern char **getdgrp __P((char **dgroups, char **criteria, int options));
/*
* getinput.c
*/
extern int getinput __P((char *s));
/*
* getvol.c
*/
extern int getvol __P((char *device, char *label, int options,
char *prompt));
extern int _getvol __P((char *device, char *label, int options,
char *prompt, char *norewind));
extern void doremovecmd __P((char *device, int echo));
/*
* listdev.c
*/
extern char **listdev __P((char *device));
/*
* listdgrp.c
*/
extern char **listdgrp __P((char *dgroup));
/*
* memory.c
*/
extern long sysmem __P((void));
extern long asysmem __P((void));
/*
* pkginfo.c
*/
extern int pkginfo __P((struct pkginfo *info, char *pkginst, ...));
extern int fpkginfo __P((struct pkginfo *info, char *pkginst));
extern char *fpkginst __P((char *pkg, ...));
/*
* pkgnmchk.c
*/
extern int pkgnmchk __P((register char *pkg, register char *spec,
int presvr4flg));
extern void set_ABI_namelngth __P((void));
extern int get_ABI_namelngth __P((void));
/*
* pkgparam.c
*/
extern char *fpkgparam __P((FILE *fp, char *param));
extern char *pkgparam __P((char *pkg, char *param));
extern void set_PKGpaths __P((char *path));
extern char *get_PKGLOC __P((void));
extern char *get_PKGADM __P((void));
extern void set_PKGADM(char *newpath);
extern void set_PKGLOC(char *newpath);
/*
* putdev.c
*/
extern int _putdevtabrec __P((FILE *stream, struct devtabent *rec));
extern int _adddevtabrec __P((char *alias, char **attrval));
extern int _moddevtabrec __P((char *device, char **attrval));
extern int _rmdevtabrec __P((char *device));
extern int _rmdevtabattrs __P((char *device, char **attributes,
char ***notfounds));
/*
* putdgrp.c
*/
extern int _putdgrptabrec __P((FILE *stream, struct dgrptabent *rec));
extern int _adddgrptabrec __P((char *dgrp, char **members));
extern int _rmdgrptabrec __P((char *dgrp));
extern int _rmdgrpmems __P((char *dgrp, char **mems, char ***notfounds));
/*
* puterror.c
*/
extern void puterror __P((FILE *fp, char *defmesg, char *error));
/*
* puthelp.c
*/
extern void puthelp __P((FILE *fp, char *defmesg, char *help));
/*
* putprmpt.c
*/
extern void putprmpt __P((FILE *fp, char *prompt, char *choices[],
char *defstr));
/*
* puttext.c
*/
extern int puttext __P((FILE *fp, char *str, int lmarg, int rmarg));
/*
* rdwr_vtoc.c
*/
extern int read_vtoc __P((int fd, struct vtoc *vtoc));
extern int write_vtoc __P((int fd, struct vtoc *vtoc));
#if defined(lint) && !defined(gettext)
#define gettext(x) x
#endif /* defined(lint) && !defined(gettext) */
#endif /* __PKG_LIBADM_H__ */