📄 nsmib.h
字号:
break;
case 4:
gns_sec_measure.authen_mode = payload[0];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 5:
gns_sec_measure.encypt_mode = payload[0];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
default:
if(idx > 5) {
Write_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
Write_Neg_Output(src_app, 1, 3, 0, msg_id, src_port, src_ip);
return EPA_OBJ_UNWRITABLE;
}
return EPA_NO_ERR;
}
void SecPtclMan_Init(void);
__inline uint8 SecPtclMan_Read(uint16 idx, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
OctetString payload;
switch (idx) {
case 0:
h2n16(gns_sec_ptcl_man.obj_id, payload);
h2n16(gns_sec_ptcl_man.revision, payload + 2);
h2n16(gns_sec_ptcl_man.time_limit, payload + 4);
payload[6] = gns_sec_ptcl_man.run_mode;
payload[7] = gns_sec_ptcl_man.link_mode;
payload[8] = gns_sec_ptcl_man.authen_mode;
payload[9] = gns_sec_ptcl_man.Ptcl_type;
Read_Pos_Output(src_app, payload, 10, msg_id, src_port, src_ip);
break;
case 2:
h2n16(gns_sec_ptcl_man.revision, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 3:
h2n16(gns_sec_ptcl_man.time_limit, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 4:
payload[0] = gns_sec_ptcl_man.run_mode;
Read_Pos_Output(src_app, payload, 1, msg_id, src_port, src_ip);
break;
case 5:
payload[0] = gns_sec_ptcl_man.link_mode;
Read_Pos_Output(src_app, payload, 1, msg_id, src_port, src_ip);
break;
case 6:
payload[0] = gns_sec_ptcl_man.authen_mode;
Read_Pos_Output(src_app, payload, 1, msg_id, src_port, src_ip);
break;
case 7:
payload[0] = gns_sec_ptcl_man.Ptcl_type;
Read_Pos_Output(src_app, payload, 1, msg_id, src_port, src_ip);
break;
default:
Read_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
return EPA_NO_ERR;
}
__inline uint8 SecPtclMan_Write(uint16 idx, OctetString payload, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
switch (idx) {
case 0:
n2h16(payload + 4, &gns_sec_ptcl_man.time_limit);
gns_sec_ptcl_man.run_mode = payload[6];
gns_sec_ptcl_man.link_mode = payload[7];
gns_sec_ptcl_man.authen_mode = payload[8];
gns_sec_ptcl_man.Ptcl_type = payload[9];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 3:
n2h16(payload + 4, &gns_sec_ptcl_man.time_limit);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 4:
gns_sec_ptcl_man.run_mode = payload[6];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 5:
gns_sec_ptcl_man.link_mode = payload[7];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 6:
gns_sec_ptcl_man.authen_mode = payload[8];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 7:
gns_sec_ptcl_man.Ptcl_type = payload[9];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
default:
if(idx > 7) {
Write_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
Write_Neg_Output(src_app, 1, 3, 0, msg_id, src_port, src_ip);
return EPA_OBJ_UNWRITABLE;
}
return EPA_NO_ERR;
}
void AuthenObj_Init(void);
__inline uint8 AuthenObj_Read(uint16 idx, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
OctetString payload;
switch (idx) {
case 0:
h2n16(gns_authen_obj.obj_id, payload);
h2n16(gns_authen_obj.revision, payload + 2);
memcpy(payload + 4, gns_authen_obj.sec_id, 32);
h2n32(gns_authen_obj.stamp.secs, payload + 36);
h2n32(gns_authen_obj.stamp.nasecs, payload + 40);
payload[44] = gns_authen_obj.state;
Read_Pos_Output(src_app, payload, 45, msg_id, src_port, src_ip);
break;
case 2:
h2n16(gns_authen_obj.revision, payload);
Read_Pos_Output(src_app, payload, 1, msg_id, src_port, src_ip);
break;
case 3:
memcpy(payload, gns_authen_obj.sec_id, 32);
Read_Pos_Output(src_app, payload, 32, msg_id, src_port, src_ip);
break;
case 4:
h2n32(gns_authen_obj.stamp.secs, payload);
h2n32(gns_authen_obj.stamp.nasecs, payload + 4);
Read_Pos_Output(src_app, payload, 8, msg_id, src_port, src_ip);
break;
case 5:
payload[0] = gns_authen_obj.state;
Read_Pos_Output(src_app, payload, 32, msg_id, src_port, src_ip);
break;
default:
Read_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
return EPA_NO_ERR;
}
__inline uint8 AuthenObj_Write(uint16 idx, OctetString payload, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
if(idx > 5) {
Write_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
switch (idx) {
case 0:
n2h32(payload + 36, &(gns_authen_obj.stamp.secs));
n2h32(payload + 40, (uint32*)&(gns_authen_obj.stamp.nasecs));
gns_authen_obj.state = payload[44];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 4:
n2h32(payload, &(gns_authen_obj.stamp.secs));
n2h32(payload + 4, (uint32*)&(gns_authen_obj.stamp.nasecs));
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 5:
gns_authen_obj.state = payload[0];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
default:
Write_Neg_Output(src_app, 1, 3, 0, msg_id, src_port, src_ip);
return EPA_OBJ_UNWRITABLE;
}
return EPA_NO_ERR;
}
void AcctrlObj_Init(void);
__inline uint8 AcctrlObj_Read(uint16 id, uint16 idx, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
OctetString payload;
id = id - NSMIB_BASE_OBJID_ACCTRL_OBJ;
if(id >= MIB_NUM_ACCTRL_OBJ) {
Read_Neg_Output(src_app, 1, 1, 0, msg_id, src_port, src_ip);
return EPA_OBJID_ILLEGAL;
}
switch(idx){
case 0:
h2n16(gns_acctrl_obj[id].obj_id, payload);
h2n16(gns_acctrl_obj[id].local_app, payload + 2);
h2n16(gns_acctrl_obj[id].local_obj, payload + 4);
h2n16(gns_acctrl_obj[id].rmt_app, payload + 6);
h2n16(gns_acctrl_obj[id].rmt_obj, payload + 8);
payload[10] = gns_acctrl_obj[id].srv_op;
payload[11] = gns_acctrl_obj[id].srv_role;
h2n32(gns_acctrl_obj[id].rmt_ip, payload + 12);
h2n32(gns_acctrl_obj[id].send_time_offset, payload + 16);
payload[20] = gns_acctrl_obj[id].right;
payload[21] = gns_acctrl_obj[id].group;
h2n16(gns_acctrl_obj[id].psw, payload + 22);
Read_Pos_Output(src_app, payload, 24, msg_id, src_port, src_ip);
break;
case 2:
h2n16(gns_acctrl_obj[id].local_app, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 3:
h2n16(gns_acctrl_obj[id].local_obj, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 4:
h2n16(gns_acctrl_obj[id].rmt_app, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 5:
h2n16(gns_acctrl_obj[id].rmt_obj, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 6:
payload[0] = gns_acctrl_obj[id].srv_op;
Read_Pos_Output(src_app, payload, 1, msg_id, src_port, src_ip);
break;
case 7:
payload[0] = gns_acctrl_obj[id].srv_role;
Read_Pos_Output(src_app, payload, 1, msg_id, src_port, src_ip);
break;
case 8:
h2n32(gns_acctrl_obj[id].rmt_ip, payload);
Read_Pos_Output(src_app, payload, 4, msg_id, src_port, src_ip);
break;
case 9:
h2n32(gns_acctrl_obj[id].send_time_offset, payload);
Read_Pos_Output(src_app, payload, 4, msg_id, src_port, src_ip);
break;
case 10:
payload[20] = gns_acctrl_obj[id].right;
Read_Pos_Output(src_app, payload, 1, msg_id, src_port, src_ip);
break;
case 11:
payload[21] = gns_acctrl_obj[id].group;
Read_Pos_Output(src_app, payload, 1, msg_id, src_port, src_ip);
break;
case 12:
h2n16(gns_acctrl_obj[id].psw, payload + 22);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
default:
Read_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
return EPA_NO_ERR;
}
__inline uint8 AcctrlObj_Write(uint16 id, uint16 idx, OctetString payload, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
id = id - NSMIB_BASE_OBJID_ACCTRL_OBJ;
if(id >= MIB_NUM_ACCTRL_OBJ) {
Write_Neg_Output(src_app, 1, 1, 0, msg_id, src_port, src_ip);
return EPA_OBJID_ILLEGAL;
}
switch (idx) {
case 0:
n2h16(payload + 2, &gns_acctrl_obj[id].local_app);
n2h16(payload + 4, &gns_acctrl_obj[id].local_obj);
n2h16(payload + 6, &gns_acctrl_obj[id].rmt_app);
n2h16(payload + 8, &gns_acctrl_obj[id].rmt_obj);
gns_acctrl_obj[id].srv_op = payload[10];
gns_acctrl_obj[id].srv_role = payload[11];
n2h32(payload + 12, &gns_acctrl_obj[id].rmt_ip);
n2h32(payload + 16, &gns_acctrl_obj[id].send_time_offset);
gns_acctrl_obj[id].right = payload[20];
gns_acctrl_obj[id].group = payload[21];
n2h16(payload + 22, &gns_acctrl_obj[id].psw);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 2:
n2h16(payload, &gns_acctrl_obj[id].local_app);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 3:
n2h16(payload, &gns_acctrl_obj[id].local_obj);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 4:
n2h16(payload, &gns_acctrl_obj[id].rmt_app);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 5:
n2h16(payload, &gns_acctrl_obj[id].rmt_obj);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 6:
gns_acctrl_obj[id].srv_op = payload[0];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 7:
gns_acctrl_obj[id].srv_role = payload[0];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 8:
n2h32(payload, &gns_acctrl_obj[id].rmt_ip);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 9:
n2h32(payload, &gns_acctrl_obj[id].send_time_offset);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 10:
gns_acctrl_obj[id].right = payload[20];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 11:
gns_acctrl_obj[id].group = payload[21];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 12:
n2h16(payload + 22, &gns_acctrl_obj[id].psw);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
default:
if (idx > 12) {
Write_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
Write_Neg_Output(src_app, 1, 3, 0, msg_id, src_port, src_ip);
return EPA_OBJ_UNWRITABLE;
}
return EPA_NO_ERR;
}
__inline void NSGetkey(Octet key[]) {
memcpy(key, gns_key_man.key_tbl + gns_key_man.key_off, (gns_key_man.key_len > 16 ? 16 : gns_key_man.key_len));
}
#endif // _NSMIB_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -