Next: Änderung in der Datei
Up: 4 Details der Implementierung
Previous: Änderung in der Datei
Die Bearbeitung von eingehenden Anfragen vom Manager übernehmen beim
Hauptagenten zwei Funktionen, die in der Datei snmp_agent.c
spezifiziert werden. Sie erstellen Antwortpakete zu diesen Anfragen.
Für GETBULK-Anfragen ist die Funktion bulk_var_op_list
zuständig, alle anderen Anfragen werden von parse_var_op_list
erledigt.
Da nun MIB-Variablen sowohl im Hauptagenten als auch im Subagenten gehalten
werden, müssen diese Funktionen so verändert werden, daß sie auch
auf MIB-Variablen der Subagenten zugreifen können.
Neuen Versionen dieser Funktionen sind in der Datei snmp_agent_in.c
zu finden und werden in die Datei snmp_agent.c eingefügt.
...
struct repeater {
oid name[MAX_NAME_LEN];
int length;
} repeaterList[10];
#include "snmp_agent_in.c"
...
Die Beseitigung der alten Funktionen erfolgt durch einfache Umbennung.
static int
parse_var_op_list(data, length, out_data, out_length, index, pi, action)
wird zu
static int
old_parse_var_op_list(data, length, out_data, out_length, index, pi, action)
und
static int
bulk_var_op_list(data, length, out_data, out_length, non_repeaters,
max_repetitions, index, pi)
wird zu
static int
old_bulk_var_op_list(data, length, out_data, out_length, non_repeaters,
max_repetitions, index, pi)
Copyright Munich Network Management Team