Made listener_print be CONST
[freeradius.git] / man / man5 / radiusd.conf.5
1 .\"     # DS - begin display
2 .de DS
3 .RS
4 .nf
5 .sp
6 ..
7 .\"     # DE - end display
8 .de DE
9 .fi
10 .RE
11 .sp
12 ..
13 .TH radiusd.conf 5 "12 Jun 2007" "" "FreeRADIUS configuration file"
14 .SH NAME
15 radiusd.conf \- configuration file for the FreeRADIUS server
16 .SH DESCRIPTION
17 The \fBradiusd.conf\fP file resides in the radius database directory,
18 by default \fB/etc/raddb\fP.  It defines the global configuration for
19 the FreeRADIUS RADIUS server.
20 .SH "CONTENTS"
21 There are a large number of configuration parameters for the server.
22 Most are documented in the file itself as comments.  This page
23 documents only the format of the file.  Please read the
24 \fBradiusd.conf\fP file itself for more information.
25
26 The configuration file parser is independent of the server
27 configuration.  This means that you can put almost anything into the
28 configuration file.  So long as it is properly formatted, the server
29 will start.
30
31 When the server parses the configuration file, it looks only for those
32 configurations it understands.  Extra configuration items are ignored.
33 This "feature" can be (ab)used in certain interesting ways.
34 .SH "FILE FORMAT"
35 The file format is line-based, like many other Unix configuration
36 files.  Each entry in the file must be placed on a line by itself,
37 although continuations are supported.
38
39 The file consists of configuration items (variable = value pairs),
40 sections, and comments.
41 .IP Variables
42 Variables can be set via:
43
44 .DS
45 .br
46         name = value
47 .DE
48
49 Single and double-quoted strings are permitted:
50
51 .DS
52 .br
53         string1 = "hello world"
54 .br
55         string2 = 'hello mom'
56 .DE
57 .IP Sections
58 A section begins with a section name, followed on the same line by an
59 open bracket '\fB{\fP'.  Section may contain other sections, comments, or
60 variables.  Sections may be nested to any depth, limited
61 only by available memory.  A section ends with a close bracket
62 \'\fB}\fP', on a line by itself.
63
64 .DS
65 .br
66         section {
67 .br
68                 ...
69 .br
70         }
71 .DE
72
73 Sections can sometimes have a second name following the first one.
74 The situations where this is legal depend on the context.  See the
75 examples and comments in the \fBradiusd.conf\fP file for more
76 information.
77
78 .DS
79 .br
80         section foo {
81 .br
82                 ...
83 .br
84         }
85 .DE
86 .IP Comments
87 Any line beginning with a (\fB#\fP) is deemed to be a comment, and is
88 ignored.  Comments can appear after a variable or section definitions.
89
90 .DS
91 .br
92         # comment
93 .br
94         foo = bar # set variable 'foo' to value 'bar'
95 .br
96         section {       # start of section
97 .br
98         ...
99 .br
100         }               # end of section
101 .DE
102 .IP Continuations
103 Long lines can be broken up via continuations, using '\\' as the last
104 character of the line.  For example, the following entry:
105
106 .DS
107 .br
108         foo = "blah \\
109 .br
110         blah \\
111 .br
112         blah"
113 .DE
114
115 will set the value of the variable "foo" to "blah blah blah".  Any CR
116 or LF is not turned into a space, but all other whitespace is
117 preserved in the final value.
118 .SH "REFERENCES"
119 The value of a variable can reference another variable.  These
120 references are evaluated when the configuration file is loaded, which
121 means that there is no run-time cost associated with them.  This
122 feature is most useful for turning long, repeated pieces of text into
123 short ones.
124
125 Variables are referenced by ${variable_name}, as in the following examples.
126
127 .DS
128         foo = bar       # set variable 'foo' to value 'bar'
129 .br
130         who = ${foo}    # sets variable 'who' to value of variable 'foo'
131 .br
132         my = "${foo} a" # sets variable 'my' to "bar a"
133 .DE
134
135 If the variable exists in a section or subsection, it can be
136 referenced as ${section.subsection.variable}.  Forward references are
137 not allowed.  Relative references are allowed, by pre-pending the name
138 with one or more period.
139
140 .DS
141         blogs = ${.foo}
142
143 .DE
144 Will set variable \fBblogs\fP to the value of variable \fBfoo\fP,
145 from the current section.
146
147 .DS
148         blogs = ${..foo}
149
150 .DE
151 Will set variable \fBblogs\fP to the value of variable \fBfoo\fP, from the
152 section which contains the current section.
153
154 .DS
155         blogs = ${modules.detail.detailfile}
156
157 .DE
158 Will set variable \fBblogs\fP to the value of variable \fBdetailfile\fP,
159 of the \fBdetail\fP module, which is in the \fBmodules\fP section of
160 the configuration file.
161 .SH FILES
162 /etc/raddb/radiusd.conf
163 .SH "SEE ALSO"
164 .BR radiusd (8)
165 .BR unlang (5)
166 .SH AUTHOR
167 Alan DeKok <aland@freeradius.org>