[asterisk-bugs] [Asterisk 0013786]: [patch] DAHDI_CHECK_HOOKSTATE automatically defined when chan_dahdi is built with zaptel support

Asterisk Bug Tracker noreply at bugs.digium.com
Mon Nov 17 19:27:42 CST 2008


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=13786 
====================================================================== 
Reported By:                tzafrir
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   13786
Category:                   Channels/chan_dahdi
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     new
Asterisk Version:           SVN 
SVN Branch (only for SVN checkouts, not tarball releases):  1.4  
SVN Revision (number only!): 151905 
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             2008-10-26 06:15 CDT
Last Modified:              2008-11-17 19:27 CST
====================================================================== 
Summary:                    [patch] DAHDI_CHECK_HOOKSTATE automatically defined
when chan_dahdi is built with zaptel support
Description: 
chan_dahdi.c has the following compile time option:

/*! \note
 * Define if you want to check the hook state for an FXO (FXS signalled)
interface
 * before dialing on it.  Certain FXO interfaces always think they're out
of
 * service with this method however.
 */
/* #define DAHDI_CHECK_HOOKSTATE */

Sadly, DAHDI_CHECK_HOOKSTATE is defined unconditionally in
include/asterisk/dahdi_compat.h in case you built it with zaptel support:

#define DAHDI_CHECK_HOOKSTATE ZT_CHECK_HOOKSTATE

Thus it should be made conditioned on the definition of
ZT_CHECK_HOOKSTATE, just in case someone had it in a build script.

At first glance it seems that the same applies to:

#ifdef DAHDI_EVENT_EC_DISABLED
#ifdef DAHDI_EVENT_RINGBEGIN
#ifdef DAHDI_GETCONFMUTE
#ifdef DAHDI_PRI
#ifdef DAHDI_TONEDETECT

====================================================================== 

---------------------------------------------------------------------- 
 (0094965) xrobau (reporter) - 2008-11-17 19:27
 http://bugs.digium.com/view.php?id=13786#c94965 
---------------------------------------------------------------------- 
Yup, changing to Loop Start fixes that problem, and ALSO fixes the 'Hook
State' being incorrect.. when you're using KS, HookState 'onhook' means 'I
am broken' and HookState 'Offhook' means 'I am working'. When using LS,
it's stuck on 'Onhook' even if it's offhook:

localhost*CLI> show channels
Channel              Location             State   Application(Data)
SIP/111-0915e150     (None)               Up      AppDial((Outgoing
Line))
SIP/118-0915c9e8     s at macro-dial:7       Up      Dial(SIP/111||tr)
Zap/1-1              (None)               Up      AppDial((Outgoing
Line))

zap show channel 1:
[...]
Actual Confinfo: Num/0, Mode/0x0000
Actual Confmute: No
Hookstate (FXS only): Onhook 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2008-11-17 19:27 xrobau         Note Added: 0094965                          
======================================================================




More information about the asterisk-bugs mailing list