next up previous contents
Next: Listing der Beispiel-Kaskadendatei mib_sets.pl Up: Listings der Beispiel-Dateien Previous: Listing von subagent_standard.pl

Listing der Beispiel-Kaskadendatei mib_gets.pl

 
############################################################
# answer_get2
# Beantwortung eines get's oder getnext's
############################################################
sub answer_get2
        {
        # Parameter uebernehmen
        local($GID,$InstID,$dpi_get_packet_id,$Next)=@_;
        # Lokale Variablen
        local($GID_Laenge,$InstID_Laenge,@Wert);        
        #################################################################
        # Gesuchten Wert ermitteln
        if (!($GID eq $GROUPID)) # Falls der Subagent fuer diese Group-ID
                {                # nicht zustaendig
                &ResponseError($dpi_get_packet_id,"05") # Allgemeiner Fehler
                }

        if ($Next)      # End of MIB bei getnext
                {
                print "EndofMIB\n";
                $Wert = "ENDofMIB";
                &ResponseSuccess($dpi_get_packet_id,$GID,$InstID,$Wert);
                $Next = undef;
                }
        elsif ($InstID eq '1.0')
                {               
                $Wert = &get_1;  # Funktion fuer Instanz 1 aufrufen
                &ResponseSuccess($dpi_get_packet_id,$GID,$InstID,$Wert);
                }
        elsif ($InstID eq '2.0')
                {
                $Wert = &get_2;  # Funktion fuer Instanz 2 aufrufen
                &ResponseSuccess($dpi_get_packet_id,$GID,$InstID,$Wert);
                }
        elsif ($InstID =~ /^3\.1\.1/)
                {
                $Wert = &get_Tabelle($InstID);  # Funkt. fuer Tab. aufrufen
                &ResponseSuccess($dpi_get_packet_id,$GID,$InstID,$Wert);
                }
        elsif ($InstID =~ /^3\.1\.2/)
                {
                $Wert = &get_Tabelle($InstID);  # Funkt. fuer Tab. aufrufen
                &ResponseSuccess($dpi_get_packet_id,$GID,$InstID,$Wert);
                }
        else            # Variable nicht vorhanden
                {
                &ResponseError($dpi_get_packet_id,"05") # Allgemeiner Fehler
                }   
        }

1;# PERL - spez. Eine Dat., die mit require eingeb. wird muss mit True enden.



Copyright Munich Network Management Team