mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-08 06:12:45 +00:00
Fix chan_ooh323 so it works on Mac OS X, as well.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254799 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -47,6 +47,5 @@ $(if $(filter format_mp3,$(EMBEDDED_MODS)),modules.link,format_mp3.so): mp3/comm
|
||||
chan_ooh323.o: _ASTCFLAGS+=$(H323CFLAGS)
|
||||
|
||||
$(if $(filter chan_ooh323,$(EMBEDDED_MODS)),modules.link,chan_ooh323.so): _ASTCFLAGS+=$(H323CFLAGS)
|
||||
$(if $(filter chan_ooh323,$(EMBEDDED_MODS)),modules.link,chan_ooh323.so): _ASTLDFLAGS+=-lrt
|
||||
$(if $(filter chan_ooh323,$(EMBEDDED_MODS)),modules.link,chan_ooh323.so): $(addprefix ooh323c/src/,$(H323OBJS)) chan_ooh323.o ooh323cDriver.o
|
||||
$(addprefix ooh323c/src/,$(H323OBJS)) chan_ooh323.o ooh323cDriver.o: _ASTCFLAGS+=$(call MOD_ASTCFLAGS,chan_ooh323)
|
||||
|
@@ -1557,6 +1557,7 @@ int ooHandleH2250Message(OOH323CallData *call, Q931Message *q931Msg)
|
||||
DListNode *pNode = NULL;
|
||||
OOTimer *pTimer=NULL;
|
||||
int type = q931Msg->messageType;
|
||||
struct timeval tv;
|
||||
struct timespec ts;
|
||||
|
||||
/* checking of message validity for first/next messages of calls */
|
||||
@@ -1600,8 +1601,9 @@ int ooHandleH2250Message(OOH323CallData *call, Q931Message *q931Msg)
|
||||
ast_mutex_lock(&call->Lock);
|
||||
ret = ooGkClientSendAdmissionRequest(gH323ep.gkClient, call,
|
||||
FALSE);
|
||||
clock_gettime(CLOCK_REALTIME, &ts);
|
||||
ts.tv_sec += 24;
|
||||
tv = ast_tvnow();
|
||||
ts.tv_sec = tv.tv_sec + 24;
|
||||
ts.tv_nsec = tv.tv_usec * 1000;
|
||||
ast_cond_timedwait(&call->gkWait, &call->Lock, &ts);
|
||||
if (call->callState == OO_CALL_WAITING_ADMISSION)
|
||||
call->callState = OO_CALL_CLEAR;
|
||||
|
@@ -16,6 +16,7 @@
|
||||
|
||||
#include <asterisk.h>
|
||||
#include <asterisk/lock.h>
|
||||
#include "asterisk/utils.h"
|
||||
#include <time.h>
|
||||
|
||||
#include "ooq931.h"
|
||||
@@ -2017,6 +2018,7 @@ int ooH323HandleCallFwdRequest(OOH323CallData *call)
|
||||
OOCTXT *pctxt;
|
||||
ooAliases *pNewAlias=NULL, *alias=NULL;
|
||||
struct timespec ts;
|
||||
struct timeval tv;
|
||||
int i=0, irand=0, ret = OO_OK;
|
||||
/* Note: We keep same callToken, for new call which is going
|
||||
to replace an existing call, thus treating it as a single call.*/
|
||||
@@ -2072,8 +2074,9 @@ int ooH323HandleCallFwdRequest(OOH323CallData *call)
|
||||
ret = ooGkClientSendAdmissionRequest(gH323ep.gkClient, fwdedCall, FALSE);
|
||||
fwdedCall->callState = OO_CALL_WAITING_ADMISSION;
|
||||
ast_mutex_lock(&fwdedCall->Lock);
|
||||
clock_gettime(CLOCK_REALTIME, &ts);
|
||||
ts.tv_sec += 24;
|
||||
tv = ast_tvnow();
|
||||
ts.tv_sec += tv.tv_sec + 24;
|
||||
ts.tv_nsec = tv.tv_usec * 1000;
|
||||
ast_cond_timedwait(&fwdedCall->gkWait, &fwdedCall->Lock, &ts);
|
||||
if (fwdedCall->callState == OO_CALL_WAITING_ADMISSION) /* GK is not responding */
|
||||
fwdedCall->callState = OO_CALL_CLEAR;
|
||||
@@ -2114,6 +2117,7 @@ int ooH323MakeCall(char *dest, char *callToken, ooCallOptions *opts)
|
||||
int ret=0, i=0, irand=0;
|
||||
char tmp[30]="\0";
|
||||
char *ip=NULL, *port = NULL;
|
||||
struct timeval tv;
|
||||
struct timespec ts;
|
||||
|
||||
if(!dest)
|
||||
@@ -2195,8 +2199,9 @@ int ooH323MakeCall(char *dest, char *callToken, ooCallOptions *opts)
|
||||
call->callState = OO_CALL_WAITING_ADMISSION;
|
||||
ast_mutex_lock(&call->Lock);
|
||||
ret = ooGkClientSendAdmissionRequest(gH323ep.gkClient, call, FALSE);
|
||||
clock_gettime(CLOCK_REALTIME, &ts);
|
||||
ts.tv_sec += 24;
|
||||
tv = ast_tvnow();
|
||||
ts.tv_sec = tv.tv_sec + 24;
|
||||
ts.tv_nsec = tv.tv_usec * 1000;
|
||||
ast_cond_timedwait(&call->gkWait, &call->Lock, &ts);
|
||||
if (call->callState == OO_CALL_WAITING_ADMISSION)
|
||||
call->callState = OO_CALL_CLEAR;
|
||||
|
@@ -111,7 +111,7 @@ void ooTraceLogMessage(const char * logMessage)
|
||||
struct timeval systemTime;
|
||||
gettimeofday(&systemTime, NULL);
|
||||
fprintf(gH323ep.fptraceFile, "%s:%03ld %s", timeString,
|
||||
systemTime.tv_usec/1000, logMessage);
|
||||
(long) systemTime.tv_usec/1000, logMessage);
|
||||
}
|
||||
else
|
||||
fprintf(gH323ep.fptraceFile, "%s", logMessage);
|
||||
|
Reference in New Issue
Block a user