1BIP.CONF(5)                   File Formats Manual                  BIP.CONF(5)
2
3
4

NAME

6       bip.conf - Configuration file for BIP IRC Proxy
7
8

DESCRIPTION

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

SYNTAX RULES

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

GLOBAL OPTIONS

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

NETWORK SECTION

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

SERVER SUB-SECTION

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

USER SECTION

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

CONNECTION SUB-SECTION

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

CHANNEL SUB-SUB-SECTION

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

SEE ALSO

378       bip, bipmkpw
379
380

AUTHOR

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)
Impressum