Q931call.c File Reference

#include <assert.h>
#include "Q931.h"
#include "memory.h"

Go to the source code of this file.

Data Structures

struct  Q931CallStateName
struct  Q931CallEventName
struct  Q931CallTimerName

Defines

#define Q931PRIVATE

Functions

void Q931CallSetState (struct Q931_Call *call, const L3INT state)
L3INT Q931CallGetState (const struct Q931_Call *call)
struct Q931_CallQ931CallNew (Q931_TrunkInfo_t *trunk)
 Request new outgoing call handle & crv.
struct Q931_CallQ931CallNewIncoming (Q931_TrunkInfo_t *trunk, const L3INT crv)
L3INT Q931CallRelease (struct Q931_Call *call)
 Release call handle and CRV.
void Q931CallSetPrivate (struct Q931_Call *call, const void *priv)
void * Q931CallGetPrivate (const struct Q931_Call *call)
Q931_TrunkInfo_tQ931CallGetTrunk (const struct Q931_Call *call)
L3INT Q931CallGetCRV (const struct Q931_Call *call)
L3INT Q931CallGetDirection (const struct Q931_Call *call)
L3BOOL Q931CallIsOutgoing (const struct Q931_Call *call)
const char * Q931CallGetStateName (const struct Q931_Call *call)
const char * Q931CallGetEventName (const L3INT event)
const char * Q931CallGetTimerName (const L3USHORT timer)
struct Q931_CallQ931GetCallByCRV (const Q931_TrunkInfo_t *trunk, const L3INT crv)
struct Q931_CallQ931GetCallByIndex (const Q931_TrunkInfo_t *trunk, const L3INT idx)
struct Q931_CallQ931GetGlobalCall (const Q931_TrunkInfo_t *trunk)
L3BOOL Q931CallIsGlobal (const struct Q931_Call *call)
void Q931CallDump (const struct Q931_Call *call)
 Dump call details to log.
void Q931CallStartTimer (struct Q931_Call *call, L3USHORT timer)
 Start a call timer.
void Q931CallRestartTimer (struct Q931_Call *call, L3USHORT timer)
 Restart a call timer.
void Q931CallStopTimer (struct Q931_Call *call, L3USHORT timer)
 Stop a call timer.
void Q931CallStopAllTimers (struct Q931_Call *call)
 Stop all call timers.
L3USHORT Q931CallGetTimerID (const struct Q931_Call *call)
 Return ID of the currently active timer.
L3UCHAR Q931CallGetTimerExpireCount (const struct Q931_Call *call)
 Return number of times the current timer has expired.
void Q931CallIncrementTimerExpireCount (struct Q931_Call *call)
 Increment expire counter for current timer.
void Q931SetCallEventCB (Q931_TrunkInfo_t *trunk, const Q931CallEventCB_t cb, const void *priv)
 Set call event callback and (optional) private data.
void Q931CallSendEvent (const struct Q931_Call *call, const struct Q931_CallEvent *event)
 Send call event to Layer 4.
void Q931CallInitEvent (struct Q931_CallEvent *event)
 Initialize call event.
struct Q931_CallEventQ931CallNewEvent (struct Q931_Call *call)
 Get new free event slot from call handle.
void Q931CallQueueEvent (struct Q931_Call *call, struct Q931_CallEvent *event)
 "Enqueue" call event
void Q931CallFlushEvents (struct Q931_Call *call)
 Clear list of queued events.
void Q931CallSendQueuedEvents (struct Q931_Call *call)
 Send queued call events to layer 4.
L3INT Q931CallEventGetType (const struct Q931_CallEvent *event)
 Get event type.
L3INT Q931CallEventGetId (const struct Q931_CallEvent *event)
 Get event id.
void * Q931CallEventGetData (const struct Q931_CallEvent *event)
 Get pointer to event data.

Variables

struct Q931CallStateName Q931CallStateNames []
struct Q931CallEventName Q931CallEventNames []
struct Q931CallTimerName Q931CallTimerNames []


Define Documentation

#define Q931PRIVATE

Definition at line 41 of file Q931call.c.


Function Documentation

void Q931CallDump ( const struct Q931_Call call  ) 

Dump call details to log.

Q931CallDump

Note:
For debugging purposes
Parameters:
[in] call Call to dump

Definition at line 457 of file Q931call.c.

References Q931_Call::CRV, Q931_Call::Direction, Q931_Call::InUse, Q931_LOG_DEBUG, Q931CallGetState(), Q931CallGetStateName(), Q931CallGetTimerName(), Q931CallGetTrunk(), Q931Log(), and Q931_Call::TimerID.

void* Q931CallEventGetData ( const struct Q931_CallEvent event  ) 

Get pointer to event data.

Note:
You'll have to do the right casting yourself

Definition at line 718 of file Q931call.c.

References Q931_EVENT_TYPE_MESSAGE, Q931_EVENT_TYPE_TIMER, and Q931_CallEvent::type.

L3INT Q931CallEventGetId ( const struct Q931_CallEvent event  ) 

Get event id.

Definition at line 709 of file Q931call.c.

L3INT Q931CallEventGetType ( const struct Q931_CallEvent event  ) 

Get event type.

Definition at line 701 of file Q931call.c.

void Q931CallFlushEvents ( struct Q931_Call call  ) 

Clear list of queued events.

Definition at line 674 of file Q931call.c.

References Q931_Call::events, Q931_Call::numevents, and Q931_CALL_MAX_EVENTS.

Referenced by Q931CallSendQueuedEvents().

L3INT Q931CallGetCRV ( const struct Q931_Call call  ) 

Definition at line 214 of file Q931call.c.

References Q931_Call::CRV.

Referenced by Q931CallRestartTimer(), Q931CallSendEvent(), Q931CallStartTimer(), Q931CallStopAllTimers(), Q931CallStopTimer(), Q931ProcSetupNT(), Q931ProcSetupTE(), Q931ProcStatusTE(), Q931ProcTimeoutT304TE(), Q931ProcTimeoutT305TE(), Q931ProcTimeoutT308TE(), Q931ProcTimeoutT310TE(), Q931ProcTimeoutT313TE(), Q931ProcTimeoutT318TE(), Q931Release(), Q931ReleaseComplete(), Q931Rx23(), Q931Rx43(), Q931StatusEnquiryResponse(), and Q931TimerTick().

L3INT Q931CallGetDirection ( const struct Q931_Call call  ) 

Definition at line 221 of file Q931call.c.

References Q931_Call::Direction.

Referenced by Q931Release(), Q931ReleaseComplete(), and Q931StatusEnquiryResponse().

const char* Q931CallGetEventName ( const L3INT  event  ) 

Definition at line 343 of file Q931call.c.

References Q931CallEventName::id, Q931CallEventName::name, and Q931CallEventNames.

void* Q931CallGetPrivate ( const struct Q931_Call call  ) 

Definition at line 199 of file Q931call.c.

References Q931_Call::pvt.

L3INT Q931CallGetState ( const struct Q931_Call call  ) 

Definition at line 61 of file Q931call.c.

References Q931_Call::State.

Referenced by Q931CallDump(), Q931CallGetStateName(), Q931CallRelease(), Q931CallSendStatus(), Q931ProcAlertingNT(), Q931ProcAlertingTE(), Q931ProcCallProceedingNT(), Q931ProcCallProceedingTE(), Q931ProcCongestionControlNT(), Q931ProcCongestionControlTE(), Q931ProcConnectAckNT(), Q931ProcConnectAckTE(), Q931ProcConnectNT(), Q931ProcConnectTE(), Q931ProcDisconnectNT(), Q931ProcDisconnectTE(), Q931ProcInformationNT(), Q931ProcInformationTE(), Q931ProcNotifyNT(), Q931ProcNotifyTE(), Q931ProcProgressNT(), Q931ProcProgressTE(), Q931ProcReleaseCompleteNT(), Q931ProcReleaseCompleteTE(), Q931ProcReleaseNT(), Q931ProcReleaseTE(), Q931ProcRestartAckNT(), Q931ProcRestartAckTE(), Q931ProcRestartNT(), Q931ProcRestartTE(), Q931ProcResumeAckNT(), Q931ProcResumeAckTE(), Q931ProcResumeRejectNT(), Q931ProcResumeRejectTE(), Q931ProcSegmentNT(), Q931ProcSegmentTE(), Q931ProcSetupAckNT(), Q931ProcSetupAckTE(), Q931ProcSetupNT(), Q931ProcSetupTE(), Q931ProcStatusEnquiryNT(), Q931ProcStatusEnquiryTE(), Q931ProcStatusNT(), Q931ProcStatusTE(), Q931ProcSuspendAckNT(), Q931ProcSuspendAckTE(), Q931ProcSuspendNT(), Q931ProcSuspendRejectNT(), Q931ProcSuspendRejectTE(), Q931ProcSuspendTE(), Q931ProcTimeoutT301NT(), Q931ProcTimeoutT301TE(), Q931ProcTimeoutT302NT(), Q931ProcTimeoutT302TE(), Q931ProcTimeoutT303NT(), Q931ProcTimeoutT303TE(), Q931ProcTimeoutT304NT(), Q931ProcTimeoutT304TE(), Q931ProcTimeoutT305NT(), Q931ProcTimeoutT305TE(), Q931ProcTimeoutT306NT(), Q931ProcTimeoutT307NT(), Q931ProcTimeoutT308NT(), Q931ProcTimeoutT308TE(), Q931ProcTimeoutT310NT(), Q931ProcTimeoutT310TE(), Q931ProcTimeoutT313TE(), Q931ProcTimeoutT318TE(), Q931ProcTimeoutT319TE(), Q931ProcUserInformationNT(), Q931ProcUserInformationTE(), Q931Rx23(), Q931Rx43(), Q931StatusEnquiryResponse(), Q931TimerTick(), Q932ProcFacilityNT(), Q932ProcFacilityTE(), Q932ProcHoldAckNT(), Q932ProcHoldAckTE(), Q932ProcHoldNT(), Q932ProcHoldRejectNT(), Q932ProcHoldRejectTE(), Q932ProcHoldTE(), Q932ProcRegisterNT(), Q932ProcRegisterTE(), Q932ProcRetrieveAckNT(), Q932ProcRetrieveAckTE(), Q932ProcRetrieveNT(), Q932ProcRetrieveRejectNT(), Q932ProcRetrieveRejectTE(), and Q932ProcRetrieveTE().

const char* Q931CallGetStateName ( const struct Q931_Call call  ) 

Definition at line 283 of file Q931call.c.

References Q931CallStateName::id, L3INT, Q931CallStateName::name, Q931CallGetState(), and Q931CallStateNames.

Referenced by Q931CallDump(), Q931ProcAlertingNT(), Q931ProcCallProceedingNT(), Q931ProcConnectAckNT(), Q931ProcConnectNT(), Q931ProcProgressNT(), Q931ProcResumeAckNT(), Q931ProcResumeRejectNT(), Q931ProcSetupAckNT(), Q931ProcSetupNT(), Q931ProcSuspendAckNT(), Q931ProcSuspendNT(), Q931ProcSuspendRejectNT(), Q931ProcTimeoutT301NT(), Q931ProcTimeoutT301TE(), Q931ProcTimeoutT302NT(), Q931ProcTimeoutT302TE(), Q931ProcTimeoutT303NT(), Q931ProcTimeoutT303TE(), Q931ProcTimeoutT304NT(), Q931ProcTimeoutT304TE(), Q931ProcTimeoutT305NT(), Q931ProcTimeoutT305TE(), Q931ProcTimeoutT306NT(), Q931ProcTimeoutT307NT(), Q931ProcTimeoutT308NT(), Q931ProcTimeoutT308TE(), Q931ProcTimeoutT310NT(), Q931ProcTimeoutT310TE(), Q931ProcTimeoutT313TE(), Q931ProcTimeoutT318TE(), Q931ProcTimeoutT319TE(), and Q931Rx23().

L3UCHAR Q931CallGetTimerExpireCount ( const struct Q931_Call call  ) 

Return number of times the current timer has expired.

Q931CallGetTimerExpireCount

Parameters:
call Q.931 call
Returns:
counter value
Note:
Only used by the timer callbacks to fetch the counter value (Q931CallStartTimer resets the counter)

Definition at line 577 of file Q931call.c.

References Q931_Call::TimerCnt.

Referenced by Q931ProcTimeoutT303NT(), Q931ProcTimeoutT303TE(), Q931ProcTimeoutT308NT(), Q931ProcTimeoutT308TE(), and Q931ProcTimeoutT316TE().

L3USHORT Q931CallGetTimerID ( const struct Q931_Call call  ) 

Return ID of the currently active timer.

Q931CallGetTimerID

Parameters:
call Q.931 call
Returns:
ID of the active timer or Q931_TIMER_NONE if no timer is active

Definition at line 564 of file Q931call.c.

References Q931_Call::TimerID.

const char* Q931CallGetTimerName ( const L3USHORT  timer  ) 

Definition at line 389 of file Q931call.c.

References Q931CallTimerName::id, Q931CallTimerName::name, and Q931CallTimerNames.

Referenced by Q931CallDump().

Q931_TrunkInfo_t* Q931CallGetTrunk ( const struct Q931_Call call  ) 

Definition at line 206 of file Q931call.c.

References Q931_Call::Trunk.

Referenced by Q931AckConnect(), Q931CallDump(), Q931CallRestartTimer(), Q931CallSendEvent(), Q931CallSendStatus(), Q931CallSetState(), Q931CallStartTimer(), Q931CallStopAllTimers(), Q931CallStopTimer(), and Q931Send().

void Q931CallIncrementTimerExpireCount ( struct Q931_Call call  ) 

Increment expire counter for current timer.

Q931CallIncrementTimerExpireCount

Parameters:
call Q.931 call
Note:
Only used by Q931TimerTick

Definition at line 589 of file Q931call.c.

References Q931_Call::TimerCnt.

Referenced by Q931TimerTick().

void Q931CallInitEvent ( struct Q931_CallEvent event  ) 

Initialize call event.

Definition at line 638 of file Q931call.c.

Referenced by Q931ProcTimeoutT302TE(), Q931ProcTimeoutT303NT(), Q931ProcTimeoutT303TE(), Q931ProcTimeoutT304TE(), Q931ProcTimeoutT308TE(), Q931ProcTimeoutT310TE(), Q931ProcTimeoutT313TE(), Q931ProcTimeoutT318TE(), Q931ProcTimeoutT319TE(), Q931ProcTimeoutT321TE(), and Q931ProcTimeoutT322TE().

L3BOOL Q931CallIsGlobal ( const struct Q931_Call call  ) 

Definition at line 446 of file Q931call.c.

References Q931_Call::CRV.

Referenced by Q931CallRelease(), Q931CallSetState(), Q931ProcStatusTE(), Q931Rx23(), Q931Rx43(), and Q931TimerTick().

L3BOOL Q931CallIsOutgoing ( const struct Q931_Call call  ) 

Definition at line 228 of file Q931call.c.

References Q931_Call::Direction, and Q931_DIRECTION_OUTBOUND.

Referenced by Q931AckConnect(), Q931CallSendStatus(), Q931Rx23(), Q931Rx43(), and Q931Tx32Data().

struct Q931_Call* Q931CallNew ( Q931_TrunkInfo_t trunk  )  [read]

Request new outgoing call handle & crv.

Q931CallNew

Parameters:
[in] trunk Q931 trunk
[in] crv Optional CRV
Returns:
NULL on error, pointer to call handle otherwise
Todo:
Does direction really make sense here? Primary use is to request a new outgoing call...

Definition at line 97 of file Q931call.c.

References Q931_Call::CRV, Q931_Call::Direction, Q931_Call::InUse, L3INT, Q931_TrunkInfo::NetUser, Q931_DIRECTION_OUTBOUND, Q931_LOG_INFO, Q931_N0, Q931_NT, Q931_U0, Q931CallSetState(), Q931GetUniqueCRV(), Q931Log(), and Q931_Call::Trunk.

Referenced by Q931ProcResumeNT(), Q931ProcResumeTE(), Q931ProcSetupNT(), and Q931ProcSetupTE().

struct Q931_CallEvent* Q931CallNewEvent ( struct Q931_Call call  )  [read]

Get new free event slot from call handle.

Definition at line 650 of file Q931call.c.

References Q931_Call::events, Q931_Call::numevents, and Q931_CALL_MAX_EVENTS.

Referenced by Q931ProcAlertingTE(), Q931ProcCallProceedingTE(), Q931ProcConnectAckTE(), Q931ProcConnectTE(), Q931ProcDisconnectTE(), Q931ProcProgressTE(), Q931ProcReleaseCompleteTE(), Q931ProcReleaseTE(), Q931ProcResumeAckTE(), Q931ProcResumeRejectTE(), Q931ProcSetupAckTE(), Q931ProcSetupTE(), Q931ProcStatusTE(), Q931ProcSuspendAckTE(), Q931ProcSuspendRejectTE(), and Q931ProcUserInformationTE().

struct Q931_Call* Q931CallNewIncoming ( Q931_TrunkInfo_t trunk,
const L3INT  crv 
) [read]

Definition at line 134 of file Q931call.c.

References Q931_Call::CRV, Q931_Call::Direction, Q931_Call::InUse, Q931_TrunkInfo::NetUser, Q931_DIRECTION_INBOUND, Q931_N0, Q931_NT, Q931_U0, Q931CallSetState(), and Q931_Call::Trunk.

Referenced by Q931ProcSetupNT(), Q931ProcSetupTE(), and Q931Rx23().

void Q931CallQueueEvent ( struct Q931_Call call,
struct Q931_CallEvent event 
)

"Enqueue" call event

Note:
Dummy function, actually just increases the call's event counter

Definition at line 664 of file Q931call.c.

References Q931_Call::numevents.

Referenced by Q931ProcAlertingTE(), Q931ProcCallProceedingTE(), Q931ProcConnectAckTE(), Q931ProcConnectTE(), Q931ProcDisconnectTE(), Q931ProcProgressTE(), Q931ProcReleaseCompleteTE(), Q931ProcReleaseTE(), Q931ProcResumeAckTE(), Q931ProcResumeRejectTE(), Q931ProcSetupAckTE(), Q931ProcSetupTE(), Q931ProcStatusTE(), Q931ProcSuspendAckTE(), Q931ProcSuspendRejectTE(), and Q931ProcUserInformationTE().

L3INT Q931CallRelease ( struct Q931_Call call  ) 

Release call handle and CRV.

Q931CallRelease

Parameters:
[in] call The call to release
Returns:
0 on success, < 0 otherwise
Note:
Use only after the call has ended

Definition at line 165 of file Q931call.c.

References L3INT, Q931_N0, Q931_U0, Q931CallGetState(), and Q931CallIsGlobal().

Referenced by Q931ProcReleaseCompleteNT(), Q931ProcReleaseCompleteTE(), Q931ProcReleaseNT(), Q931ProcReleaseTE(), Q931ProcResumeRejectNT(), Q931ProcResumeRejectTE(), Q931ProcStatusTE(), Q931ProcSuspendAckTE(), Q931ProcTimeoutT303NT(), Q931ProcTimeoutT303TE(), Q931ProcTimeoutT307NT(), Q931ProcTimeoutT308NT(), Q931ProcTimeoutT308TE(), Q931ProcTimeoutT309TE(), Q931Rx23(), Q931Rx43(), and Q931TimerTick().

void Q931CallRestartTimer ( struct Q931_Call call,
L3USHORT  timer 
)

Restart a call timer.

Q931CallRestartTimer

Parameters:
call Q.931 call
timer ID of timer
Note:
Does not reset the expire counter

Definition at line 507 of file Q931call.c.

References Q931_TrunkInfo::Dialect, L3ULONG, Q931_LOG_NOTICE, Q931CallGetCRV(), Q931CallGetTrunk(), Q931DialectGetTimeout(), Q931GetTime(), Q931Log(), Q931_Call::Timer, and Q931_Call::TimerID.

Referenced by Q931ProcTimeoutT303NT(), Q931ProcTimeoutT303TE(), Q931ProcTimeoutT308NT(), Q931ProcTimeoutT308TE(), and Q931ProcTimeoutT316TE().

void Q931CallSendEvent ( const struct Q931_Call call,
const struct Q931_CallEvent event 
)

Send call event to Layer 4.

Parameters:
call Q.931 Call handle
event Call event to send

Definition at line 618 of file Q931call.c.

References Q931_TrunkInfo::CallEventCBProc, Q931_CallEvent::id, Q931_TrunkInfo::PrivateDataCallEventCB, Q931_EVENT_NONE, Q931_EVENT_TYPE_NONE, Q931_LOG_DEBUG, Q931CallGetCRV(), Q931CallGetTrunk(), Q931Log(), and Q931_CallEvent::type.

Referenced by Q931CallSendQueuedEvents(), Q931ProcTimeoutT302TE(), Q931ProcTimeoutT303NT(), Q931ProcTimeoutT303TE(), Q931ProcTimeoutT304TE(), Q931ProcTimeoutT308TE(), Q931ProcTimeoutT310TE(), Q931ProcTimeoutT313TE(), Q931ProcTimeoutT318TE(), Q931ProcTimeoutT319TE(), Q931ProcTimeoutT321TE(), Q931ProcTimeoutT322TE(), Q931Rx23(), Q931Rx43(), and Q931TimerTick().

void Q931CallSendQueuedEvents ( struct Q931_Call call  ) 

Send queued call events to layer 4.

Definition at line 685 of file Q931call.c.

References Q931_Call::events, Q931_Call::numevents, Q931CallFlushEvents(), and Q931CallSendEvent().

Referenced by Q931Rx23().

void Q931CallSetPrivate ( struct Q931_Call call,
const void *  priv 
)

Definition at line 192 of file Q931call.c.

References Q931_Call::pvt.

void Q931CallSetState ( struct Q931_Call call,
const L3INT  state 
)

Definition at line 48 of file Q931call.c.

References Q931_LOG_DEBUG, Q931CallGetTrunk(), Q931CallIsGlobal(), Q931Log(), and Q931_Call::State.

Referenced by Q931CallNew(), Q931CallNewIncoming(), Q931ProcAlertingNT(), Q931ProcAlertingTE(), Q931ProcCallProceedingNT(), Q931ProcCallProceedingTE(), Q931ProcConnectAckNT(), Q931ProcConnectAckTE(), Q931ProcConnectNT(), Q931ProcConnectTE(), Q931ProcDisconnectNT(), Q931ProcDisconnectTE(), Q931ProcReleaseCompleteNT(), Q931ProcReleaseCompleteTE(), Q931ProcReleaseNT(), Q931ProcReleaseTE(), Q931ProcResumeAckNT(), Q931ProcResumeAckTE(), Q931ProcResumeNT(), Q931ProcResumeRejectNT(), Q931ProcResumeRejectTE(), Q931ProcResumeTE(), Q931ProcSetupAckNT(), Q931ProcSetupAckTE(), Q931ProcSetupNT(), Q931ProcSetupTE(), Q931ProcStatusTE(), Q931ProcSuspendAckNT(), Q931ProcSuspendAckTE(), Q931ProcSuspendNT(), Q931ProcSuspendRejectTE(), Q931ProcSuspendTE(), Q931ProcTimeoutT303NT(), Q931ProcTimeoutT303TE(), Q931ProcTimeoutT304TE(), Q931ProcTimeoutT305NT(), Q931ProcTimeoutT305TE(), Q931ProcTimeoutT306NT(), Q931ProcTimeoutT307NT(), Q931ProcTimeoutT308NT(), Q931ProcTimeoutT308TE(), Q931ProcTimeoutT309TE(), Q931ProcTimeoutT310NT(), Q931ProcTimeoutT310TE(), Q931ProcTimeoutT313TE(), Q931ProcTimeoutT318TE(), and Q931ProcTimeoutT319TE().

void Q931CallStartTimer ( struct Q931_Call call,
L3USHORT  timer 
)

Start a call timer.

Q931CallStartTimer

Parameters:
call Q.931 call
timer ID of timer

Definition at line 479 of file Q931call.c.

References Q931_TrunkInfo::Dialect, L3ULONG, Q931_LOG_NOTICE, Q931CallGetCRV(), Q931CallGetTrunk(), Q931DialectGetTimeout(), Q931GetTime(), Q931Log(), Q931_Call::Timer, Q931_Call::TimerCnt, and Q931_Call::TimerID.

Referenced by Q931ProcAlertingNT(), Q931ProcAlertingTE(), Q931ProcCallProceedingNT(), Q931ProcCallProceedingTE(), Q931ProcConnectTE(), Q931ProcDisconnectNT(), Q931ProcDisconnectTE(), Q931ProcReleaseNT(), Q931ProcReleaseTE(), Q931ProcResumeTE(), Q931ProcSetupAckNT(), Q931ProcSetupAckTE(), Q931ProcSetupNT(), Q931ProcSetupTE(), Q931ProcStatusTE(), Q931ProcSuspendAckNT(), Q931ProcSuspendTE(), Q931ProcTimeoutT304TE(), Q931ProcTimeoutT305NT(), Q931ProcTimeoutT305TE(), Q931ProcTimeoutT306NT(), Q931ProcTimeoutT310NT(), Q931ProcTimeoutT310TE(), Q931ProcTimeoutT313TE(), Q931ProcTimeoutT318TE(), Q931ProcUserInformationNT(), and Q931ProcUserInformationTE().

void Q931CallStopAllTimers ( struct Q931_Call call  ) 

Stop all call timers.

Q931CallStopAllTimers

Parameters:
call Q.931 call

Definition at line 549 of file Q931call.c.

References Q931_LOG_NOTICE, Q931_TIMER_NONE, Q931CallGetCRV(), Q931CallGetTrunk(), Q931Log(), and Q931_Call::TimerID.

Referenced by Q931ProcDisconnectNT(), Q931ProcDisconnectTE(), Q931ProcReleaseCompleteTE(), Q931ProcReleaseNT(), Q931ProcReleaseTE(), and Q931ProcTimeoutT310NT().

void Q931CallStopTimer ( struct Q931_Call call,
L3USHORT  timer 
)

Stop a call timer.

Q931CallStopTimer

Parameters:
call Q.931 call
timer ID of timer

Definition at line 533 of file Q931call.c.

References Q931_LOG_NOTICE, Q931_TIMER_NONE, Q931CallGetCRV(), Q931CallGetTrunk(), Q931Log(), and Q931_Call::TimerID.

Referenced by Q931ProcAlertingNT(), Q931ProcAlertingTE(), Q931ProcCallProceedingNT(), Q931ProcConnectAckTE(), Q931ProcConnectNT(), Q931ProcConnectTE(), Q931ProcDisconnectNT(), Q931ProcDisconnectTE(), Q931ProcProgressNT(), Q931ProcProgressTE(), Q931ProcReleaseCompleteNT(), Q931ProcReleaseCompleteTE(), Q931ProcReleaseNT(), Q931ProcReleaseTE(), Q931ProcResumeAckNT(), Q931ProcResumeAckTE(), Q931ProcResumeRejectTE(), Q931ProcSetupAckNT(), Q931ProcSetupAckTE(), Q931ProcSuspendAckTE(), Q931ProcSuspendRejectTE(), and Q931TimerTick().

struct Q931_Call* Q931GetCallByCRV ( const Q931_TrunkInfo_t trunk,
const L3INT  crv 
) [read]

Definition at line 404 of file Q931call.c.

References Q931_TrunkInfo::call, Q931_Call::CRV, and Q931_Call::InUse.

Referenced by Q931GetUniqueCRV(), Q931ProcAlertingNT(), Q931ProcAlertingTE(), Q931ProcCallProceedingNT(), Q931ProcCallProceedingTE(), Q931ProcCongestionControlNT(), Q931ProcCongestionControlTE(), Q931ProcConnectAckNT(), Q931ProcConnectAckTE(), Q931ProcConnectNT(), Q931ProcConnectTE(), Q931ProcDisconnectNT(), Q931ProcDisconnectTE(), Q931ProcInformationNT(), Q931ProcInformationTE(), Q931ProcNotifyNT(), Q931ProcNotifyTE(), Q931ProcProgressNT(), Q931ProcProgressTE(), Q931ProcReleaseCompleteNT(), Q931ProcReleaseCompleteTE(), Q931ProcReleaseNT(), Q931ProcReleaseTE(), Q931ProcRestartAckNT(), Q931ProcRestartAckTE(), Q931ProcRestartNT(), Q931ProcRestartTE(), Q931ProcResumeAckNT(), Q931ProcResumeAckTE(), Q931ProcResumeNT(), Q931ProcResumeRejectNT(), Q931ProcResumeRejectTE(), Q931ProcResumeTE(), Q931ProcSegmentNT(), Q931ProcSegmentTE(), Q931ProcSetupAckNT(), Q931ProcSetupAckTE(), Q931ProcSetupNT(), Q931ProcSetupTE(), Q931ProcStatusEnquiryNT(), Q931ProcStatusEnquiryTE(), Q931ProcStatusNT(), Q931ProcStatusTE(), Q931ProcSuspendAckNT(), Q931ProcSuspendAckTE(), Q931ProcSuspendNT(), Q931ProcSuspendRejectNT(), Q931ProcSuspendRejectTE(), Q931ProcSuspendTE(), Q931ProcUserInformationNT(), Q931ProcUserInformationTE(), Q931ReleaseCRV(), Q931Rx23(), Q931Rx43(), Q931Tx32Data(), Q932ProcFacilityNT(), Q932ProcFacilityTE(), Q932ProcHoldAckNT(), Q932ProcHoldAckTE(), Q932ProcHoldNT(), Q932ProcHoldRejectNT(), Q932ProcHoldRejectTE(), Q932ProcHoldTE(), Q932ProcRegisterNT(), Q932ProcRegisterTE(), Q932ProcRetrieveAckNT(), Q932ProcRetrieveAckTE(), Q932ProcRetrieveNT(), Q932ProcRetrieveRejectNT(), Q932ProcRetrieveRejectTE(), and Q932ProcRetrieveTE().

struct Q931_Call* Q931GetCallByIndex ( const Q931_TrunkInfo_t trunk,
const L3INT  idx 
) [read]

Definition at line 427 of file Q931call.c.

References Q931_TrunkInfo::call, and Q931_Call::InUse.

struct Q931_Call* Q931GetGlobalCall ( const Q931_TrunkInfo_t trunk  )  [read]

Definition at line 441 of file Q931call.c.

References Q931_TrunkInfo::call.

Referenced by Q931Rx23(), and Q931Rx43().

void Q931SetCallEventCB ( Q931_TrunkInfo_t trunk,
const Q931CallEventCB_t  cb,
const void *  priv 
)

Set call event callback and (optional) private data.

Parameters:
trunk Q.931 Trunk handle
cb Call event callback function
priv Optional private data for callback function

Definition at line 604 of file Q931call.c.

References Q931_TrunkInfo::CallEventCBProc, and Q931_TrunkInfo::PrivateDataCallEventCB.


Variable Documentation

struct Q931CallEventName Q931CallEventNames[]

Referenced by Q931CallGetEventName().

struct Q931CallStateName Q931CallStateNames[]

Referenced by Q931CallGetStateName().

struct Q931CallTimerName Q931CallTimerNames[]

Referenced by Q931CallGetTimerName().


Generated on Tue Apr 7 17:38:19 2009 for mod_ssh by  doxygen 1.5.4