static ltplT_ltp_Session*
ltpl_intf_ltp_sess_from_cid (int conn_id)
{
ltplT_ltp_Session* sess_ptr;
FIN (ltpl_intf_ltp_sess_from_cid (conn_id));
sess_ptr = prg_bin_hash_table_item_get (session_table_ptr, &conn_id);
if (sess_ptr != PRGC_NIL)
{
FRET (sess_ptr);
}
else {
FRET (OPC_NIL);
}
}
#if 0
static ltplT_ltp_Session*
ltpl_intf_ltp_sess_from_port (int port_index)
{
ltplT_ltp_Session* cur_sess_ptr;
ltplT_ltp_Session* best_sess_ptr;
PrgT_List_Cell * cell_ptr;
FIN (ltpl_intf_ltp_sess_from_port (port_index));
best_sess_ptr = OPC_NIL;
for (cell_ptr = prg_list_head_cell_get (&session_list);
cell_ptr; cell_ptr = prg_list_cell_next_get (cell_ptr))
{
curr_sess_ptr = (ltplT_ltp_Session*) prg_list_cell_data_get (cell_ptr);
if (cur_sess_ptr->loc_port == port_index &&
cur_sess_ptr->state < ltplC_ltp_SESS_STATE_ESTAB &&
(best_sess_ptr == OPC_NIL || cur_sess_ptr->state < best_sess_ptr->state))
{
best_sess_ptr = cur_sess_ptr;
}
}
FRET (best_sess_ptr);
}
#endif
static void
ltpl_intf_ltp_sess_destroy (ltplT_ltp_Session* sess_ptr)
{
ltplT_ltp_Session* tmp_sess_ptr;
char msg0 [256];
FIN (ltpl_intf_ltp_sess_destroy (sess_ptr));
tmp_sess_ptr = (ltplT_ltp_Session*) prg_bin_hash_table_item_remove (session_table_ptr, &sess_ptr->conn_id);
if (trace_active)
{
sprintf (msg0, "Destroying the Ici %x",(unsigned int) sess_ptr->ltp_ici_ptr);
op_ici_print (sess_ptr->ltp_ici_ptr);
op_prg_odb_print_minor (msg0, OPC_NIL);
}
inet_address_destroy (sess_ptr->rem_address);
ltp_app_handle_destroy (&(sess_ptr->ltp_interface_hndl));
op_prg_mem_free (sess_ptr);
FOUT;
}
*** Diagnostic functions ***/
static void
ltpl_intf_ltp_error (const char* msg)
{
op_sim_end ("Error in ltpl ltp interface process (ltpl_intf_ltp3):", msg, OPC_NIL, OPC_NIL);
}
static void
ltpl_address_map_register ()
{
Objid my_own_id;
Objid my_node_id;
char proc_model_name [256];
OmsT_Pr_Handle own_process_record_handle;
FIN (ltpl_address_map_register ());
my_own_id = op_id_self ();
my_node_id = op_topo_parent (my_own_id);
op_ima_obj_attr_get (my_own_id, "name", &proc_model_name);
own_process_record_handle = (OmsT_Pr_Handle) oms_pr_process_register
(my_node_id,
my_own_id,
op_pro_self (),
proc_model_name);
oms_pr_attr_set (own_process_record_handle,
"protocol", OMSC_PR_STRING, "ltpl_map",
"address_map", OMSC_PR_POINTER, loc_addr_map,
OPC_NIL);
FOUT;
}
static void
ltpl_intf_ltp_warn (const char* msg)
{
op_prg_odb_print_major ("Warning from ltpl ltp interface process (ltpl_intf_ltp3):",
msg, OPC_NIL);
}
ltp.rar_DTN传输层协议ltp的opnet代码_LTP OPNET_ltp_ltp dtn_opnet ltp
版权申诉
119 浏览量
2022-09-21
21:32:43
上传
评论
收藏 1KB RAR 举报
weixin_42651887
- 粉丝: 75
- 资源: 1万+
最新资源
- 农村信用社联合社计算机信息系统投产与变更管理办.docx
- 农村信用社联合社计算机信息系统数据管理办法.docx
- 利用SPSS作临床效度分析线上计算网站介绍-医学研究部统计谘.(医学PPT课件).ppt
- 利用Zabbix监控mysqldump定时备份数据库状态.docx
- 利用计算机解决问题的基本过程.doc
- 化工铁路通信工程总结.doc
- 北京大学网络教育软件工程作业.docx
- 医药公司(连锁店)计算机操作规程未新系统的自行按照旧制修改-新系统过制的编号加修模版.doc
- 医药公司(连锁店)计算机系统操作规程模版.doc
- 医药连锁门店计算机系统的操作和管理程序未新系统的自行按照旧制修改-新系统过制的编号加修模版.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈