Quoting "quhp" <[EMAIL PROTECTED]>:

>   my $cmd = $_;
>   my $req = <>;
>   my $ret;
>   chomp($cmd);
>   chomp($req);
>
>   if ( $cmd eq "set" ) {            # i add
>       print "wrong-type\n";       # these lines
>       next;                       # to try
>   }                                 # how to handle set command

The input can be retreived with a '<>':

    my $input = <>; chomp($input);
    my ($type, $value) = split(' ', $input);

The '$type' variable will be 'integer', 'string' etc and '$value'
will contain the value you want to set the OID to.


The error 'wrong-type' should work, but maybe not for 'set' commands.

> When i run the command as following:
> [EMAIL PROTECTED] snmp]# snmpset -v 2c -c private localhost
> 1.3.6.1.4.1.2021.255.1.1 i 5
>
> I expect to get output something like:
>
> Error in packet.
> Reason: wrongType (The set datatype does not match the data type the agent
> expects)
>
> But in fact, the output is:
> UCD-SNMP-MIB::ucdavis.255.1.1 = INTEGER: 5

If you check the logfiles for snmpd, you'll notice that snmpd first
tries to do a GET on the OID and _THEN_ do the 'SET'... So what you
got was just the result from the 'GET', not the 'SET'.

> In addition, when i run the command a second time, the process running the
> pass_persist script will exit. It seems that such a script aren't
> "persist" as it was called :)

Then there's something wrong with the perl script. Either there's an
exit, die or other parse/compile error that makes it die.

Try this:

printf "set\n1.3.6.1.4.1.2021.255.1.1\ni 5\n" | /path/to/pass_persisttest

you SHOULD see some perl compile errors in this...


If you'd like to see a (bad!) example on how to implement SET, GET, GETNEXT and
tables ('normal'/simple tables and linked tables) in a pass_persist perlscript,
have a look at http://www.bayour.com/bacula-snmp/.


The code itself isn't to bad, it's the last part (trying to figure out what
OID comes next) that sucks. 
-- 
cryptographic terrorist SEAL Team 6 domestic disruption Marxist DES
ammonium Khaddafi supercomputer [Hello to all my fans in domestic
surveillance] arrangements iodine class struggle Peking NSA
[See http://www.aclu.org/echelonwatch/index.html for more about this]
[Or http://www.europarl.eu.int/tempcom/echelon/pdf/rapport_echelon_en.pdf]
If neither of these works, try http://www.aclu.org and search for echelon.


-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42" plasma tv or your very own
Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
_______________________________________________
Net-snmp-users mailing list
Net-snmp-users@lists.sourceforge.net
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users

Reply via email to