檢視原始碼 snmpa_discovery_handler 行為 (snmp v5.18)

SNMP 代理程式探索處理器的行為模組。

此模組定義了代理程式探索處理器的行為。符合 snmpa_discovery_handler 的模組必須匯出以下函數

它們的語義及其確切簽名將在下面解釋。

摘要

回呼函數

此函數在探索過程的第一階段結束時被呼叫。它應該返回原子 ignore{ok, usm_entry() | [usm_entry()]}。有關更多資訊,請參閱 usm_entry()usm_entry/1,3

回呼函數

連結到此回呼函數

stage1_finish(TargetName, ManagerEngineID, ExtraInfo)

檢視原始碼
-callback stage1_finish(TargetName, ManagerEngineID, ExtraInfo) ->
                           ignore | {ok, UsmEntry | [UsmEntry]} | {ok, UsmEntry | [UsmEntry], NewExtraInfo}
                           when
                               TargetName :: snmp_target_mib:name(),
                               ManagerEngineID :: snmp_framework_mib:engine_id(),
                               ExtraInfo :: term(),
                               UsmEntry :: snmp_user_based_sm_mib:usm_entry(),
                               NewExtraInfo :: term().

此函數在探索過程的第一階段結束時被呼叫。它應該返回原子 ignore{ok, usm_entry() | [usm_entry()]}。有關更多資訊,請參閱 usm_entry()usm_entry/1,3

如果函數返回 ignore,則假設以下情況之一

  • 呼叫者(探索函數的呼叫者)稍後會進行所需的更新。
  • 回呼函數本身已完成更新。

無論是哪種情況,代理程式都將不執行任何操作,但會返回檢索到的 ManagerEngineID(有關更多資訊,請參閱 snmpa:discovery/6)並可能繼續進行探索過程的第二階段。

ExtraInfo 參數是從 snmpa:discovery/6 函數傳遞過來的。

此函數可能會返回一個更新後的 NewExtraInfo,該 NewExtraInfo 將在後續對回呼函數的呼叫中使用。供未來使用。

此函數的目的是產生代理程式中 usm 處理所需的 usm 相關安全資料。具體來說,是更新 usmUserTable。

當返回 usm_entry() 元組(或此類元組的列表)時,此資料會由(主)代理程式新增到 usmUserTable 中。

當返回 usm_entry() 元組(或此類元組的列表)時,此資料會由(主)代理程式新增到 usmUserTable 中。

注意

請注意,該函數不會檢查此條目是否已存在。

注意

請注意,此函數是在主代理程式進程的上下文中執行的。