SNMP学习之结构体snmp_secmod_def

此结构体中定义了各个回调函数,在函数init_ksm(E:code et-snmp-5.4.2.1snmplib)中进行了初始化。

void init_ksm(void)

{

       struct snmp_secmod_def *def;

       // 申请内存

       def = SNMP_MALLOC_STRUCT(snmp_secmod_def);

      // 初始化回调函数  

      def->encode_reverse = ksm_rgenerate_out_msg;    

      def->decode = ksm_process_in_msg;    

      def->session_open = ksm_session_init;    

      def->pdu_free_state_ref = ksm_free_state_ref;    

      def->pdu_free = ksm_free_pdu;    

      def->pdu_clone = ksm_clone_pdu;

      // 注册

     register_sec_mod(NETSNMP_KSM_SECURITY_MODEL, "ksm", def);

}