[asterisk-bugs] [JIRA] (ASTERISK-26481) Major issues with FILE and LEN functions
Jonathan Harris (JIRA)
noreply at issues.asterisk.org
Tue Oct 18 07:14:01 CDT 2016
[ https://issues.asterisk.org/jira/browse/ASTERISK-26481?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jonathan Harris updated ASTERISK-26481:
---------------------------------------
Description:
Something appears wrong (by the way, Component with id 'functions/func_len' does not exist)
This bit of dialplan (edited to replace code with links as this trackers messes up code)
https://gist.githubusercontent.com/lardconcepts/2b6eb371748c4bb2202082a44e5be871/raw/f67b202223cb2ae3b539259b7e047c60cb0c2543/test-dp
...produces this output: (tidied only for posting) - this is messed up in so many ways.
https://gist.githubusercontent.com/lardconcepts/9a8c0b601bccde18f857eb6fe09b73ed/raw/139579ac70034178f7a0a7e9eeb84d33bba462a9/dp-output
LEN is showing the wrong length.
1 character gets a weird character added.
23, and 4 characters OK
5 characters loses a character - BUT LOOK! Even though hexdump prints the correct contents and length, have a close look at this: 35|12345| whereas normally it would have a space before the pipe.
6 characters is OK
was:
Something appears wrong (by the way, Component with id 'functions/func_len' does not exist)
This bit of dialplan.....
exten => 5,1,Verbose(Context: ${CONTEXT} Exten:${EXTEN})
same => n,Set(featurefile=/home/test/feature-1.txt)
same => n,set(myList=1,12,123,1234,12345,123456,A,AB,ABC,ABCD,ABCDE,ABC123)
same => n,While($["${SET(rawVar=${SHIFT(myList)})}" != ""])
same => n,SET(FILE(${featurefile})=${rawVar})
same => n,SET(fileVar=${FILE(${featurefile},0,1,l,u)})
same => n,SET(hexDump=${SHELL(hd ${featurefile})})
same => n,Verbose(Before file: ---${rawVar}--- len ${LEN(rawVar)} after file: ---${fileVar}--- len ${LEN(fileVar)} hexdump:${hexDump})
same => n,EndWhile()
same => n,Hangup()
...produces this output: (tidied only for posting) - this is messed up in so many ways.
LEN is showing the wrong length.
1 character gets a weird character added.
23, and 4 characters OK
5 characters loses a character - BUT LOOK! Even though hexdump prints the correct contents and length, have a close look at this: 35|12345| whereas normally it would have a space before the pipe.
6 characters is OK
Before file: ---1--- len 6 after file: ---1▒--- len 7 hexdump:00000000 31|1| 00000001
Before file: ---12--- len 6 after file: ---12--- len 7 hexdump:00000000 31 32 |12| 00000002
Before file: ---123--- len 6 after file: ---123--- len 7 hexdump:00000000 31 32 33 |123| 00000003
[Oct 18 12:23:53] ERROR[8584][C-0000001a]: json.c:704 ast_json_vpack: Error building JSON from '{s: s, s: s}': Invalid UTF-8 string.
[Oct 18 12:23:53] ERROR[8584][C-0000001a]: stasis_channels.c:773 ast_channel_publish_varset: Error creating message
Before file: ---1234--- len 6 after file: ---1234--- len 7 hexdump:00000000 31 32 33 34 |1234| 00000004
Before file: ---12345--- len 6 after file: ---1234--- len 7 hexdump:00000000 31 32 33 34 35|12345| 00000005
Before file: ---123456--- len 6 after file: ---123456--- len 7 hexdump:00000000 31 32 33 34 35 36 |123456| 00000006
[Oct 18 12:23:53] ERROR[8584][C-0000001a]: json.c:704 ast_json_vpack: Error building JSON from '{s: s, s: s}': Invalid UTF-8 string.
[Oct 18 12:23:53] ERROR[8584][C-0000001a]: stasis_channels.c:773 ast_channel_publish_varset: Error creating message
Before file: ---A--- len 6 after file: ---A▒--- len 7 hexdump:00000000 41|A| 00000001
Before file: ---AB--- len 6 after file: ---AB--- len 7 hexdump:00000000 41 42 |AB| 00000002
Before file: ---ABC--- len 6 after file: ---ABC--- len 7 hexdump:00000000 41 42 43 |ABC| 00000003
[Oct 18 12:23:53] ERROR[8584][C-0000001a]: json.c:704 ast_json_vpack: Error building JSON from '{s: s, s: s}': Invalid UTF-8 string.
[Oct 18 12:23:53] ERROR[8584][C-0000001a]: stasis_channels.c:773 ast_channel_publish_varset: Error creating message
Before file: ---ABCD--- len 6 after file: ---ABCD--- len 7 hexdump:00000000 41 42 43 44 |ABCD| 00000004
Before file: ---ABCDE--- len 6 after file: ---ABCD--- len 7 hexdump:00000000 41 42 43 44 45|ABCDE| 00000005
Before file: ---ABC123--- len 6 after file: ---ABC123--- len 7 hexdump:00000000 41 42 43 31 32 33 |ABC123|
> Major issues with FILE and LEN functions
> ----------------------------------------
>
> Key: ASTERISK-26481
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-26481
> Project: Asterisk
> Issue Type: Bug
> Security Level: None
> Components: Functions/func_cut
> Affects Versions: 14.0.1
> Environment: Linux 4.4.0-38-generic #57-Ubuntu SMP Tue Sep 6 15:42:33 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
> Reporter: Jonathan Harris
> Severity: Critical
>
> Something appears wrong (by the way, Component with id 'functions/func_len' does not exist)
> This bit of dialplan (edited to replace code with links as this trackers messes up code)
> https://gist.githubusercontent.com/lardconcepts/2b6eb371748c4bb2202082a44e5be871/raw/f67b202223cb2ae3b539259b7e047c60cb0c2543/test-dp
> ...produces this output: (tidied only for posting) - this is messed up in so many ways.
> https://gist.githubusercontent.com/lardconcepts/9a8c0b601bccde18f857eb6fe09b73ed/raw/139579ac70034178f7a0a7e9eeb84d33bba462a9/dp-output
> LEN is showing the wrong length.
> 1 character gets a weird character added.
> 23, and 4 characters OK
> 5 characters loses a character - BUT LOOK! Even though hexdump prints the correct contents and length, have a close look at this: 35|12345| whereas normally it would have a space before the pipe.
> 6 characters is OK
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list