Snmp 0x80


SNMPアプリ登録


【機能】

 SNMPユーザアプリケーションを登録します。

【関数】

 int RegSnmpApl( int *snmppid, int tmout )
 {
   return trapa_svc( 0x80, pid, snmppid, tmout );
 }

【入力】

 snmppid SNMPプロセスのPID PIDを格納する領域アドレス
 tmout メッセージ応答タイムアウト時間 100〜30000(ms)

【出力】

 リターンコード OK 正常終了
+0
+1
+2
+3
snmppid+00
カーネルのSNMPプロセスID

ERR_PARAM パラメータエラー
ERR_SNMPSTOP SNMP停止中
ERR_SNMPRUN SNMP起動中

【解説】

 本装置のカーネルに存在するSNMPエージェントプロセスとメッセージ通信を行なうため、プロセスIDとイベント応答のタイムアウト値を登録します。
 本ファンクションの成功により、カーネルのSNMPエージェントはアプリケーションにメッセージを発行することが可能になります。また、アプリケーションもカーネルのSNMPプロセスにメッセージを発行することが可能になります。

 呼び出し元プロセスは、カーネルのSNMPプロセスIDを保管しておき、メッセージ発行時に宛先プロセスIDに設定して下さい。

 イベント応答タイムアウト時間とは、SNMPプロセスがSNMP要求(GET-REQUEST、SET-REQUESTなど)を受信した場合、アクセスするMIBがカーネル管理外のとき、アプリケーションにメッセージを発行します。アプリケーションの応答を待ってSNMP応答(GET-RESPONSE)を組み立てて応答します。この応答待ちの間、次のSNMP要求を処理しないためアプリケーションの応答をある時間でタイムアウトさせる必要があります。

 カーネルのSNMPプロセスID格納領域のアドレスがNULLの場合、またはイベント応答タイムアウト時間が範囲外の場合、パラメータエラーを返します。

 動作パラメータの設定で「SNMPP設定」が無効な場合、SNMP停止中を返します。

 既に本ファンクションが呼び出され、成功している場合、SNMP起動中を返します。

【注意】

 本ファンクションを使用するには、動作パラメータの設定で「SNMP設定」を有効に設定しておく必要があります。