Browse code

- all README files regenerated from SGML

git-svn-id: https://openser.svn.sourceforge.net/svnroot/openser/trunk@3351 689a6050-402a-0410-94f2-e92a70836424

Bogdan-Andrei Iancu authored on 13/12/2007 10:43:52
Showing 64 changed files
... ...
@@ -1,4 +1,3 @@
1
-
2 1
 Acc Module
3 2
 
4 3
 Jiri Kuthan
... ...
@@ -20,7 +19,7 @@ Bogdan-Andrei Iancu
20 19
    Copyright � 2002, 2003 FhG FOKUS
21 20
 
22 21
    Copyright � 2004, 2006 voice-system.ro
23
-     _________________________________________________________
22
+     __________________________________________________________
24 23
 
25 24
    Table of Contents
26 25
    1. User's Guide
... ...
@@ -130,7 +129,7 @@ Bogdan-Andrei Iancu
130 129
    1-35. acc_db_request usage
131 130
    1-36. acc_rad_request usage
132 131
    1-37. acc_diam_request usage
133
-     _________________________________________________________
132
+     __________________________________________________________
134 133
 
135 134
 Chapter 1. User's Guide
136 135
 
... ...
@@ -140,22 +139,22 @@ Chapter 1. User's Guide
140 139
    different backends like syslog, SQL, RADIUS and DIAMETER (beta
141 140
    version).
142 141
 
143
-   To account a transaction and to choose which set of backends
144
-   to be used, the script writer just has to set some flags (see
145
-   the module parameters section for flag definitions Section
146
-   1.5). If the accouting flag for a specific backend is set, the
147
-   acc module will then report on completed transaction. A
148
-   typical usage of the module takes no acc-specific script
149
-   command -- the functionality binds invisibly through
150
-   transaction processing. Script writers just need to mark the
151
-   transaction for accounting with proper setflag. Even so, the
152
-   module allows the script writter to force accouting in special
153
-   cases via some script functions.
142
+   To account a transaction and to choose which set of backends to
143
+   be used, the script writer just has to set some flags (see the
144
+   module parameters section for flag definitions Section 1.5). If
145
+   the accouting flag for a specific backend is set, the acc
146
+   module will then report on completed transaction. A typical
147
+   usage of the module takes no acc-specific script command -- the
148
+   functionality binds invisibly through transaction processing.
149
+   Script writers just need to mark the transaction for accounting
150
+   with proper setflag. Even so, the module allows the script
151
+   writter to force accouting in special cases via some script
152
+   functions.
154 153
 
155 154
    The accouting module will log by default a fixed set of
156
-   attributes for the transaction - if you customize you
157
-   accouting by adding more information to be logged, please see
158
-   the next chapter about extra accouting - Section 1.2.
155
+   attributes for the transaction - if you customize you accouting
156
+   by adding more information to be logged, please see the next
157
+   chapter about extra accouting - Section 1.2.
159 158
 
160 159
    The fixed minimal accouting information is:
161 160
 
... ...
@@ -182,11 +181,11 @@ Chapter 1. User's Guide
182 181
        with BYEs for generating proper CDRs for example for
183 182
        purpose of billing, then it is better done in the entity
184 183
        which collects accounting information.
185
-     * If a UA fails in middle of conversation, a proxy will
186
-       never learn it. In general, a better practice is to
187
-       account from an end-device (such as PSTN gateway), which
188
-       best knows about call status (including media status and
189
-       PSTN status in case of the gateway).
184
+     * If a UA fails in middle of conversation, a proxy will never
185
+       learn it. In general, a better practice is to account from
186
+       an end-device (such as PSTN gateway), which best knows
187
+       about call status (including media status and PSTN status
188
+       in case of the gateway).
190 189
 
191 190
    The SQL backend support is compiled in the moduls. For RADIUS
192 191
    and DIAMETER you need to enable it by recompiling the module
... ...
@@ -198,13 +197,13 @@ Chapter 1. User's Guide
198 197
    radius client needs to be configured properly. To do so, use
199 198
    the template at etc/radiusclient.conf and make sure that
200 199
    module's radius_config parameter points to its location. In
201
-   particular, accounting secret must match that one configured
202
-   in server and proper dictionary is used (one is available at
200
+   particular, accounting secret must match that one configured in
201
+   server and proper dictionary is used (one is available at
203 202
    etc/sip_dictionary). Uses along with FreeRadius (
204 203
    http://www.freeradius.org/) and Radiator (
205
-   http://www.open.com.au/radiator/) servers have been reported
206
-   to us.
207
-     _________________________________________________________
204
+   http://www.open.com.au/radiator/) servers have been reported to
205
+   us.
206
+     __________________________________________________________
208 207
 
209 208
 1.1.1. General Example
210 209
 
... ...
@@ -215,8 +214,8 @@ modparam("acc", "log_flag", 1)
215 214
 if (uri=~"sip:+40") /* calls to Romania */ {
216 215
     if (!proxy_authorize("sip_domain.net" /* realm */,
217 216
     "subscriber" /* table name */))  {
218
-        proxy_challenge("sip_domain.net" /* realm */, "0" /* no qop */
219
-);
217
+        proxy_challenge("sip_domain.net" /* realm */, "0" /* no qop */ )
218
+;
220 219
         exit;
221 220
     }
222 221
 
... ...
@@ -228,7 +227,7 @@ if (uri=~"sip:+40") /* calls to Romania */ {
228 227
     setflag(1); /* set for accounting (the same value as in log_flag!)
229 228
     t_relay();  /* enter stateful mode now */
230 229
 };
231
-     _________________________________________________________
230
+     __________________________________________________________
232 231
 
233 232
 1.2. Extra accounting
234 233
 
... ...
@@ -238,19 +237,18 @@ if (uri=~"sip:+40") /* calls to Romania */ {
238 237
    dynamical selection of extra information to be logged. This
239 238
    allows you to log any pseudo-variable (AVPs, parts of the
240 239
    request, etc).
241
-     _________________________________________________________
240
+     __________________________________________________________
242 241
 
243 242
 1.2.2. Definitions and syntax
244 243
 
245
-   Selection of extra information is done via xxx_extra
246
-   parameters by specifying the names of additional information
247
-   you want to log. This information is defined via
248
-   pseudo-variables and may include headers or AVPs values or
249
-   other message or system values. The syntax of the parameter
250
-   is: 
244
+   Selection of extra information is done via xxx_extra parameters
245
+   by specifying the names of additional information you want to
246
+   log. This information is defined via pseudo-variables and may
247
+   include headers or AVPs values or other message or system
248
+   values. The syntax of the parameter is:
251 249
 
252
-     * xxx_extra = extra_definition (';'extra_definition)* 
253
-     * extra_definition = log_name '=' pseudo_variable 
250
+     * xxx_extra = extra_definition (';'extra_definition)*
251
+     * extra_definition = log_name '=' pseudo_variable
254 252
 
255 253
    The full list of supported pseudo-variables in OpenSER is
256 254
    availabe at:
... ...
@@ -263,24 +261,23 @@ if (uri=~"sip:+40") /* calls to Romania */ {
263 261
        the data in log_name=data format;
264 262
      * DB accounting - log_name will be the name of the DB column
265 263
        where the data will be stored.IMPORTANT: add in db acc
266
-       table the columns corresponding to each extra data; 
264
+       table the columns corresponding to each extra data;
267 265
      * RADIUS accounting - log_name will be the AVP name used for
268 266
        packing the data into RADIUS message. The log_name will be
269
-       translated to AVP number via the dictionary. IMPORTANT:
270
-       add in RADIUS dictionary the log_name attribute. 
267
+       translated to AVP number via the dictionary. IMPORTANT: add
268
+       in RADIUS dictionary the log_name attribute.
271 269
      * DIAMETER accounting - log_name will be the AVP code used
272
-       for packing the data into DIAMETER message. The AVP code
273
-       is given directly as integer, since DIAMETER has no
274
-       dictionary support yet. IMPORTANT: log_name must be a
275
-       number.
276
-     _________________________________________________________
270
+       for packing the data into DIAMETER message. The AVP code is
271
+       given directly as integer, since DIAMETER has no dictionary
272
+       support yet. IMPORTANT: log_name must be a number.
273
+     __________________________________________________________
277 274
 
278 275
 1.2.3. How it works
279 276
 
280 277
    Some pseudo variables may return more than one value (like
281 278
    headers or AVPs). In this case, the returned values are
282 279
    embedded in a single string in a comma-separated format.
283
-     _________________________________________________________
280
+     __________________________________________________________
284 281
 
285 282
 1.3. Multi Call-Legs accounting
286 283
 
... ...
@@ -294,9 +291,9 @@ if (uri=~"sip:+40") /* calls to Romania */ {
294 291
    billed, user B must pay for the call -as last party modifing
295 292
    the call destination-, and not A -as initiator of the call.
296 293
    Call forwarding on server is only one example which shows the
297
-   necessity of the having an accounting engine with multiple
298
-   legs support.
299
-     _________________________________________________________
294
+   necessity of the having an accounting engine with multiple legs
295
+   support.
296
+     __________________________________________________________
300 297
 
301 298
 1.3.2. Configuration
302 299
 
... ...
@@ -304,8 +301,8 @@ if (uri=~"sip:+40") /* calls to Romania */ {
304 301
    each call leg to store another set of values of the AVPs. The
305 302
    meaning the AVP content is stricly decided by the script
306 303
    writter - it can be the origin and source of the leg, its
307
-   status or any other related imformation. If you have a set of
308
-   4 AVPS (AVP1, AVP2, AVP3, AVP4), then, for the A call B and B
304
+   status or any other related imformation. If you have a set of 4
305
+   AVPS (AVP1, AVP2, AVP3, AVP4), then, for the A call B and B
309 306
    forwards to C example, the for each leg ([A,B] and [B,C]) you
310 307
    need to set a different set of values for the AVPs. The script
311 308
    writer must take care and properly insert all these AVP from
... ...
@@ -318,7 +315,7 @@ if (uri=~"sip:+40") /* calls to Romania */ {
318 315
    By default, the multiple call-legs support is disable - it can
319 316
    be enabled just be setting the per-leg set of AVPs via the
320 317
    multi_leg_info module parameter.
321
-     _________________________________________________________
318
+     __________________________________________________________
322 319
 
323 320
 1.3.3. Logged data
324 321
 
... ...
@@ -328,38 +325,38 @@ if (uri=~"sip:+40") /* calls to Romania */ {
328 325
 
329 326
      * syslog -- all leg-sets will be added to one record string
330 327
        as AVP1=xxx, AVP2=xxxx ,... sets.
331
-     * database -- each pair will be separatly logged (due DB
332
-       data structure constraints); several records will be
333
-       written, the difference between them being only the fields
328
+     * database -- each pair will be separatly logged (due DB data
329
+       structure constraints); several records will be written,
330
+       the difference between them being only the fields
334 331
        corresponding to the call-leg info.
335 332
 
336
-       Note
333
+      Note
337 334
 
338
-   You will need to add in your DB (all acc related tables) the
339
-   colums for call-leg info (a column for each AVP for the set).
335
+           You will need to add in your DB (all acc related tables) the
336
+           colums for call-leg info (a column for each AVP for the set).
340 337
      * Radius -- all sets will be added to same Radius accounting
341 338
        message as RADIUS AVPs - for each call-leg a set of RADIUS
342 339
        AVPs will be added (corresponding to the per-leg AVP set)
343 340
 
344
-       Note
341
+    Note
345 342
 
346
-   You will need to add in your dictionaty the RADIUS AVPs used
347
-   in call-leg AVP set definition.
343
+         You will need to add in your dictionaty the RADIUS AVPs used in
344
+         call-leg AVP set definition.
348 345
      * Diameter same as for RADIUS.
349
-     _________________________________________________________
346
+     __________________________________________________________
350 347
 
351 348
 1.4. Dependencies
352 349
 
353 350
 1.4.1. OpenSER Modules
354 351
 
355
-   The module depends on the following modules (in the other
356
-   words the listed modules must be loaded before this module):
352
+   The module depends on the following modules (in the other words
353
+   the listed modules must be loaded before this module):
357 354
 
358 355
      * tm -- Transaction Manager
359 356
      * a database module -- If SQL support is used.
360 357
      * rr -- Record Route, if "detect_direction" module parameter
361 358
        is enabled.
362
-     _________________________________________________________
359
+     __________________________________________________________
363 360
 
364 361
 1.4.2. External Libraries or Applications
365 362
 
... ...
@@ -369,7 +366,7 @@ if (uri=~"sip:+40") /* calls to Romania */ {
369 366
      * radiusclient-ng 0.5.0 or higher -- if compiled with RADIUS
370 367
        support. See
371 368
        http://developer.berlios.de/projects/radiusclient-ng/.
372
-     _________________________________________________________
369
+     __________________________________________________________
373 370
 
374 371
 1.5. Exported Parameters
375 372
 
... ...
@@ -381,7 +378,7 @@ if (uri=~"sip:+40") /* calls to Romania */ {
381 378
 
382 379
    Example 1-1. early_media example
383 380
 modparam("acc", "early_media", 1)
384
-     _________________________________________________________
381
+     __________________________________________________________
385 382
 
386 383
 1.5.2. failed_transaction_flag (integer)
387 384
 
... ...
@@ -392,7 +389,7 @@ modparam("acc", "early_media", 1)
392 389
 
393 390
    Example 1-2. failed_transaction_flag example
394 391
 modparam("acc", "failed_transaction_flag", 4)
395
-     _________________________________________________________
392
+     __________________________________________________________
396 393
 
397 394
 1.5.3. report_ack (integer)
398 395
 
... ...
@@ -405,7 +402,7 @@ modparam("acc", "failed_transaction_flag", 4)
405 402
 
406 403
    Example 1-3. report_ack example
407 404
 modparam("acc", "report_ack", 1)
408
-     _________________________________________________________
405
+     __________________________________________________________
409 406
 
410 407
 1.5.4. report_cancels (integer)
411 408
 
... ...
@@ -417,15 +414,15 @@ modparam("acc", "report_ack", 1)
417 414
 
418 415
    Example 1-4. report_cancels example
419 416
 modparam("acc", "report_cancels", 1)
420
-     _________________________________________________________
417
+     __________________________________________________________
421 418
 
422 419
 1.5.5. detect_direction (integer)
423 420
 
424 421
    Controlles the direction detection for sequential requests. If
425
-   enabled (non zero value), for sequential requests with
426
-   upstream direction (from callee to caller), the FROM and TO
427
-   will be swapped (the direction will be preserved as in the
428
-   original request).
422
+   enabled (non zero value), for sequential requests with upstream
423
+   direction (from callee to caller), the FROM and TO will be
424
+   swapped (the direction will be preserved as in the original
425
+   request).
429 426
 
430 427
    It affects all values related to TO and FROM headers (body,
431 428
    URI, username, domain, TAG).
... ...
@@ -434,7 +431,7 @@ modparam("acc", "report_cancels", 1)
434 431
 
435 432
    Example 1-5. detect_direction example
436 433
 modparam("acc", "detect_direction", 1)
437
-     _________________________________________________________
434
+     __________________________________________________________
438 435
 
439 436
 1.5.6. multi_leg_info (string)
440 437
 
... ...
@@ -459,18 +456,18 @@ modparam("acc", "multi_leg_info",
459 456
 # for DIAMETER-based accouting, use the DIAMETER AVP ID (as integer)
460 457
 modparam("acc", "multi_leg_info",
461 458
     "2345=$avp(src);2346=$avp(dst)")
462
-     _________________________________________________________
459
+     __________________________________________________________
463 460
 
464 461
 1.5.7. log_flag (integer)
465 462
 
466
-   Request flag which needs to be set to account a transaction
467
-   via syslog.
463
+   Request flag which needs to be set to account a transaction via
464
+   syslog.
468 465
 
469 466
    Default value is not-set (no flag).
470 467
 
471 468
    Example 1-7. log_flag example
472 469
 modparam("acc", "log_flag", 2)
473
-     _________________________________________________________
470
+     __________________________________________________________
474 471
 
475 472
 1.5.8. log_missed_flag (integer)
476 473
 
... ...
@@ -481,7 +478,7 @@ modparam("acc", "log_flag", 2)
481 478
 
482 479
    Example 1-8. log_missed_flag example
483 480
 modparam("acc", "log_missed_flag", 3)
484
-     _________________________________________________________
481
+     __________________________________________________________
485 482
 
486 483
 1.5.9. log_level (integer)
487 484
 
... ...
@@ -491,7 +488,7 @@ modparam("acc", "log_missed_flag", 3)
491 488
 
492 489
    Example 1-9. log_level example
493 490
 modparam("acc", "log_level", 2)   # Set log_level to 2
494
-     _________________________________________________________
491
+     __________________________________________________________
495 492
 
496 493
 1.5.10. log_extra (string)
497 494
 
... ...
@@ -501,7 +498,7 @@ modparam("acc", "log_level", 2)   # Set log_level to 2
501 498
 
502 499
    Example 1-10. log_extra example
503 500
 modparam("acc", "log_extra", "ua=$hdr(User-Agent);uuid=$avp(i:123)")
504
-     _________________________________________________________
501
+     __________________________________________________________
505 502
 
506 503
 1.5.11. radius_config (string)
507 504
 
... ...
@@ -515,12 +512,12 @@ modparam("acc", "log_extra", "ua=$hdr(User-Agent);uuid=$avp(i:123)")
515 512
    If the parameter is set to empty string, the RADIUS accouting
516 513
    support will be disabled (even if compiled).
517 514
 
518
-   Default value is
519
-   "/usr/local/etc/radiusclient/radiusclient.conf ".
515
+   Default value is "/usr/local/etc/radiusclient/radiusclient.conf
516
+   ".
520 517
 
521 518
    Example 1-11. radius_config example
522 519
 modparam("acc", "radius_config", "/etc/radiusclient/radiusclient.conf")
523
-     _________________________________________________________
520
+     __________________________________________________________
524 521
 
525 522
 1.5.12. radius_flag (integer)
526 523
 
... ...
@@ -531,7 +528,7 @@ modparam("acc", "radius_config", "/etc/radiusclient/radiusclient.conf")
531 528
 
532 529
    Example 1-12. radius_flag example
533 530
 modparam("acc", "radius_flag", 2)
534
-     _________________________________________________________
531
+     __________________________________________________________
535 532
 
536 533
 1.5.13. radius_missed_flag (integer)
537 534
 
... ...
@@ -542,7 +539,7 @@ modparam("acc", "radius_flag", 2)
542 539
 
543 540
    Example 1-13. radius_missed_flag example
544 541
 modparam("acc", "radius_missed_flag", 3)
545
-     _________________________________________________________
542
+     __________________________________________________________
546 543
 
547 544
 1.5.14. service_type (integer)
548 545
 
... ...
@@ -552,7 +549,7 @@ modparam("acc", "radius_missed_flag", 3)
552 549
 
553 550
    Example 1-14. service_type example
554 551
 modparam("acc", "service_type", 16)
555
-     _________________________________________________________
552
+     __________________________________________________________
556 553
 
557 554
 1.5.15. radius_extra (string)
558 555
 
... ...
@@ -561,9 +558,8 @@ modparam("acc", "service_type", 16)
561 558
    Default value is NULL.
562 559
 
563 560
    Example 1-15. radius_extra example
564
-modparam("acc", "radius_extra", "via=$hdr(Via[*]); email=$avp(s:email)"
565
-)
566
-     _________________________________________________________
561
+modparam("acc", "radius_extra", "via=$hdr(Via[*]); email=$avp(s:email)")
562
+     __________________________________________________________
567 563
 
568 564
 1.5.16. db_flag (integer)
569 565
 
... ...
@@ -574,7 +570,7 @@ modparam("acc", "radius_extra", "via=$hdr(Via[*]); email=$avp(s:email)"
574 570
 
575 571
    Example 1-16. db_flag example
576 572
 modparam("acc", "db_flag", 2)
577
-     _________________________________________________________
573
+     __________________________________________________________
578 574
 
579 575
 1.5.17. db_missed_flag (integer)
580 576
 
... ...
@@ -585,7 +581,7 @@ modparam("acc", "db_flag", 2)
585 581
 
586 582
    Example 1-17. db_missed_flag example
587 583
 modparam("acc", "db_missed_flag", 3)
588
-     _________________________________________________________
584
+     __________________________________________________________
589 585
 
590 586
 1.5.18. db_table_acc (string)
591 587
 
... ...
@@ -596,7 +592,7 @@ modparam("acc", "db_missed_flag", 3)
596 592
 
597 593
    Example 1-18. db_table_acc example
598 594
 modparam("acc", "db_table_acc", "myacc_table")
599
-     _________________________________________________________
595
+     __________________________________________________________
600 596
 
601 597
 1.5.19. db_table_missed_calls (string)
602 598
 
... ...
@@ -606,7 +602,7 @@ modparam("acc", "db_table_acc", "myacc_table")
606 602
 
607 603
    Example 1-19. db_table_missed_calls example
608 604
 modparam("acc", "db_table_missed_calls", "myMC_table")
609
-     _________________________________________________________
605
+     __________________________________________________________
610 606
 
611 607
 1.5.20. db_url (string)
612 608
 
... ...
@@ -617,7 +613,7 @@ modparam("acc", "db_table_missed_calls", "myMC_table")
617 613
 
618 614
    Example 1-20. db_url example
619 615
 modparam("acc", "db_url", "mysql://user:password@localhost/openser")
620
-     _________________________________________________________
616
+     __________________________________________________________
621 617
 
622 618
 1.5.21. acc_method_column (string)
623 619
 
... ...
@@ -628,7 +624,7 @@ modparam("acc", "db_url", "mysql://user:password@localhost/openser")
628 624
 
629 625
    Example 1-21. acc_method_column example
630 626
 modparam("acc", "acc_method_column", "method")
631
-     _________________________________________________________
627
+     __________________________________________________________
632 628
 
633 629
 1.5.22. acc_from_tag_column (string)
634 630
 
... ...
@@ -639,7 +635,7 @@ modparam("acc", "acc_method_column", "method")
639 635
 
640 636
    Example 1-22. acc_from_tag_column example
641 637
 modparam("acc", "acc_from_tag_column", "from_tag")
642
-     _________________________________________________________
638
+     __________________________________________________________
643 639
 
644 640
 1.5.23. acc_to_tag_column (string)
645 641
 
... ...
@@ -650,7 +646,7 @@ modparam("acc", "acc_from_tag_column", "from_tag")
650 646
 
651 647
    Example 1-23. acc_to_tag_column example
652 648
 modparam("acc", "acc_to_tag_column", "to_tag")
653
-     _________________________________________________________
649
+     __________________________________________________________
654 650
 
655 651
 1.5.24. acc_callid_column (string)
656 652
 
... ...
@@ -661,7 +657,7 @@ modparam("acc", "acc_to_tag_column", "to_tag")
661 657
 
662 658
    Example 1-24. acc_callid_column example
663 659
 modparam("acc", "acc_callid_column", "callid")
664
-     _________________________________________________________
660
+     __________________________________________________________
665 661
 
666 662
 1.5.25. acc_sip_code_column (string)
667 663
 
... ...
@@ -672,7 +668,7 @@ modparam("acc", "acc_callid_column", "callid")
672 668
 
673 669
    Example 1-25. acc_sip_code_column example
674 670
 modparam("acc", "acc_sip_code_column", "sip_code")
675
-     _________________________________________________________
671
+     __________________________________________________________
676 672
 
677 673
 1.5.26. acc_sip_reason_column (string)
678 674
 
... ...
@@ -683,7 +679,7 @@ modparam("acc", "acc_sip_code_column", "sip_code")
683 679
 
684 680
    Example 1-26. acc_sip_reason_column example
685 681
 modparam("acc", "acc_sip_reason_column", "sip_reason")
686
-     _________________________________________________________
682
+     __________________________________________________________
687 683
 
688 684
 1.5.27. acc_time_column (string)
689 685
 
... ...
@@ -694,7 +690,7 @@ modparam("acc", "acc_sip_reason_column", "sip_reason")
694 690
 
695 691
    Example 1-27. acc_time_column example
696 692
 modparam("acc", "acc_time_column", "time")
697
-     _________________________________________________________
693
+     __________________________________________________________
698 694
 
699 695
 1.5.28. db_extra (string)
700 696
 
... ...
@@ -703,9 +699,9 @@ modparam("acc", "acc_time_column", "time")
703 699
    Default value is NULL.
704 700
 
705 701
    Example 1-28. db_extra example
706
-modparam("acc", "db_extra", "ct=$hdr(Content-type); email=$avp(s:email)
707
-")
708
-     _________________________________________________________
702
+modparam("acc", "db_extra", "ct=$hdr(Content-type); email=$avp(s:email)"
703
+)
704
+     __________________________________________________________
709 705
 
710 706
 1.5.29. diameter_flag (integer)
711 707
 
... ...
@@ -716,7 +712,7 @@ modparam("acc", "db_extra", "ct=$hdr(Content-type); email=$avp(s:email)
716 712
 
717 713
    Example 1-29. diameter_flag example
718 714
 modparam("acc", "diameter_flag", 2)
719
-     _________________________________________________________
715
+     __________________________________________________________
720 716
 
721 717
 1.5.30. diameter_missed_flag (integer)
722 718
 
... ...
@@ -727,18 +723,18 @@ modparam("acc", "diameter_flag", 2)
727 723
 
728 724
    Example 1-30. diameter_missed_flag example
729 725
 modparam("acc", "diameter_missed_flag", 3)
730
-     _________________________________________________________
726
+     __________________________________________________________
731 727
 
732 728
 1.5.31. diameter_client_host (string)
733 729
 
734
-   Hostname of the machine where the DIAMETER Client is running
735
-   -- DIAMETER specific.
730
+   Hostname of the machine where the DIAMETER Client is running --
731
+   DIAMETER specific.
736 732
 
737 733
    Default value is "localhost".
738 734
 
739 735
    Example 1-31. diameter_client_host example
740 736
 modparam("acc", "diameter_client_host", "3a_server.net")
741
-     _________________________________________________________
737
+     __________________________________________________________
742 738
 
743 739
 1.5.32. diameter_client_port (int)
744 740
 
... ...
@@ -749,7 +745,7 @@ modparam("acc", "diameter_client_host", "3a_server.net")
749 745
 
750 746
    Example 1-32. diameter_client_host example
751 747
 modparam("acc", "diameter_client_port", 3000)
752
-     _________________________________________________________
748
+     __________________________________________________________
753 749
 
754 750
 1.5.33. diameter_extra (string)
755 751
 
... ...
@@ -758,17 +754,17 @@ modparam("acc", "diameter_client_port", 3000)
758 754
    Default value is NULL.
759 755
 
760 756
    Example 1-33. diameter_extra example
761
-modparam("acc", "diameter_extra", "7846=$hdr(Content-type);7847=$avp(s:
762
-email)")
763
-     _________________________________________________________
757
+modparam("acc", "diameter_extra", "7846=$hdr(Content-type);7847=$avp(s:e
758
+mail)")
759
+     __________________________________________________________
764 760
 
765 761
 1.6. Exported Functions
766 762
 
767 763
 1.6.1. acc_log_request(comment)
768 764
 
769 765
    acc_request reports on a request, for example, it can be used
770
-   to report on missed calls to off-line users who are replied
771
-   404 - Not Found. To avoid multiple reports on UDP request
766
+   to report on missed calls to off-line users who are replied 404
767
+   - Not Found. To avoid multiple reports on UDP request
772 768
    retransmission, you would need to embed the action in stateful
773 769
    processing.
774 770
 
... ...
@@ -782,7 +778,7 @@ email)")
782 778
 ...
783 779
 acc_log_request("Some comment");
784 780
 ...
785
-     _________________________________________________________
781
+     __________________________________________________________
786 782
 
787 783
 1.6.2. acc_db_request(comment, table)
788 784
 
... ...
@@ -801,7 +797,7 @@ acc_log_request("Some comment");
801 797
 ...
802 798
 acc_log_request("Some comment", "Some table");
803 799
 ...
804
-     _________________________________________________________
800
+     __________________________________________________________
805 801
 
806 802
 1.6.3. acc_rad_request(comment)
807 803
 
... ...
@@ -818,12 +814,12 @@ acc_log_request("Some comment", "Some table");
818 814
 ...
819 815
 acc_rad_request("Some comment");
820 816
 ...
821
-     _________________________________________________________
817
+     __________________________________________________________
822 818
 
823 819
 1.6.4. acc_diam_request(comment)
824 820
 
825
-   Like acc_log_request, acc_diam_request reports on a request.
826
-   It reports to the configured Diameter server.
821
+   Like acc_log_request, acc_diam_request reports on a request. It
822
+   reports to the configured Diameter server.
827 823
 
828 824
    Meaning of the parameters is as follows:
829 825
 
... ...
@@ -835,13 +831,13 @@ acc_rad_request("Some comment");
835 831
 ...
836 832
 acc_diam_request("Some comment");
837 833
 ...
838
-     _________________________________________________________
834
+     __________________________________________________________
839 835
 
840 836
 Chapter 2. Developer's Guide
841 837
 
842 838
    The module does not provide any API to use in other OpenSER
843 839
    modules.
844
-     _________________________________________________________
840
+     __________________________________________________________
845 841
 
846 842
 Chapter 3. Frequently Asked Questions
847 843
 
... ...
@@ -880,8 +876,8 @@ Chapter 3. Frequently Asked Questions
880 876
 
881 877
    3.5. Where can I post a question about this module?
882 878
 
883
-   First at all check if your question was already answered on
884
-   one of our mailing lists:
879
+   First at all check if your question was already answered on one
880
+   of our mailing lists:
885 881
 
886 882
      * User Mailing List -
887 883
        http://openser.org/cgi-bin/mailman/listinfo/users
... ...
@@ -1,4 +1,3 @@
1
-
2 1
 ALIAS_DB Module
3 2
 
4 3
 Daniel-Constantin Mierla
... ...
@@ -10,7 +9,7 @@ Edited by
10 9
 Daniel-Constantin Mierla
11 10
 
12 11
    Copyright � 2005 voice-system.ro
13
-     _________________________________________________________
12
+     __________________________________________________________
14 13
 
15 14
    Table of Contents
16 15
    1. User's Guide
... ...
@@ -47,7 +46,7 @@ Daniel-Constantin Mierla
47 46
    1-6. Set use_domain parameter
48 47
    1-7. Set domain_prefix parameter
49 48
    1-8. alias_db_lookup() usage
50
-     _________________________________________________________
49
+     __________________________________________________________
51 50
 
52 51
 Chapter 1. User's Guide
53 52
 
... ...
@@ -59,10 +58,10 @@ Chapter 1. User's Guide
59 58
    for search (no memory caching).
60 59
 
61 60
    Having no memory caching the speed of search can decrease but
62
-   the provisioning is easier. With very fast databases like
63
-   MySQL the speed penalty can be lowered. Also, the search can
64
-   be performed on different tables in the same script.
65
-     _________________________________________________________
61
+   the provisioning is easier. With very fast databases like MySQL
62
+   the speed penalty can be lowered. Also, the search can be
63
+   performed on different tables in the same script.
64
+     __________________________________________________________
66 65
 
67 66
 1.2. Dependencies
68 67
 
... ...
@@ -71,7 +70,7 @@ Chapter 1. User's Guide
71 70
    The following modules must be loaded before this module:
72 71
 
73 72
      * database module (mysql, dbtext, ...).
74
-     _________________________________________________________
73
+     __________________________________________________________
75 74
 
76 75
 1.2.2. External Libraries or Applications
77 76
 
... ...
@@ -79,7 +78,7 @@ Chapter 1. User's Guide
79 78
    before running OpenSER with this module loaded:
80 79
 
81 80
      * None.
82
-     _________________________________________________________
81
+     __________________________________________________________
83 82
 
84 83
 1.3. Exported Parameters
85 84
 
... ...
@@ -87,61 +86,61 @@ Chapter 1. User's Guide
87 86
 
88 87
    Database URL.
89 88
 
90
-   Default value is "DEFAULT_RODB_URL". 
89
+   Default value is "DEFAULT_RODB_URL".
91 90
 
92 91
    Example 1-1. Set db_url parameter
93 92
 ...
94 93
 modparam("alias_db", "db_url", "mysql://user:passwd@localhost/openser")
95 94
 ...
96
-     _________________________________________________________
95
+     __________________________________________________________
97 96
 
98 97
 1.3.2. user_column (str)
99 98
 
100 99
    Name of the column storing username.
101 100
 
102
-   Default value is "username". 
101
+   Default value is "username".
103 102
 
104 103
    Example 1-2. Set user_column parameter
105 104
 ...
106 105
 modparam("alias_db", "user_column", "susername")
107 106
 ...
108
-     _________________________________________________________
107
+     __________________________________________________________
109 108
 
110 109
 1.3.3. domain_column (str)
111 110
 
112 111
    Name of the column storing user's domain.
113 112
 
114
-   Default value is "domain". 
113
+   Default value is "domain".
115 114
 
116 115
    Example 1-3. Set domain_column parameter
117 116
 ...
118 117
 modparam("alias_db", "domain_column", "sdomain")
119 118
 ...
120
-     _________________________________________________________
119
+     __________________________________________________________
121 120
 
122 121
 1.3.4. alias_user_column (str)
123 122
 
124 123
    Name of the column storing alias username.
125 124
 
126
-   Default value is "alias_username". 
125
+   Default value is "alias_username".
127 126
 
128 127
    Example 1-4. Set alias_user_column parameter
129 128
 ...
130 129
 modparam("alias_db", "alias_user_column", "auser")
131 130
 ...
132
-     _________________________________________________________
131
+     __________________________________________________________
133 132
 
134 133
 1.3.5. alias_domain_column (str)
135 134
 
136 135
    Name of the column storing alias domain.
137 136
 
138
-   Default value is "alias_domain". 
137
+   Default value is "alias_domain".
139 138
 
140 139
    Example 1-5. Set alias_domain_column parameter
141 140
 ...
142 141
 modparam("alias_db", "alias_domain_column", "adomain")
143 142
 ...
144
-     _________________________________________________________
143
+     __________________________________________________________
145 144
 
146 145
 1.3.6. use_domain (int)
147 146
 
... ...
@@ -149,37 +148,37 @@ modparam("alias_db", "alias_domain_column", "adomain")
149 148
    searching for alias. If set to 0, the domain from R-URI is not
150 149
    used, if set to 1 the domain from R-URI is used.
151 150
 
152
-   Default value is "o". 
151
+   Default value is "o".
153 152
 
154 153
    Example 1-6. Set use_domain parameter
155 154
 ...
156 155
 modparam("alias_db", "use_domain", 1)
157 156
 ...
158
-     _________________________________________________________
157
+     __________________________________________________________
159 158
 
160 159
 1.3.7. domain_prefix (str)
161 160
 
162 161
    Specifies the prefix to be stripped from the domain in R-URI
163 162
    before doing the search.
164 163
 
165
-   Default value is "NULL". 
164
+   Default value is "NULL".
166 165
 
167 166
    Example 1-7. Set domain_prefix parameter
168 167
 ...
169 168
 modparam("alias_db", "domain_prefix", "sip.")
170 169
 ...
171
-     _________________________________________________________
170
+     __________________________________________________________
172 171
 
173 172
 1.4. Exported Functions
174 173
 
175 174
 1.4.1. alias_db_lookup(table_name)
176 175
 
177
-   The function takes the R-URI and search to see whether it is
178
-   an alias or not. If it is an alias for a local user, the R-URI
179
-   is replaced with user's SIP uri.
176
+   The function takes the R-URI and search to see whether it is an
177
+   alias or not. If it is an alias for a local user, the R-URI is
178
+   replaced with user's SIP uri.
180 179
 
181
-   The function returns TRUE if R-URI is alias and it was
182
-   replaced by user's SIP uri.
180
+   The function returns TRUE if R-URI is alias and it was replaced
181
+   by user's SIP uri.
183 182
 
184 183
    Meaning of the parameters is as follows:
185 184
 
... ...
@@ -192,13 +191,13 @@ modparam("alias_db", "domain_prefix", "sip.")
192 191
 ...
193 192
 alias_db_lookup("dbaliases");
194 193
 ...
195
-     _________________________________________________________
194
+     __________________________________________________________
196 195
 
197 196
 Chapter 2. Developer's Guide
198 197
 
199 198
    The module does not provide any API to use in other OpenSER
200 199
    modules.
201
-     _________________________________________________________
200
+     __________________________________________________________
202 201
 
203 202
 Chapter 3. Frequently Asked Questions
204 203
 
... ...
@@ -212,8 +211,8 @@ Chapter 3. Frequently Asked Questions
212 211
 
213 212
    3.2. Where can I post a question about this module?
214 213
 
215
-   First at all check if your question was already answered on
216
-   one of our mailing lists:
214
+   First at all check if your question was already answered on one
215
+   of our mailing lists:
217 216
 
218 217
      * User Mailing List -
219 218
        http://openser.org/cgi-bin/mailman/listinfo/users
... ...
@@ -1,4 +1,3 @@
1
-
2 1
 AUTH_DIAMETER Module
3 2
 
4 3
 Elena-Ramona Modroiu
... ...
@@ -10,7 +9,7 @@ Edited by
10 9
 Elena-Ramona Modroiu
11 10
 
12 11
    Copyright � 2003, 2004 FhG FOKUS
13
-     _________________________________________________________
12
+     __________________________________________________________
14 13
 
15 14
    Table of Contents
16 15
    1. User's Guide
... ...
@@ -46,7 +45,7 @@ Elena-Ramona Modroiu
46 45
    1-5. diameter_www_authorize usage
47 46
    1-6. diameter_proxy_authorize usage
48 47
    1-7. diameter_is_user_in usage
49
-     _________________________________________________________
48
+     __________________________________________________________
50 49
 
51 50
 Chapter 1. User's Guide
52 51
 
... ...
@@ -86,7 +85,7 @@ Chapter 1. User's Guide
86 85
                                   Result-Code=2001
87 86
 
88 87
 ...
89
-     _________________________________________________________
88
+     __________________________________________________________
90 89
 
91 90
 1.2. Dependencies
92 91
 
... ...
@@ -95,7 +94,7 @@ Chapter 1. User's Guide
95 94
    The following modules must be loaded before this module:
96 95
 
97 96
      * sl - used to send stateless replies.
98
-     _________________________________________________________
97
+     __________________________________________________________
99 98
 
100 99
 1.2.2. External Libraries or Applications
101 100
 
... ...
@@ -103,7 +102,7 @@ Chapter 1. User's Guide
103 102
    before running OpenSER with this module loaded:
104 103
 
105 104
      * None.
106
-     _________________________________________________________
105
+     __________________________________________________________
107 106
 
108 107
 1.3. Exported Parameters
109 108
 
... ...
@@ -111,48 +110,48 @@ Chapter 1. User's Guide
111 110
 
112 111
    Hostname of the machine where the DIAMETER Client is running.
113 112
 
114
-   Default value is "localhost". 
113
+   Default value is "localhost".
115 114
 
116 115
    Example 1-2. Set diameter_client_host parameter
117 116
 ...
118 117
 modparam("auth_diameter", "diameter_client_host", "10.10.10.10")
119 118
 ...
120
-     _________________________________________________________
119
+     __________________________________________________________
121 120
 
122 121
 1.3.2. diameter_client_port (int)
123 122
 
124 123
    Port number where the DIAMETER Client is listening.
125 124
 
126
-   Default value is "3000". 
125
+   Default value is "3000".
127 126
 
128 127
    Example 1-3. Set diameter_client_port parameter
129 128
 ...
130 129
 modparam("auth_diameter", "diameter_client_port", 3000)
131 130
 ...
132
-     _________________________________________________________
131
+     __________________________________________________________
133 132
 
134 133
 1.3.3. use_domain (int)
135 134
 
136 135
    Specifies whether the domain name part of URI is used when
137 136
    checking the user's privileges.
138 137
 
139
-   Default value is "0 (0==false and 1==true )". 
138
+   Default value is "0 (0==false and 1==true )".
140 139
 
141 140
    Example 1-4. Set use_domain parameter
142 141
 ...
143 142
 modparam("auth_diameter", "use_domain", 1)
144 143
 ...
145
-     _________________________________________________________
144
+     __________________________________________________________
146 145
 
147 146
 1.4. Exported Functions
148 147
 
149 148
 1.4.1. diameter_www_authorize(realm)
150 149
 
151
-   SIP Server checks for authorization having a DIAMETER server
152
-   in backend. If no credentials are provided inside the SIP
153
-   request then a challenge is sent back to UAC. If the
154
-   credentials don't match the ones computed by DISC then "403
155
-   Forbidden" is sent back.
150
+   SIP Server checks for authorization having a DIAMETER server in
151
+   backend. If no credentials are provided inside the SIP request
152
+   then a challenge is sent back to UAC. If the credentials don't
153
+   match the ones computed by DISC then "403 Forbidden" is sent
154
+   back.
156 155
 
157 156
    Negative codes may be interpreted as follows:
158 157
 
... ...
@@ -174,7 +173,7 @@ if(!diameter_www_authorize("siphub.net"))
174 173
         exit;
175 174
 };
176 175
 ...
177
-     _________________________________________________________
176
+     __________________________________________________________
178 177
 
179 178
 1.4.2. diameter_proxy_authorize(realm)
180 179
 
... ...
@@ -199,7 +198,7 @@ if(!diameter_proxy_authorize("siphub.net"))
199 198
         exit;
200 199
 };
201 200
 ...
202
-     _________________________________________________________
201
+     __________________________________________________________
203 202
 
204 203
 1.4.3. diameter_is_user_in(who, group)
205 204
 
... ...
@@ -222,18 +221,18 @@ if(!diameter_is_user_in("From", "voicemail"))
222 221
         exit;
223 222
 };
224 223
 ...
225
-     _________________________________________________________
224
+     __________________________________________________________
226 225
 
227 226
 1.5. Installation & Running
228 227
 
229 228
    Notes about installation and running.
230
-     _________________________________________________________
229
+     __________________________________________________________
231 230
 
232 231
 Chapter 2. Developer's Guide
233 232
 
234 233
    The module does not provide any API to use in other OpenSER
235 234
    modules.
236
-     _________________________________________________________
235
+     __________________________________________________________
237 236
 
238 237
 Chapter 3. Frequently Asked Questions
239 238
 
... ...
@@ -247,8 +246,8 @@ Chapter 3. Frequently Asked Questions
247 246
 
248 247
    3.2. Where can I post a question about this module?
249 248
 
250
-   First at all check if your question was already answered on
251
-   one of our mailing lists:
249
+   First at all check if your question was already answered on one
250
+   of our mailing lists:
252 251
 
253 252
      * User Mailing List -
254 253
        http://openser.org/cgi-bin/mailman/listinfo/users
... ...
@@ -1,4 +1,3 @@
1
-
2 1
 Auth_radius Module
3 2
 
4 3
 Jan Janak
... ...
@@ -22,7 +21,7 @@ Jan Janak
22 21
    Copyright � 2002, 2003 FhG FOKUS
23 22
 
24 23
    Copyright � 2005 voice-system.ro
25
-     _________________________________________________________
24
+     __________________________________________________________
26 25
 
27 26
    Table of Contents
28 27
    1. User's Guide
... ...
@@ -53,7 +52,7 @@ Jan Janak
53 52
    1-3. service_type parameter usage
54 53
    1-4. radius_www_authorize usage
55 54
    1-5. proxy_authorize usage
56
-     _________________________________________________________
55
+     __________________________________________________________
57 56
 
58 57
 Chapter 1. User's Guide
59 58
 
... ...
@@ -71,21 +70,21 @@ Chapter 1. User's Guide
71 70
    draft-sterman-aaa-sip-00. This module requires radiusclient-ng
72 71
    library version 0.5.0 or higher which is available from
73 72
    http://developer.berlios.de/projects/radiusclient-ng/.
74
-     _________________________________________________________
73
+     __________________________________________________________
75 74
 
76 75
 1.2. Additional Credentials
77 76
 
78
-   When performing authentification, the RADIUS server may
79
-   include in the response additional credentials. This scheme is
80
-   very useful in fetching additional user information from the
81
-   RADIUS server without making extra queries.
77
+   When performing authentification, the RADIUS server may include
78
+   in the response additional credentials. This scheme is very
79
+   useful in fetching additional user information from the RADIUS
80
+   server without making extra queries.
82 81
 
83 82
    The additional credentials are embedded in the RADIUS reply as
84 83
    AVPs "SIP-AVP". The syntax of the value is:
85 84
 
86
-     * value = SIP_AVP_NAME SIP_AVP_VALUE 
87
-     * SIP_AVP_NAME = STRING_NAME | '#'ID_NUMBER 
88
-     * SIP_AVP_VALUE = ':'STRING_VALUE | '#'NUMBER_VALUE 
85
+     * value = SIP_AVP_NAME SIP_AVP_VALUE
86
+     * SIP_AVP_NAME = STRING_NAME | '#'ID_NUMBER
87
+     * SIP_AVP_VALUE = ':'STRING_VALUE | '#'NUMBER_VALUE
89 88
 
90 89
    All additional credentials will be stored as OpenSER AVPs
91 90
    (SIP_AVP_NAME = SIP_AVP_VALUE).
... ...
@@ -103,17 +102,17 @@ Chapter 1. User's Guide
103 102
 "#14#28"
104 103
     -> ID AVP (14) with INTEGER VALUE (28)
105 104
 ....
106
-     _________________________________________________________
105
+     __________________________________________________________
107 106
 
108 107
 1.3. Dependencies
109 108
 
110 109
 1.3.1. OpenSER Modules
111 110
 
112
-   The module depends on the following modules (in the other
113
-   words the listed modules must be loaded before this module):
111
+   The module depends on the following modules (in the other words
112
+   the listed modules must be loaded before this module):
114 113
 
115 114
      * auth -- Generic authentication functions
116
-     _________________________________________________________
115
+     __________________________________________________________
117 116
 
118 117
 1.3.2. External Libraries or Applications
119 118
 
... ...
@@ -123,21 +122,21 @@ Chapter 1. User's Guide
123 122
      * radiusclient-ng 0.5.0 or higher -- library and development
124 123
        files. See
125 124
        http://developer.berlios.de/projects/radiusclient-ng/.
126
-     _________________________________________________________
125
+     __________________________________________________________
127 126
 
128 127
 1.4. Exported Parameters
129 128
 
130 129
 1.4.1. radius_config (string)
131 130
 
132
-   This is the location of the configuration file of radius
133
-   client libraries.
131
+   This is the location of the configuration file of radius client
132
+   libraries.
134 133
 
135 134
    Default value is
136 135
    "/usr/local/etc/radiusclient-ng/radiusclient.conf".
137 136
 
138 137
    Example 1-2. radius_config parameter usage
139 138
 modparam("auth_radius", "radius_config", "/etc/radiusclient.conf")
140
-     _________________________________________________________
139
+     __________________________________________________________
141 140
 
142 141
 1.4.2. service_type (integer)
143 142
 
... ...
@@ -150,7 +149,7 @@ modparam("auth_radius", "radius_config", "/etc/radiusclient.conf")
150 149
 
151 150
    Example 1-3. service_type parameter usage
152 151
 modparam("auth_radius", "service_type", 15)
153
-     _________________________________________________________
152
+     __________________________________________________________
154 153
 
155 154
 1.5. Exported Functions
156 155
 
... ...
@@ -179,15 +178,15 @@ modparam("auth_radius", "service_type", 15)
179 178
 
180 179
    Meaning of the parameter is as follows:
181 180
 
182
-     * realm - Realm is a opaque string that the user agent
183
-       should present to the user so he can decide what username
184
-       and password to use. Usually this is domain of the host
185
-       the server is running on.
186
-       If an empty string "" is used then the server will
187
-       generate it from the request. In case of REGISTER requests
188
-       To header field domain will be used (because this header
189
-       field represents a user being registered), for all other
190
-       messages From header field domain will be used.
181
+     * realm - Realm is a opaque string that the user agent should
182
+       present to the user so he can decide what username and
183
+       password to use. Usually this is domain of the host the
184
+       server is running on.
185
+       If an empty string "" is used then the server will generate
186
+       it from the request. In case of REGISTER requests To header
187
+       field domain will be used (because this header field
188
+       represents a user being registered), for all other messages
189
+       From header field domain will be used.
191 190
        The string may contain pseudo variables.
192 191
 
193 192
    This function can be used from REQUEST_ROUTE.
... ...
@@ -198,7 +197,7 @@ if (!radius_www_authorize("siphub.net")) {
198 197
         www_challenge("siphub.net", "1");
199 198
 };
200 199
 ...
201
-     _________________________________________________________
200
+     __________________________________________________________
202 201
 
203 202
 1.5.2. radius_proxy_authorize(realm [, uri_user])
204 203
 
... ...
@@ -218,12 +217,12 @@ if (!radius_www_authorize("siphub.net")) {
218 217
 
219 218
    Meaning of the parameters is as follows:
220 219
 
221
-     * realm - Realm is a opaque string that the user agent
222
-       should present to the user so he can decide what username
223
-       and password to use. This is usually one of the domains
224
-       the proxy is responsible for. If an empty string "" is
225
-       used then the server will generate realm from host part of
226
-       From header field URI.
220
+     * realm - Realm is a opaque string that the user agent should
221
+       present to the user so he can decide what username and
222
+       password to use. This is usually one of the domains the
223
+       proxy is responsible for. If an empty string "" is used
224
+       then the server will generate realm from host part of From
225
+       header field URI.
227 226
        The string may contain pseudo variables.
228 227
      * uri_user - Uri_user is an optional pseudo variable
229 228
        parameter whose value, if present, will be given to Radius
... ...
@@ -236,24 +235,23 @@ if (!radius_www_authorize("siphub.net")) {
236 235
 
237 236
    Example 1-5. proxy_authorize usage
238 237
 ...
239
-if (!radius_proxy_authorize("")) {   # Realm and URI user will be autog
240
-enerated
238
+if (!radius_proxy_authorize("")) {   # Realm and URI user will be autoge
239
+nerated
241 240
         proxy_challenge("", "1");
242 241
 };
243 242
 ...
244
-if (!radius_proxy_authorize("$pd", "$pU")) { # Realm and URI user are t
245
-aken
246
-        proxy_challenge("$pd", "1");         # from P-Preferred-Identit
247
-y
243
+if (!radius_proxy_authorize("$pd", "$pU")) { # Realm and URI user are ta
244
+ken
245
+        proxy_challenge("$pd", "1");         # from P-Preferred-Identity
248 246
 };                                           # header field
249 247
 ...
250
-     _________________________________________________________
248
+     __________________________________________________________
251 249
 
252 250
 Chapter 2. Developer's Guide
253 251
 
254 252
    The module does not provide any API to use in other OpenSER
255 253
    modules.
256
-     _________________________________________________________
254
+     __________________________________________________________
257 255
 
258 256
 Chapter 3. Frequently Asked Questions
259 257
 
... ...
@@ -267,8 +265,8 @@ Chapter 3. Frequently Asked Questions
267 265
 
268 266
    3.2. Where can I post a question about this module?
269 267
 
270
-   First at all check if your question was already answered on
271
-   one of our mailing lists:
268
+   First at all check if your question was already answered on one
269
+   of our mailing lists:
272 270
 
273 271
      * User Mailing List -
274 272
        http://openser.org/cgi-bin/mailman/listinfo/users
... ...
@@ -1,4 +1,3 @@
1
-
2 1
 AVPops Module
3 2
 
4 3
 Ramona-Elena Modroiu
... ...
@@ -10,7 +9,7 @@ Edited by
10 9
 Ramona-Elena Modroiu
11 10
 
12 11
    Copyright � 2004, 2005 voice-system.ro
13
-     _________________________________________________________
12
+     __________________________________________________________
14 13
 
15 14
    Table of Contents
16 15
    1. User's Guide
... ...
@@ -39,20 +38,20 @@ Ramona-Elena Modroiu
39 38
 
40 39
         1.5. Exported Functions
41 40
 
42
-              1.5.1. avp_db_load(source,name) 
41
+              1.5.1. avp_db_load(source,name)
43 42
               1.5.2. avp_db_store(source,name)
44 43
               1.5.3. avp_db_delete(source,name)
45 44
               1.5.4. avp_db_query(query[,dest])
46 45
               1.5.5. avp_write(value,name) - removed
47
-              1.5.6. avp_delete(name) 
48
-              1.5.7. avp_pushto(destination,name) 
49
-              1.5.8. avp_check(name,op_value) 
50
-              1.5.9. avp_copy(old_name,new_name) 
51
-              1.5.10. avp_printf(dest, format) 
46
+              1.5.6. avp_delete(name)
47
+              1.5.7. avp_pushto(destination,name)
48
+              1.5.8. avp_check(name,op_value)
49
+              1.5.9. avp_copy(old_name,new_name)
50
+              1.5.10. avp_printf(dest, format)
52 51
               1.5.11. avp_subst(avps, subst)
53
-              1.5.12. avp_op(name,op_value) 
54
-              1.5.13. is_avp_set(name) 
55
-              1.5.14. avp_print() 
52
+              1.5.12. avp_op(name,op_value)
53
+              1.5.13. is_avp_set(name)
54
+              1.5.14. avp_print()
56 55
 
57 56
    2. Developer's Guide
58 57
    3. Frequently Asked Questions
... ...
@@ -84,7 +83,7 @@ Ramona-Elena Modroiu
84 83
    1-24. avp_op usage
85 84
    1-25. is_avp_set usage
86 85
    1-26. avp_print usage
87
-     _________________________________________________________
86
+     __________________________________________________________
88 87
 
89 88
 Chapter 1. User's Guide
90 89
 
... ...
@@ -93,11 +92,11 @@ Chapter 1. User's Guide
93 92
    AVPops (AVP-operations) modules implements a set of script
94 93
    functions which allow access and manipulation of user AVPs
95 94
    (preferences) and pseudo-variables. AVPs are a powerful tool
96
-   for implementing services/preferences per user/domain. Now
97
-   they are usable directly from configuration script. Functions
98
-   for interfacing DB resources (loading/storing/removing),
99
-   functions for swapping information between AVPs and SIP
100
-   messages, function for testing/checking the value of an AVP.
95
+   for implementing services/preferences per user/domain. Now they
96
+   are usable directly from configuration script. Functions for
97
+   interfacing DB resources (loading/storing/removing), functions
98
+   for swapping information between AVPs and SIP messages,
99
+   function for testing/checking the value of an AVP.
101 100
 
102 101
    AVPs are persistent per SIP transaction, being available in
103 102
    "route", "branch_route" and "failure_route". To make them
... ...
@@ -110,7 +109,7 @@ Chapter 1. User's Guide
110 109
    explanations and commented examples) can be found on Voice
111 110
    Sistem documentation web page at
112 111
    http://voice-system.ro/docs/avpops .
113
-     _________________________________________________________
112
+     __________________________________________________________
114 113
 
115 114
 1.2. Dependencies
116 115
 
... ...
@@ -119,7 +118,7 @@ Chapter 1. User's Guide
119 118
    The following modules must be loaded before this module:
120 119
 
121 120
      * Optionally a database module
122
-     _________________________________________________________
121
+     __________________________________________________________
123 122
 
124 123
 1.2.2. External Libraries or Applications
125 124
 
... ...
@@ -127,7 +126,7 @@ Chapter 1. User's Guide
127 126
    before running OpenSER with this module loaded:
128 127
 
129 128
      * None
130
-     _________________________________________________________
129
+     __________________________________________________________
131 130
 
132 131
 1.3. AVP naming format
133 132
 
... ...
@@ -142,9 +141,9 @@ Chapter 1. User's Guide
142 141
        The type flag is mandatory.
143 142
        script_flags must be an 8 bit unsigned number, therefore
144 143
        can be set up to 8 flags. If no script flag is provided,
145
-       the name will match all AVPs, regardless they have or not
146
-       a script flag set (preserves the compatibility with the
147
-       old naming schema).
144
+       the name will match all AVPs, regardless they have or not a
145
+       script flag set (preserves the compatibility with the old
146
+       naming schema).
148 147
      * avp_name = string | integer
149 148
        string - might be any alphanumeric string, wich contain
150 149
        following characters: [a-z] [A-Z] [0-9] '_'
... ...
@@ -159,11 +158,11 @@ Chapter 1. User's Guide
159 158
 $avp(i:11) - the AVP identified by integer 11
160 159
 $avp(s:foo) - the AVP identified by the string 'foo'
161 160
 $avp(bar) - the AVP identified by the AVP alias 'bar'
162
-$avp(i3:123) - the AVP identified by the integer 123 which has script f
163
-lags 1
161
+$avp(i3:123) - the AVP identified by the integer 123 which has script fl
162
+ags 1
164 163
     and 2 set
165 164
 ...
166
-     _________________________________________________________
165
+     __________________________________________________________
167 166
 
168 167
 1.4. Exported Parameters
169 168
 
... ...
@@ -171,30 +170,30 @@ lags 1
171 170
 
172 171
    DB URL for database connection.
173 172
 
174
-   This parameter is optional, it's default value being NULL. 
173
+   This parameter is optional, it's default value being NULL.
175 174
 
176 175
    Example 1-2. Set avp_url parameter
177 176
 ...
178 177
 modparam("avpops","avp_url","mysql://user:passwd@host/database")
179 178
 ...
180
-     _________________________________________________________
179
+     __________________________________________________________
181 180
 
182 181
 1.4.2. db_url (string)
183 182
 
184 183
    This parameter has the same meaning as "avp_url" parameter.
185
-     _________________________________________________________
184
+     __________________________________________________________
186 185
 
187 186
 1.4.3. avp_table (string)
188 187
 
189 188
    DB table to be used.
190 189
 
191
-   This parameter is optional, it's default value being NULL. 
190
+   This parameter is optional, it's default value being NULL.
192 191
 
193 192
    Example 1-3. Set avp_table parameter
194 193
 ...
195 194
 modparam("avpops","avp_table","avptable")
196 195
 ...
197
-     _________________________________________________________
196
+     __________________________________________________________
198 197
 
199 198
 1.4.4. avp_aliases (string) - removed
200 199
 
... ...
@@ -206,101 +205,101 @@ modparam("avpops","avp_table","avptable")
206 205
 ...
207 206
 avp_aliases="uuid=I:660;email=s:email_addr;fwd=i:753"
208 207
 ...
209
-     _________________________________________________________
208
+     __________________________________________________________
210 209
 
211 210
 1.4.5. use_domain (integer)
212 211
 
213
-   If the domain part of the an URI should be used for
214
-   identifying an AVP in DB operations.
212
+   If the domain part of the an URI should be used for identifying
213
+   an AVP in DB operations.
215 214
 
216
-   Default value is 0 (no). 
215
+   Default value is 0 (no).