problemP.h revision a6ce1349539f866334ef3d5758bc2ee44a454acd
1/*
2 * problemP.h --- Private header file for fix_problem()
3 *
4 * Copyright 1997 by Theodore Ts'o
5 *
6 * %Begin-Header%
7 * This file may be redistributed under the terms of the GNU Public
8 * License.
9 * %End-Header%
10 */
11
12struct e2fsck_problem {
13	problem_t	e2p_code;
14	const char *	e2p_description;
15	char		prompt;
16	int		flags;
17	problem_t	second_code;
18};
19
20struct latch_descr {
21	int		latch_code;
22	problem_t	question;
23	problem_t	end_message;
24	int		flags;
25};
26
27#define PR_PREEN_OK	0x000001 /* Don't need to do preenhalt */
28#define PR_NO_OK	0x000002 /* If user answers no, don't make fs invalid */
29#define PR_NO_DEFAULT	0x000004 /* Default to no */
30#define PR_MSG_ONLY	0x000008 /* Print message only */
31
32/* Bit positions 0x000ff0 are reserved for the PR_LATCH flags */
33
34#define PR_FATAL	0x001000 /* Fatal error */
35#define PR_AFTER_CODE	0x002000 /* After asking the first question, */
36				 /* ask another */
37#define PR_PREEN_NOMSG	0x004000 /* Don't print a message if we're preening */
38#define PR_NOCOLLATE	0x008000 /* Don't collate answers for this latch */
39#define PR_NO_NOMSG	0x010000 /* Don't print a message if e2fsck -n */
40#define PR_PREEN_NO	0x020000 /* Use No as an answer if preening */
41#define PR_PREEN_NOHDR	0x040000 /* Don't print the preen header */
42#define PR_CONFIG	0x080000 /* This problem has been customized
43				    from the config file */
44#define PR_FORCE_NO	0x100000 /* Force the answer to be no */
45