16
16
If the dialog module is loaded and a dialog can be created,
17
17
then the auto mode can be done more efficiently.
18
18
</para >
19
- <para >
20
- Known limitations in this version:
21
- </para >
22
- <itemizedlist >
23
- <listitem >
24
- <para >
25
- authentication does not support qop auth-int, just qop auth;
26
- </para >
27
- </listitem >
28
- <listitem >
29
- <para >
30
- CSeq not increased during authentication - the response
31
- may be rejected.
32
- </para >
33
- </listitem >
34
- </itemizedlist >
35
19
</section >
36
20
37
21
<section id =" dependencies" xreflabel =" Dependencies" >
@@ -290,7 +274,7 @@ uac_restore_from();
290
274
</example >
291
275
</section >
292
276
293
- <section id =" func_uac_auth" xreflabel =" uac_auth()" >
277
+ <section id =" func_uac_auth" xreflabel =" uac_auth([algs] )" >
294
278
<title >
295
279
<function moreinfo =" none" >uac_auth()</function >
296
280
</title >
@@ -303,13 +287,45 @@ uac_restore_from();
303
287
or via AVPs).
304
288
</para >
305
289
<para >
290
+ As optional parameter, the function may receive a list of auth
291
+ algorithms to be considered / supported during authentication:
292
+ </para >
293
+ <itemizedlist >
294
+ <listitem >
295
+ <para >MD5, MD5-sess</para >
296
+ </listitem >
297
+ <listitem >
298
+ <para >SHA-256, SHA-256-sess (may be missing, depends on lib support)</para >
299
+ </listitem >
300
+ <listitem >
301
+ <para >SHA-512-256, SHA-512-256-sess (may be missing, depends on lib support)</para >
302
+ </listitem >
303
+ </itemizedlist >
304
+ <para >
305
+ Note that the CSeq is automatically increased during authentication.
306
+ </para >
307
+ <para >
306
308
This function can be used from FAILURE_ROUTE.
307
309
</para >
308
310
<example >
309
311
<title ><function >uac_auth</function > usage</title >
310
312
<programlisting format =" linespecific" >
311
313
...
312
314
uac_auth();
315
+ ...
316
+ failure_route[check_auth] {
317
+ ...
318
+ if ($T_reply_code==407) {
319
+ if (uac_auth("MD5,MD5-sess")) {
320
+ # auth is succesful, just relay
321
+ t_relay();
322
+ exit;
323
+ }
324
+ # auth failed (no credentials maybe)
325
+ # so continue handling the 407 reply
326
+ }
327
+ ...
328
+ }
313
329
...
314
330
</programlisting >
315
331
</example >
0 commit comments