install correct aliases file
[unix-history] / usr / src / usr.sbin / config / SMM.doc / a.t
CommitLineData
b4fb89ea
KM
1.\" Copyright (c) 1983 Regents of the University of California.
2.\" All rights reserved. The Berkeley software License Agreement
3.\" specifies the terms and conditions for redistribution.
4.\"
57349e41 5.\" @(#)a.t 6.2 (Berkeley) %G%
b4fb89ea 6.\"
57349e41 7.\".ds RH "Configuration File Grammar
b4fb89ea 8.bp
b4fb89ea
KM
9.LG
10.B
11.ce
12APPENDIX A. CONFIGURATION FILE GRAMMAR
57349e41 13.sp
b4fb89ea
KM
14.R
15.NL
16.PP
17The following grammar is a compressed form of the actual
18\fIyacc\fP\|(1) grammar used by
19.I config
20to parse configuration files.
21Terminal symbols are shown all in upper case, literals
22are emboldened; optional clauses are enclosed in brackets, ``[''
23and ``]''; zero or more instantiations are denoted with ``*''.
24.sp
25.nf
26.DT
27Configuration ::= [ Spec \fB;\fP ]*
28
29Spec ::= Config_spec
30 | Device_spec
31 | \fBtrace\fP
32 | /* lambda */
33
34/* configuration specifications */
35
36Config_spec ::= \fBmachine\fP ID
37 | \fBcpu\fP ID
38 | \fBoptions\fP Opt_list
39 | \fBident\fP ID
40 | System_spec
41 | \fBtimezone\fP [ \fB\-\fP ] NUMBER [ \fBdst\fP [ NUMBER ] ]
42 | \fBtimezone\fP [ \fB\-\fP ] FPNUMBER [ \fBdst\fP [ NUMBER ] ]
43 | \fBmaxusers\fP NUMBER
44
45/* system configuration specifications */
46
47System_spec ::= \fBconfig\fP ID System_parameter [ System_parameter ]*
48
49System_parameter ::= swap_spec | root_spec | dump_spec | arg_spec
50
51swap_spec ::= \fBswap\fP [ \fBon\fP ] swap_dev [ \fBand\fP swap_dev ]*
52
53swap_dev ::= dev_spec [ \fBsize\fP NUMBER ]
54
55root_spec ::= \fBroot\fP [ \fBon\fP ] dev_spec
56
57dump_spec ::= \fBdumps\fP [ \fBon\fP ] dev_spec
58
59arg_spec ::= \fBargs\fP [ \fBon\fP ] dev_spec
60
61dev_spec ::= dev_name | major_minor
62
63major_minor ::= \fBmajor\fP NUMBER \fBminor\fP NUMBER
64
65dev_name ::= ID [ NUMBER [ ID ] ]
66
67/* option specifications */
68
69Opt_list ::= Option [ \fB,\fP Option ]*
70
71Option ::= ID [ \fB=\fP Opt_value ]
72
73Opt_value ::= ID | NUMBER
74
57349e41
MK
75Mkopt_list ::= Mkoption [ \fB,\fP Mkoption ]*
76
77Mkoption ::= ID \fB=\fP Opt_value
78
b4fb89ea
KM
79/* device specifications */
80
81Device_spec ::= \fBdevice\fP Dev_name Dev_info Int_spec
82 | \fBmaster\fP Dev_name Dev_info
83 | \fBdisk\fP Dev_name Dev_info
84 | \fBtape\fP Dev_name Dev_info
85 | \fBcontroller\fP Dev_name Dev_info [ Int_spec ]
86 | \fBpseudo-device\fP Dev [ NUMBER ]
87
88Dev_name ::= Dev NUMBER
89
90Dev ::= \fBuba\fP | \fBmba\fP | ID
91
92Dev_info ::= Con_info [ Info ]*
93
94Con_info ::= \fBat\fP Dev NUMBER
95 | \fBat\fP \fBnexus\fP NUMBER
96
97Info ::= \fBcsr\fP NUMBER
98 | \fBdrive\fP NUMBER
99 | \fBslave\fP NUMBER
100 | \fBflags\fP NUMBER
101
102Int_spec ::= \fBvector\fP ID [ ID ]*
103 | \fBpriority\fP NUMBER
104.fi
105.sp
106.SH
107Lexical Conventions
108.LP
109The terminal symbols are loosely defined as:
110.IP ID
111.br
112One or more alphabetics, either upper or lower case, and underscore,
113``_''.
114.IP NUMBER
115.br
116Approximately the C language specification for an integer number.
117That is, a leading ``0x'' indicates a hexadecimal value,
118a leading ``0'' indicates an octal value, otherwise the number is
119expected to be a decimal value. Hexadecimal numbers may use either
120upper or lower case alphabetics.
121.IP FPNUMBER
122.br
123A floating point number without exponent. That is a number of the
124form ``nnn.ddd'', where the fractional component is optional.
125.LP
126In special instances a question mark, ``?'', can be substituted for
127a ``NUMBER'' token. This is used to effect wildcarding in device
128interconnection specifications.
129.LP
130Comments in configuration files are indicated by a ``#'' character
131at the beginning of the line; the remainder of the line is discarded.
132.LP
133A specification
134is interpreted as a continuation of the previous line
135if the first character of the line is tab.