Skip to content
项目
群组
代码片段
帮助
正在加载...
登录
切换导航
F
freeswitch
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
张华
freeswitch
Commits
f1f78a86
提交
f1f78a86
authored
5月 30, 2012
作者:
kapil
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
adding m2ua stack free code while unloading freetdm module
上级
69501d09
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
147 行增加
和
0 行删除
+147
-0
ftmod_sangoma_ss7_logger.c
...dm/src/ftmod/ftmod_sangoma_ss7/ftmod_sangoma_ss7_logger.c
+5
-0
ftmod_sangoma_ss7_m2ua.c
...etdm/src/ftmod/ftmod_sangoma_ss7/ftmod_sangoma_ss7_m2ua.c
+137
-0
ftmod_sangoma_ss7_m2ua.h
...etdm/src/ftmod/ftmod_sangoma_ss7/ftmod_sangoma_ss7_m2ua.h
+1
-0
ftmod_sangoma_ss7_main.c
...etdm/src/ftmod/ftmod_sangoma_ss7/ftmod_sangoma_ss7_main.c
+4
-0
没有找到文件。
libs/freetdm/src/ftmod/ftmod_sangoma_ss7/ftmod_sangoma_ss7_logger.c
浏览文件 @
f1f78a86
...
...
@@ -870,6 +870,11 @@ void handle_sng_m2ua_alarm(Pst *pst, MwMgmt *sta)
/* To print the event specific information */
switch
(
sta
->
t
.
usta
.
alarm
.
event
)
{
case
LMW_EVENT_ENDPOPEN_OK
:
{
ftdm_log
(
FTDM_LOG_INFO
,
" M2UA : LMW_EVENT_ENDPOPEN_OK:
\n
"
);
break
;
}
case
LMW_EVENT_ESTABLISH_OK
:
{
ftdm_log
(
FTDM_LOG_INFO
,
" M2UA : LMW_EVENT_ESTABLISH_OK Event raised on peerId[%d]
\n
"
,
sta
->
t
.
usta
.
s
.
peerId
);
...
...
libs/freetdm/src/ftmod/ftmod_sangoma_ss7/ftmod_sangoma_ss7_m2ua.c
浏览文件 @
f1f78a86
...
...
@@ -64,10 +64,114 @@ static int ftmod_nif_m2ua_dlsap_bind(int id);
static
int
ftmod_nif_mtp2_dlsap_bind
(
int
id
);
static
int
ftmod_m2ua_enable_debug
(
void
);
static
int
ftmod_tucl_enable_debug
(
void
);
static
int
ftmod_sctp_enable_debug
(
void
);
static
int
ftmod_ss7_sctp_shutdown
(
void
);
static
int
ftmod_ss7_m2ua_shutdown
(
void
);
static
int
ftmod_ss7_tucl_shutdown
(
void
);
ftdm_status_t
sng_m2ua_init
(
void
);
ftdm_status_t
sng_m2ua_cfg
(
void
);
/******************************************************************************/
void
ftmod_ss7_m2ua_free
()
{
ftmod_ss7_m2ua_shutdown
();
ftmod_ss7_sctp_shutdown
();
ftmod_ss7_tucl_shutdown
();
sng_isup_free_m2ua
();
sng_isup_free_sctp
();
sng_isup_free_tucl
();
}
/******************************************************************************/
static
int
ftmod_ss7_tucl_shutdown
()
{
Pst
pst
;
HiMngmt
cntrl
;
memset
((
U8
*
)
&
pst
,
0
,
sizeof
(
Pst
));
memset
((
U8
*
)
&
cntrl
,
0
,
sizeof
(
HiMngmt
));
smPstInit
(
&
pst
);
pst
.
dstEnt
=
ENTHI
;
/* prepare header */
cntrl
.
hdr
.
msgType
=
TCNTRL
;
/* message type */
cntrl
.
hdr
.
entId
.
ent
=
ENTHI
;
/* entity */
cntrl
.
hdr
.
entId
.
inst
=
0
;
/* instance */
cntrl
.
hdr
.
elmId
.
elmnt
=
STGEN
;
/* General */
cntrl
.
hdr
.
response
.
selector
=
0
;
cntrl
.
hdr
.
response
.
prior
=
PRIOR0
;
cntrl
.
hdr
.
response
.
route
=
RTESPEC
;
cntrl
.
hdr
.
response
.
mem
.
region
=
S_REG
;
cntrl
.
hdr
.
response
.
mem
.
pool
=
S_POOL
;
cntrl
.
t
.
cntrl
.
action
=
ASHUTDOWN
;
return
(
sng_cntrl_tucl
(
&
pst
,
&
cntrl
));
}
/******************************************************************************/
static
int
ftmod_ss7_m2ua_shutdown
()
{
Pst
pst
;
MwMgmt
cntrl
;
memset
((
U8
*
)
&
pst
,
0
,
sizeof
(
Pst
));
memset
((
U8
*
)
&
cntrl
,
0
,
sizeof
(
MwMgmt
));
smPstInit
(
&
pst
);
pst
.
dstEnt
=
ENTMW
;
/* prepare header */
cntrl
.
hdr
.
msgType
=
TCNTRL
;
/* message type */
cntrl
.
hdr
.
entId
.
ent
=
ENTMW
;
/* entity */
cntrl
.
hdr
.
entId
.
inst
=
0
;
/* instance */
cntrl
.
hdr
.
elmId
.
elmnt
=
STMWGEN
;
/* General */
cntrl
.
hdr
.
response
.
selector
=
0
;
cntrl
.
hdr
.
response
.
prior
=
PRIOR0
;
cntrl
.
hdr
.
response
.
route
=
RTESPEC
;
cntrl
.
hdr
.
response
.
mem
.
region
=
S_REG
;
cntrl
.
hdr
.
response
.
mem
.
pool
=
S_POOL
;
cntrl
.
t
.
cntrl
.
action
=
ASHUTDOWN
;
return
(
sng_cntrl_m2ua
(
&
pst
,
&
cntrl
));
}
/***********************************************************************************************************************/
static
int
ftmod_ss7_sctp_shutdown
()
{
Pst
pst
;
SbMgmt
cntrl
;
memset
((
U8
*
)
&
pst
,
0
,
sizeof
(
Pst
));
memset
((
U8
*
)
&
cntrl
,
0
,
sizeof
(
SbMgmt
));
smPstInit
(
&
pst
);
pst
.
dstEnt
=
ENTSB
;
/* prepare header */
cntrl
.
hdr
.
msgType
=
TCNTRL
;
/* message type */
cntrl
.
hdr
.
entId
.
ent
=
ENTSB
;
/* entity */
cntrl
.
hdr
.
entId
.
inst
=
0
;
/* instance */
cntrl
.
hdr
.
elmId
.
elmnt
=
STSBGEN
;
/* General */
cntrl
.
hdr
.
response
.
selector
=
0
;
cntrl
.
hdr
.
response
.
prior
=
PRIOR0
;
cntrl
.
hdr
.
response
.
route
=
RTESPEC
;
cntrl
.
hdr
.
response
.
mem
.
region
=
S_REG
;
cntrl
.
hdr
.
response
.
mem
.
pool
=
S_POOL
;
cntrl
.
t
.
cntrl
.
action
=
ASHUTDOWN
;
return
(
sng_cntrl_sctp
(
&
pst
,
&
cntrl
));
}
/******************************************************************************/
ftdm_status_t
ftmod_ss7_m2ua_cfg
(
void
)
...
...
@@ -1036,6 +1140,7 @@ int ftmod_ss7_m2ua_start(void){
/***********************************************************************************************************************/
/* Enable DEBUGs*/
ftmod_sctp_enable_debug
();
ftmod_m2ua_enable_debug
();
ftmod_tucl_enable_debug
();
...
...
@@ -1275,6 +1380,38 @@ static int ftmod_nif_mtp2_dlsap_bind(int id)
}
/***********************************************************************************************************************/
static
int
ftmod_sctp_enable_debug
()
{
Pst
pst
;
SbMgmt
cntrl
;
memset
((
U8
*
)
&
pst
,
0
,
sizeof
(
Pst
));
memset
((
U8
*
)
&
cntrl
,
0
,
sizeof
(
SbMgmt
));
smPstInit
(
&
pst
);
pst
.
dstEnt
=
ENTSB
;
/* prepare header */
cntrl
.
hdr
.
msgType
=
TCNTRL
;
/* message type */
cntrl
.
hdr
.
entId
.
ent
=
ENTSB
;
/* entity */
cntrl
.
hdr
.
entId
.
inst
=
0
;
/* instance */
cntrl
.
hdr
.
elmId
.
elmnt
=
STSBGEN
;
/* General */
cntrl
.
hdr
.
response
.
selector
=
0
;
cntrl
.
hdr
.
response
.
prior
=
PRIOR0
;
cntrl
.
hdr
.
response
.
route
=
RTESPEC
;
cntrl
.
hdr
.
response
.
mem
.
region
=
S_REG
;
cntrl
.
hdr
.
response
.
mem
.
pool
=
S_POOL
;
cntrl
.
t
.
cntrl
.
action
=
AENA
;
cntrl
.
t
.
cntrl
.
subAction
=
SADBG
;
cntrl
.
t
.
cntrl
.
dbgMask
=
0xFFFF
;
return
(
sng_cntrl_sctp
(
&
pst
,
&
cntrl
));
}
/***********************************************************************************************************************/
static
int
ftmod_m2ua_enable_debug
()
{
Pst
pst
;
...
...
libs/freetdm/src/ftmod/ftmod_sangoma_ss7/ftmod_sangoma_ss7_m2ua.h
浏览文件 @
f1f78a86
...
...
@@ -118,6 +118,7 @@ int ftmod_ss7_parse_sctp_links(ftdm_conf_node_t *node);
uint32_t
iptoul
(
const
char
*
ip
);
int
ftmod_ss7_m2ua_start
(
void
);
void
ftmod_ss7_m2ua_free
(
void
);
ftdm_status_t
ftmod_ss7_m2ua_cfg
(
void
);
...
...
libs/freetdm/src/ftmod/ftmod_sangoma_ss7/ftmod_sangoma_ss7_main.c
浏览文件 @
f1f78a86
...
...
@@ -2687,6 +2687,10 @@ static FIO_SIG_UNLOAD_FUNCTION(ftdm_sangoma_ss7_unload)
sngss7_clear_flag
(
&
g_ftdm_sngss7_data
.
cfg
,
SNGSS7_RY_STARTED
);
}
if
(
SNG_SS7_OPR_MODE_ISUP
!=
g_ftdm_operating_mode
){
ftmod_ss7_m2ua_free
();
}
if
(
sngss7_test_flag
(
&
g_ftdm_sngss7_data
.
cfg
,
SNGSS7_SM_STARTED
))
{
sng_isup_free_sm
();
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论