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

Asterisk Bug Tracker noreply at bugs.digium.com
Tue Aug 19 09:20:42 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-19 09:20 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.
====================================================================== 

---------------------------------------------------------------------- 
 (0091549) murf (administrator) - 2008-08-19 09:20
 http://bugs.digium.com/view.php?id=13249#c91549 
---------------------------------------------------------------------- 
Tilghman--

I'm having trouble with AEL in 1.6.x and trunk, because the underlying
behavior has changed, and the automatic stripping of quoted strings is no
longer taking place because the AST_NONSTANDARD_APP_ARGS() macro is not
being used to split up
the args. 

Hmmm. It occurs to me that one solution to this problem is to 
use MSet instead in the generated code of AEL, to preserve the previous
behavior. This would lock in AEL, though, to forever
use the old behavior. The app_set stuff in asterisk.conf is the alternate,
but it's surprising upgrading users who fresh install asterisk 1.6.x and
get the 1.6 behavior.

 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2008-08-19 09:20 murf           Note Added: 0091549                          
======================================================================




More information about the asterisk-bugs mailing list