Hi All,

The counter32 value returned from pass_persist script never wraps around on
my system (debian ppc) it remains at 2^32-1 with counter value more than
2^32-1.
In netsnmp_internal_pass_parse() in pass_common.c

    else if (!strncasecmp(buf, "counter", 7)) {
        *var_len = sizeof(long_ret);
        long_ret = strtoul(buf2, NULL, 10);
        vp->type = ASN_COUNTER;
        return ((unsigned char *) &long_ret);

It calls strtoul to convert the value string to long (long is 4 bytes
on my system) so anything more than 2^32-1 will be -1. Should the wrap
around logic happen here? I could use counter64 but just curious if my
understanding is correct.

Appreciate your help,


Michael
_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders

Reply via email to