[asterisk-bugs] [Asterisk 0009668]: devicestate.c:__ast_device_state_changed_literal can't cope with iax (and sip?) peer names containing "-"
noreply at bugs.digium.com
noreply at bugs.digium.com
Fri Sep 7 11:38:28 CDT 2007
A NOTE has been added to this issue.
======================================================================
http://bugs.digium.com/view.php?id=9668
======================================================================
Reported By: stevedavies
Assigned To: file
======================================================================
Project: Asterisk
Issue ID: 9668
Category: Addons/General
Reproducibility: always
Severity: minor
Priority: normal
Status: confirmed
Asterisk Version: SVN
SVN Branch (only for SVN checkouts, not tarball releases): trunk
SVN Revision (number only!): 62263
Disclaimer on File?: Yes
Request Review:
======================================================================
Date Submitted: 05-04-2007 14:31 CDT
Last Modified: 09-07-2007 11:38 CDT
======================================================================
Summary: devicestate.c:__ast_device_state_changed_literal
can't cope with iax (and sip?) peer names containing "-"
Description:
__ast_device_state_changed_lieral does this:
device = buf;
if ((tmp = strrchr(device, '-')))
*tmp = '\0';
With this result in my environment:
[May 2 09:19:12] DEBUG[11129] devicestate.c: Notification of state change
to be queued on device/channel IAX2/swenitech-2
[May 2 09:19:12] DEBUG[11129] devicestate.c: No provider found, checking
channel drivers for IAX2 - swenitech
[May 2 09:19:12] DEBUG[11129] chan_iax2.c: Checking device state for
device swenitech
[May 2 09:19:12] DEBUG[11129] devicestate.c: Changing state for
IAX2/swenitech - state 4 (Invalid)
[May 2 09:19:14] DEBUG[11129] devicestate.c: Notification of state change
to be queued on device/channel IAX2/swenitech-1
[May 2 09:19:14] DEBUG[11129] devicestate.c: No provider found, checking
channel drivers for IAX2 - swenitech
[May 2 09:19:14] DEBUG[11129] chan_iax2.c: Checking device state for
device swenitech
[May 2 09:19:14] DEBUG[11129] devicestate.c: Changing state for
IAX2/swenitech - state 4 (Invalid)
[May 2 09:19:15] DEBUG[11129] devicestate.c: Notification of state change
to be queued on device/channel IAX2/vpntech-1
[May 2 09:19:15] DEBUG[11129] devicestate.c: No provider found, checking
channel drivers for IAX2 - vpntech
[May 2 09:19:15] DEBUG[11129] chan_iax2.c: Checking device state for
device vpntech
[May 2 09:19:15] DEBUG[11129] devicestate.c: Changing state for
IAX2/vpntech - state 4 (Invalid)
etc etc.
I guess that truncating at the last "-' is to do with cleaning up things
like Zap/1-1 and similar.
But the result breaks devicestate for any iax2 or sip peer with a dash in
the name.
Perhaps it would be possible to queue the devicestate for both the
complete and the truncated version in order to deal with this issue?
Steve
======================================================================
Relationships ID Summary
----------------------------------------------------------------------
related to 0009782 hints don't work
======================================================================
----------------------------------------------------------------------
jamesgolovich - 09-07-07 11:38
----------------------------------------------------------------------
I haven't looked deep into the code yet for this, I might have some time
this afternoon.
I don't believe that we would have to be sending an encoded version over
to a remote host, since we would be using either the IP address or an
unencoded hostname.
ast_gethostbyname would be modified to do the decoding, so the query would
be for the undecoded name.
I may just be totally off here since I haven't looked at the code. If I
get a chance today I'll see if what I'm proposing is even possible or
reasonable, if not today then I'll have a chance over the weekend.
Issue History
Date Modified Username Field Change
======================================================================
09-07-07 11:38 jamesgolovich Note Added: 0070114
======================================================================
More information about the asterisk-bugs
mailing list