实现SNMP MIB与RTA参考指南
1. 实现SNMP MIB
在操作(ACTION)阶段,我们会在将新值写入RTA区域表之前,检索当前值并将其保存到 saved_value 中。如果遇到问题,会返回错误。保存的值可用于撤销(UNDO)操作。以下是相关代码:
case UNDO:
/* Back out any changes made in the ACTION case */
sprintf(filter, "id=%d", table_index);
sprintf(string, "%d", saved_value);
if (saved_value != -1) {
/* if we have a saved_value, write it back */
if (0 != update("Zone", "enabled", filter, string)) {
return SNMP_ERR_RESOURCEUNAVAILABLE;
}
}
break;
我们通过写回保存的值来执行撤销操作,但前提是操作阶段成功检索到了旧值。
在提交(COMMIT)阶段,由于操作进展顺利,此时可以安全地永久保存更改。此阶段没有额外操作,因为操作阶段已经将值写入了Laddie守护进程中的RTA表。
case COMMIT:
/*
* Things are wor
超级会员免费看
订阅专栏 解锁全文
53

被折叠的 条评论
为什么被折叠?



