[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
Thu Jul 12 09:00:49 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: Core/General
Reproducibility: always
Severity: minor
Priority: normal
Status: feedback
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: 07-12-2007 09:00 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
======================================================================
----------------------------------------------------------------------
mackey - 07-12-07 09:00
----------------------------------------------------------------------
How about only chopping if the channel starts with "SIP/" ?
Issue History
Date Modified Username Field Change
======================================================================
07-12-07 09:00 mackey Note Added: 0067301
======================================================================
More information about the Asterisk-bugs
mailing list