1BIP.CONF(5) File Formats Manual BIP.CONF(5)
2
3
4
6 bip.conf - Configuration file for BIP IRC Proxy
7
8
10 A BIP configuration file consists of a list of variable affectations or
11 sections. It contains the global options, networks definitions, users
12 configuration, users connections declarations. Each section is
13 described in this manpage.
14
15 The bip.conf skeleton should be something like this :
16
17 option1 = value;
18 option2 = value;
19 ...
20
21 network {
22 net_opt = value;
23 ...
24 server { ... };
25 server { ... };
26 };
27 ...
28
29 user {
30 user_opt = value;
31 ...
32 connection {
33 conn_opt = value;
34 ...
35 channel { ... };
36 };
37 connection {
38 conn_opt = value;
39 ...
40 channel { ... };
41 channel { ... };
42 ...
43 };
44 };
45
46
48 The syntax is quite simple :
49 - everything after the # character is ignored (comments)
50 - each variable affectation must be finished with a ;
51 - each section { } must be finished with a ;
52
53 If you use vim you will probably want to use vim with the provided
54 bip.vim syntax file to avoid common syntax and lexical mistakes. You
55 can also find an example configuration file along with BIP.
56
57
59 client_side_ssl (default: false)
60 When true, clients will need to connect to BIP using SSL.
61 You'll also need to generate a SSL cert/key pair in
62 <bipdir>/bip.pem (usually ~/.bip/bip.pem or
63 /var/lib/bip/bip.pem) or <client_side_ssl_pem> if defined.
64
65
66 client_side_ssl_pem (default: <bipdir>/bip.pem)
67 Set this to the full path of the cert/key pair bip should use to
68 accept clients SSL connections.
69
70
71 ip Ignored for the time being.
72
73
74 log (default: true)
75 When true, the log system is enabled. Else, BIP will not write a
76 single log file. Backlog is then stored into memory.
77
78
79 log_system (default: true)
80 When true, system messages such as connection errors are logged.
81 Else, BIP will not write system logs.
82
83
84 log_format (default: %u/%n/%Y-%m/%c.%d.log)
85 Determines the log file name depending on :
86 - %u username (name in user { }; section)
87 - %n network name (name in connection { }; section)
88 - %c channel name
89 - %Y 4 digits year
90 - %m 2 digits month
91 - %d 2 digits day
92
93
94 log_level (default: 1)
95 Specify the verbosity of BIP from 0 (fatal errors) to 6 (huge
96 debug output)
97
98
99 log_root (default: HOME/.bip/logs)
100 Main log directory. Sub-directories and files will be created
101 from there depending on log_format.
102
103
104 log_sync_interval (default: 5)
105 Defines the delay between each logfiles sync to the disk. Must
106 be a non null positive integer.
107
108
109 pid_file (default: HOME/.bip/bip.pid)
110 Defines the file where BIP's pid will be stored. BIP checks if
111 this file exists and if the pid is still alive upon startup. If
112 true, BIP refuses to start.
113
114
115 port (default: 7778)
116 The port on which BIP should listen for clients.
117
118
120 This section allows you to declare a network for use in the connection
121 sections. It may appear more than once in the configuration file.
122
123
124 ssl (default: false)
125 If true, BIP will connect to this network using SSL only. You
126 cannot mix SSL servers and non-SSL servers in the same network
127 section. This is by choice, we believe it's a bad idea.
128
129
130 name It's the network name used in the connection section. Please
131 note that this value is not used in log_format, since it uses
132 the variable name from the connection section.
133
134
136 BIP will cycle through the server sections list when reconnecting to a
137 network. It may appear more than once in a network section.
138
139
140 host The server's hostname or IP address.
141
142
143 port (default: 6667)
144 The server port to connect to.
145
146
148 This section allows you to define the users allowed to connect to BIP
149 and their options. It may appear more than once in the configuration
150 file.
151
152
153 admin (default: false)
154 If a user has admin set to true, he'll become a bip administra‐
155 tor, which allows him for example to RELOAD bip from IRC or to
156 see the user configuration.
157
158
159 backlog (default: true)
160 Enable or disable the whole backlog system, which allows clients
161 to see a log replay upon connection.
162
163
164 backlog_always (default: false)
165 If true, clients will always receive backlog_lines log lines,
166 even if they were already sent before. That means : If back‐
167 log_always is false, backlog will be reset whenever there is no
168 more client connected to a network. Else backlog will not be
169 reset. This option should of course not be enabled if back‐
170 log_lines is 0 ! If you still want to do so, don't forget to
171 /BIP BLRESET sometimes.
172
173
174 backlog_lines (default: 10)
175 If set to 0, BIP will replay all the logs since last client dis‐
176 connect. Else, it'll replay exactly backlog_lines lines on each
177 channel and privates. Be aware that BIP will replay back‐
178 log_lines lines of all privates, even if there are more. For
179 example if Coyote told you 12 lines and then RoadRunner 6,
180 you'll only have a replay of the 6 RoadRunner's lines and the
181 last 4 of Coyote's.
182
183 backlog_no_timestamp (default: false) If true, backlogged line
184 won't include the timestamp.
185
186
187 backlog_reset_on_talk (default: false)
188 When true, backlog will be reset upon client talk (channel/pri‐
189 vate message or action). It means that next time you log to your
190 bip session, the backlogging will start at the time right after
191 your last words on that specific channel or query.
192
193
194 backlog_reset_connection (default: false)
195 When true, backlog_reset_on_talk option above is changed in that
196 the whole network backlog is resetted when you talk in the net‐
197 work.
198
199
200 backlog_msg_only (default: false)
201 When true, bip will backlog only channel/private mes‐
202 sages/notices. No topic change, nick change, user quit/part/join
203 will be backlogged upon connection.
204
205
206 bip_use_notice (default: false)
207 If bip_use_notice is true, bip's notifications to the clients
208 will be send as notices instead of private messages. For exam‐
209 ple, this setting applies to disconnection notifications or /BIP
210 command replies.
211
212
213 default_nick
214 The default nick option for each connection section where no
215 nick is defined. See CONNECTION SECTION for more details.
216
217
218 default_realname
219 The default realname option for each connection section where no
220 realname is defined. See CONNECTION SECTION for more details.
221
222
223 default_user
224 The default user option for each connection section where no
225 user is defined. See CONNECTION SECTION for more details.
226
227
228 name The user name. It'll be used to authenticate to bip and in
229 log_format.
230
231
232 password
233 The password. It MUST be generated with bipmkpw or it'll not
234 work.
235
236
237 ssl_check_mode (default: none)
238 Tells whether BIP should check the server SSL certificate and
239 against what. Can be none for no check at all, ca to check if
240 the cert is signed by a Certificate Authority in repository, or
241 basic to check if cert exists in repository. The repository is
242 defined by ssl_check_store. This allows a "ssh-like" private
243 key generation scheme. Note that in basic mode:
244 - expired certificates that are in the store are considered
245 valid.
246 - CA-signed certificates are considered valid even if not in
247 store.
248
249
250 ssl_check_store (default: not set)
251 This repository is browsed by BIP when a SSL certificate or CA
252 check is needed.
253
254
255 ssl_client_certfile (default: not set)
256 Some networks (OFTC at least) allow you to authenticate to nick‐
257 serv services using a client side certificate. Make this vari‐
258 able point to the .pem file to use this feature.
259
260
262 Each connection section associates a user to the networks he wants to
263 connect to. Thus, it must be declared in the user sections, and can be
264 used more than once.
265
266
267 away_nick (default: not set)
268 If set, and if there are no more client attached, BIP will
269 change nickname to this away_nick. Your nickname will be
270 restored upon client connect.
271
272
273 no_client_away_msg (default: not set)
274 This options allows you to set an away message. This away mes‐
275 sage will be set when the last client disconnects, and removed
276 when a client connects.
277
278
279 follow_nick (default: false)
280 If set to true, when you change nick, BIP stores the new nick‐
281 name as the new default nickname value. Thus, if you are discon‐
282 nected from the server, BIP will restore the correct nickname.
283
284
285 autojoin_on_kick (default: true)
286 If set to false bip will not attempt to re-join a channel from
287 which you were kicked.
288
289
290 ignore_first_nick (default: false)
291 If set to true, BIP will ignore the nickname sent by the client
292 upon connect. Further nickname changes will be processed as
293 usual.
294
295
296 ignore_server_capab (default: true)
297 By default bip ignores when a server advertises the CAPAB fea‐
298 ture. Servers that support this can prefix each line with a "+"
299 or a "-" depending if a user is registered or not. xchat checks
300 if a server has the CAPAB feature and enables it. If you have
301 two clients connected to a bip connection, one that supports
302 this mode and one that does not, you see the plus and the
303 minuses on each line in the client that does not support CAPAB.
304 To avoid that, when a server advertises CAPAB bip simply removes
305 it. You can set this option to false to keep using CAPAB (if you
306 only use clients that support it for instance).
307
308
309 network
310 The network name. See the NETWORK SECTION.
311
312
313 nick BIP will send that string as your nickname upon connect. If not
314 specified and if default_nickname is specified in the user sec‐
315 tion, BIP will use that default nickname string.
316
317
318 on_connect_send
319 You can specify this field more than once. BIP will send the
320 text as is to the server. It'd be useful for a greet on connect
321 or to send your NickServ password.
322
323
324 password
325 This is the irc server password, which is sent upon connection
326 to the irc server only.
327
328
329 realname
330 BIP will send that string as the realname part (description in
331 whois result) upon connect. If not specified and if
332 default_realname is specified in the user section, BIP will use
333 that default realname string.
334
335
336 source_port
337 If specified, tells BIP to connect from this port to the IRC
338 server.
339
340
341 ssl_check_mode (default: the user's option)
342 See ssl_check_mode option in User options.
343
344
345 user BIP will send that string as the user part (usually between !
346 and @ in a whois result) upon connect. It's also used by the
347 oidentd support (if enabled). If not specified and if
348 default_user is specified in the user section, BIP will use that
349 default user string.
350
351
352 vhost If specified, BIP will use vhost as the IP address to bind to
353 when connecting to the IRC server. It'll allow you to use a spe‐
354 cific IP address for this network when you have more than one.
355 This options is totally useless to people who only have one IP
356 address.
357
358
360 This section defines the list of channels to join for a user on a par‐
361 ticular network. It is to be found in the connection sections and
362 appear more than once in a connection section.
363
364
365 name The channel name (#bip, &bip, ...).
366
367
368 key The channel key if needed.
369
370
371 backlog (default: true)
372 Enable or disable backlogging of this particular channel. Set‐
373 ting this to true will NOT enable the backlog system, see the
374 User section.
375
376
378 bip, bipmkpw
379
380
382 bip authors:
383 Arnaud 'nohar' Cornet
384 Loïc 'Kyoshiro' Gomez
385
386 Thanks to jj, YS and lafouine, for hanging around while we were coding.
387 Crypto shamelessly taken from Christophe 'sexy' Devine.
388 This man page is written by Loïc 'Kyoshiro' Gomez.
389
390
391
392
393 10 October 2005 BIP.CONF(5)