ISDN Software Reference for Linux and Windows
394
The next scenario covers the following simultaneous disconnect conditions:
• cc_DropCall( ) arrives after Release command is sent - the network
disconnects first while cc_DropCall( ) arrives at the firmware after a Release
command is sent to the network.
• Glare happens on the wire - the firmware sees the cc_DropCall( ) function
call first.
Asynchronous Programming
Application Device Driver State Firmware Network
CONNECTED
CCEV_DISCONNECTE
D
<--
DISCONNECTED CALL_DISC
<--
Disconnec
t
<--
Release
-->
Rel_Comp
<--
cc_DropCall( )
-->
Call_Disconnecte
d (cause value
=0)
-->
IDLE
CCEV_DROPCALL
<--
CALL_CLEARED
<--
ISDN_Block_Ts
(sync model
only)
Incoming call
blocked
cc_ReleaseCall
()
-->
Call_Dealloc
-->
Driver releases
CRN
Return
<--
NULL F/W releases CRN
CALL_DEALLOC_ACK
<--
Initiation of Hold and Retrieve (BRI and PRI DPNSS/Q.SIG
Protocols Only)