[asterisk-bugs] [Asterisk 0016826]: Endianess problems in skinny messages

Asterisk Bug Tracker noreply at bugs.digium.com
Wed Feb 17 17:01:43 CST 2010


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=16826 
====================================================================== 
Reported By:                PipoCanaja
Assigned To:                mvanbaak
====================================================================== 
Project:                    Asterisk
Issue ID:                   16826
Category:                   Channels/chan_skinny
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     assigned
Asterisk Version:           SVN 
JIRA:                        
Regression:                 No 
Reviewboard Link:            
SVN Branch (only for SVN checkouts, not tarball releases): 1.6.2 
SVN Revision (number only!): 246625 
Request Review:              
====================================================================== 
Date Submitted:             2010-02-14 17:19 CST
Last Modified:              2010-02-17 17:01 CST
====================================================================== 
Summary:                    Endianess problems in skinny messages
Description: 
I'm using a sun machine as my asterisk server:
Linux sunsrv 2.6.18-gre https://issues.asterisk.org/view.php?id=3 SMP Wed Sep 24
22:12:02 CEST 2008 sparc64
GNU/Linux

I faced some endianess problems in the skinny exchanges with my 2 phones
(Cisco 7920 and Cisco 7912). 

In default code, the phone would not even register completely.

I compared the wireshark trace of the same SVN version (Revision: 246625)
on an intel machine and this sun, and based on this, I patched my
chan_skinny.c to improve it.
Basically, it means: removing (most of the time) or adding byteswapping.
On intel platform, no swapping is needed (the phone expects LittleEndian)
so the functions are returning the same value they are called with. So if
not tested with a Big Endian machine, it's easy to call those byteswapp
functions more than needed. 

Basically, I'm now able to register, and to do the echo test. It needs
some more testing but I'm now opening the bug report so that if somebody
else is facing that issue/working at it, we can share and test patches.
====================================================================== 

---------------------------------------------------------------------- 
 (0118195) mvanbaak (manager) - 2010-02-17 17:01
 https://issues.asterisk.org/view.php?id=16826#c118195 
---------------------------------------------------------------------- 
On an unpatched system I have occasional crashes with call transfers as
well.
The stub rewrite done by wedhorn fixes most of those, so dont worry about
them at the moment (unless you have a fix right now)

The tests you did (register, make call, receive call) are enough for the
moment.

We cannot accept patches in the Additional info. You have to upload them
as patch to this bug. This is because of the license and all.
Please sign the license if you did not do already and upload the patch to
this bug. That way I can look at it, test it, and commit it.

Thanks again for the work and time you spent on this! 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2010-02-17 17:01 mvanbaak       Note Added: 0118195                          
======================================================================




More information about the asterisk-bugs mailing list