[asterisk-bugs] [Asterisk 0013249]: AEL does not translate quoted strings correctly in 1.6

Asterisk Bug Tracker noreply at bugs.digium.com
Sun Aug 24 10:32:05 CDT 2008


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=13249 
====================================================================== 
Reported By:                dimas
Assigned To:                murf
====================================================================== 
Project:                    Asterisk
Issue ID:                   13249
Category:                   Core/PBX
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     acknowledged
Asterisk Version:           1.6.0-beta9 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             2008-08-06 09:48 CDT
Last Modified:              2008-08-24 10:32 CDT
====================================================================== 
Summary:                    AEL does not translate quoted strings correctly in
1.6
Description: 
I used to use constructs like 

    a = "test here";

in the Asterisk AEL scripts. These were working fine in 1.4 (translating
to)

    Set(a=$[ "test here"])

This does not work for 1.6 anymore although translates to exactly the same
dialplan. After executing this line the value of a variable on 1.6 contains
quotes.

This results in:
1. The following construct:

    b = "${a}";
does not work at all giving parse error [Aug  6 18:01:24] WARNING[29514]:
ast_expr2.fl:437 ast_yyerror: ast_yyerror():  syntax error: syntax error,
unexpected '<token>', expecting $end; Input:

2. when the variable being assigned is CALLERID(number) - this results in
sending 

    From: ""test here"" <sip:xxxxxxxxxxx at 1.2.3.4>;tag=as1539ede1

in the SIP INVITE header. Note the double quotes. As result, the Aastra
57i phone rejects the invite with 400 Bad Request.
====================================================================== 

---------------------------------------------------------------------- 
 (0091678) Corydon76 (administrator) - 2008-08-24 10:32
 http://bugs.digium.com/view.php?id=13249#c91678 
---------------------------------------------------------------------- 
I think the correct response would be to remove quotes when translating
into loaded dialplan, as, while they may be necessary in AEL, they are
unnecessary after being translated to extensions.conf.  If literal quotes
are needed, they should be escaped, i.e. CALLERID(all) = "\"foo bar\"
<baz>"; should translate to Set(CALLERID(all)="foo bar" <baz>). 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2008-08-24 10:32 Corydon76      Note Added: 0091678                          
======================================================================




More information about the asterisk-bugs mailing list