diff options
Diffstat (limited to 'perl')
-rw-r--r-- | perl/ASN/ASN.pm | 2 | ||||
-rw-r--r-- | perl/AnyData_SNMP/Storage.pm | 2 | ||||
-rw-r--r-- | perl/OID/OID.pm | 2 | ||||
-rw-r--r-- | perl/SNMP/SNMP.pm | 2 | ||||
-rw-r--r-- | perl/SNMP/t/snmptest.cmd | 3 | ||||
-rw-r--r-- | perl/TrapReceiver/TrapReceiver.pm | 2 | ||||
-rw-r--r-- | perl/TrapReceiver/const-c.inc | 146 | ||||
-rw-r--r-- | perl/TrapReceiver/const-xs.inc | 90 | ||||
-rw-r--r-- | perl/agent/Support/Support.pm | 2 | ||||
-rw-r--r-- | perl/agent/agent.pm | 2 | ||||
-rw-r--r-- | perl/agent/default_store/default_store.pm | 2 | ||||
-rw-r--r-- | perl/default_store/default_store.pm | 2 |
12 files changed, 248 insertions, 9 deletions
diff --git a/perl/ASN/ASN.pm b/perl/ASN/ASN.pm index 272048c..28768ab 100644 --- a/perl/ASN/ASN.pm +++ b/perl/ASN/ASN.pm @@ -66,7 +66,7 @@ use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK @EXPORT $VERSION $AUTOLOAD); ASN_UNSIGNED ASN_UNSIGNED64 ); -$VERSION = '5.0702'; +$VERSION = '5.07021'; sub AUTOLOAD { # This AUTOLOAD is used to 'autoload' constants from the constant() diff --git a/perl/AnyData_SNMP/Storage.pm b/perl/AnyData_SNMP/Storage.pm index 489aad9..196946f 100644 --- a/perl/AnyData_SNMP/Storage.pm +++ b/perl/AnyData_SNMP/Storage.pm @@ -6,7 +6,7 @@ package AnyData::Storage::SNMP; ## scalar sets? ## multi-hosts -$AnyData::Storage::VERSION = '5.0702'; +$AnyData::Storage::VERSION = '5.07021'; use strict; use warnings; diff --git a/perl/OID/OID.pm b/perl/OID/OID.pm index fa6b162..e3e942b 100644 --- a/perl/OID/OID.pm +++ b/perl/OID/OID.pm @@ -92,7 +92,7 @@ use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK @EXPORT $VERSION $AUTOLOAD); snmp_oid_compare compare ); -$VERSION = '5.0702'; +$VERSION = '5.07021'; sub new { my $type = shift; diff --git a/perl/SNMP/SNMP.pm b/perl/SNMP/SNMP.pm index ffc5a2f..6c80468 100644 --- a/perl/SNMP/SNMP.pm +++ b/perl/SNMP/SNMP.pm @@ -7,7 +7,7 @@ # modify it under the same terms as Perl itself. package SNMP; -$VERSION = '5.0702'; # current release version number +$VERSION = '5.07021'; # current release version number use strict; use warnings; diff --git a/perl/SNMP/t/snmptest.cmd b/perl/SNMP/t/snmptest.cmd new file mode 100644 index 0000000..7225b7d --- /dev/null +++ b/perl/SNMP/t/snmptest.cmd @@ -0,0 +1,3 @@ +SNMPD => ../../agent/snmpd +SNMPTRAPD => ../../apps/snmptrapd +MIBDIR => ../../mibs diff --git a/perl/TrapReceiver/TrapReceiver.pm b/perl/TrapReceiver/TrapReceiver.pm index e7e2921..474be48 100644 --- a/perl/TrapReceiver/TrapReceiver.pm +++ b/perl/TrapReceiver/TrapReceiver.pm @@ -47,7 +47,7 @@ require NetSNMP::OID; NETSNMPTRAPD_PRE_HANDLER ); -$VERSION = '5.0702'; +$VERSION = '5.07021'; # sub new { # my $type = shift; diff --git a/perl/TrapReceiver/const-c.inc b/perl/TrapReceiver/const-c.inc new file mode 100644 index 0000000..4ebc407 --- /dev/null +++ b/perl/TrapReceiver/const-c.inc @@ -0,0 +1,146 @@ +#define PERL_constant_NOTFOUND 1 +#define PERL_constant_NOTDEF 2 +#define PERL_constant_ISIV 3 +#define PERL_constant_ISNO 4 +#define PERL_constant_ISNV 5 +#define PERL_constant_ISPV 6 +#define PERL_constant_ISPVN 7 +#define PERL_constant_ISSV 8 +#define PERL_constant_ISUNDEF 9 +#define PERL_constant_ISUV 10 +#define PERL_constant_ISYES 11 + +#ifndef NVTYPE +typedef double NV; /* 5.6 and later define NVTYPE, and typedef NV to it. */ +#endif +#ifndef aTHX_ +#define aTHX_ /* 5.6 or later define this for threading support. */ +#endif +#ifndef pTHX_ +#define pTHX_ /* 5.6 or later define this for threading support. */ +#endif + +static int +constant_25 (pTHX_ const char *name, IV *iv_return) { + /* When generated this function returned values for the list of names given + here. However, subsequent manual editing may have added or removed some. + NETSNMPTRAPD_AUTH_HANDLER NETSNMPTRAPD_HANDLER_FAIL + NETSNMPTRAPD_POST_HANDLER */ + /* Offset 15 gives the best switch position. */ + switch (name[15]) { + case 'N': + if (memEQ(name, "NETSNMPTRAPD_HANDLER_FAIL", 25)) { + /* ^ */ +#ifdef NETSNMPTRAPD_HANDLER_FAIL + *iv_return = NETSNMPTRAPD_HANDLER_FAIL; + return PERL_constant_ISIV; +#else + return PERL_constant_NOTDEF; +#endif + } + break; + case 'S': + if (memEQ(name, "NETSNMPTRAPD_POST_HANDLER", 25)) { + /* ^ */ +#ifdef NETSNMPTRAPD_POST_HANDLER + *iv_return = NETSNMPTRAPD_POST_HANDLER; + return PERL_constant_ISIV; +#else + return PERL_constant_NOTDEF; +#endif + } + break; + case 'T': + if (memEQ(name, "NETSNMPTRAPD_AUTH_HANDLER", 25)) { + /* ^ */ +#ifdef NETSNMPTRAPD_AUTH_HANDLER + *iv_return = NETSNMPTRAPD_AUTH_HANDLER; + return PERL_constant_ISIV; +#else + return PERL_constant_NOTDEF; +#endif + } + break; + } + return PERL_constant_NOTFOUND; +} + +static int +constant (pTHX_ const char *name, STRLEN len, IV *iv_return) { + /* Initially switch on the length of the name. */ + /* When generated this function returned values for the list of names given + in this section of perl code. Rather than manually editing these functions + to add or remove constants, which would result in this comment and section + of code becoming inaccurate, we recommend that you edit this section of + code, and use it to regenerate a new set of constant functions which you + then use to replace the originals. + + Regenerate these constant functions by feeding this entire source file to + perl -x + +#!/usr/bin/perl -w +use ExtUtils::Constant qw (constant_types C_constant XS_constant); + +my $types = {map {($_, 1)} qw(IV)}; +my @names = (qw(NETSNMPTRAPD_AUTH_HANDLER NETSNMPTRAPD_HANDLER_BREAK + NETSNMPTRAPD_HANDLER_FAIL NETSNMPTRAPD_HANDLER_FINISH + NETSNMPTRAPD_HANDLER_OK NETSNMPTRAPD_POST_HANDLER + NETSNMPTRAPD_PRE_HANDLER)); + +print constant_types(), "\n"; # macro defs +foreach (C_constant ("NetSNMP::TrapReceiver", 'constant', 'IV', $types, undef, 3, @names) ) { + print $_, "\n"; # C constant subs +} +print "\n#### XS Section:\n"; +print XS_constant ("NetSNMP::TrapReceiver", $types); +__END__ + */ + + switch (len) { + case 23: + if (memEQ(name, "NETSNMPTRAPD_HANDLER_OK", 23)) { +#ifdef NETSNMPTRAPD_HANDLER_OK + *iv_return = NETSNMPTRAPD_HANDLER_OK; + return PERL_constant_ISIV; +#else + return PERL_constant_NOTDEF; +#endif + } + break; + case 24: + if (memEQ(name, "NETSNMPTRAPD_PRE_HANDLER", 24)) { +#ifdef NETSNMPTRAPD_PRE_HANDLER + *iv_return = NETSNMPTRAPD_PRE_HANDLER; + return PERL_constant_ISIV; +#else + return PERL_constant_NOTDEF; +#endif + } + break; + case 25: + return constant_25 (aTHX_ name, iv_return); + break; + case 26: + if (memEQ(name, "NETSNMPTRAPD_HANDLER_BREAK", 26)) { +#ifdef NETSNMPTRAPD_HANDLER_BREAK + *iv_return = NETSNMPTRAPD_HANDLER_BREAK; + return PERL_constant_ISIV; +#else + return PERL_constant_NOTDEF; +#endif + } + break; + case 27: + if (memEQ(name, "NETSNMPTRAPD_HANDLER_FINISH", 27)) { +#ifdef NETSNMPTRAPD_HANDLER_FINISH + *iv_return = NETSNMPTRAPD_HANDLER_FINISH; + return PERL_constant_ISIV; +#else + return PERL_constant_NOTDEF; +#endif + } + break; + } + return PERL_constant_NOTFOUND; +} + diff --git a/perl/TrapReceiver/const-xs.inc b/perl/TrapReceiver/const-xs.inc new file mode 100644 index 0000000..3b05e55 --- /dev/null +++ b/perl/TrapReceiver/const-xs.inc @@ -0,0 +1,90 @@ +void +constant(sv) + PREINIT: +#ifdef dXSTARG + dXSTARG; /* Faster if we have it. */ +#else + dTARGET; +#endif + STRLEN len; + int type; + IV iv; + /* NV nv; Uncomment this if you need to return NVs */ + /* const char *pv; Uncomment this if you need to return PVs */ + INPUT: + SV * sv; + const char * s = SvPV(sv, len); + PPCODE: + /* Change this to constant(aTHX_ s, len, &iv, &nv); + if you need to return both NVs and IVs */ + type = constant(aTHX_ s, len, &iv); + /* Return 1 or 2 items. First is error message, or undef if no error. + Second, if present, is found value */ + switch (type) { + case PERL_constant_NOTFOUND: + sv = + sv_2mortal(newSVpvf("%s is not a valid NetSNMP::TrapReceiver macro", s)); + PUSHs(sv); + break; + case PERL_constant_NOTDEF: + sv = sv_2mortal(newSVpvf( + "Your vendor has not defined NetSNMP::TrapReceiver macro %s, used", + s)); + PUSHs(sv); + break; + case PERL_constant_ISIV: + EXTEND(SP, 1); + PUSHs(&PL_sv_undef); + PUSHi(iv); + break; + /* Uncomment this if you need to return NOs + case PERL_constant_ISNO: + EXTEND(SP, 1); + PUSHs(&PL_sv_undef); + PUSHs(&PL_sv_no); + break; */ + /* Uncomment this if you need to return NVs + case PERL_constant_ISNV: + EXTEND(SP, 1); + PUSHs(&PL_sv_undef); + PUSHn(nv); + break; */ + /* Uncomment this if you need to return PVs + case PERL_constant_ISPV: + EXTEND(SP, 1); + PUSHs(&PL_sv_undef); + PUSHp(pv, strlen(pv)); + break; */ + /* Uncomment this if you need to return PVNs + case PERL_constant_ISPVN: + EXTEND(SP, 1); + PUSHs(&PL_sv_undef); + PUSHp(pv, iv); + break; */ + /* Uncomment this if you need to return SVs + case PERL_constant_ISSV: + EXTEND(SP, 1); + PUSHs(&PL_sv_undef); + PUSHs(sv); + break; */ + /* Uncomment this if you need to return UNDEFs + case PERL_constant_ISUNDEF: + break; */ + /* Uncomment this if you need to return UVs + case PERL_constant_ISUV: + EXTEND(SP, 1); + PUSHs(&PL_sv_undef); + PUSHu((UV)iv); + break; */ + /* Uncomment this if you need to return YESs + case PERL_constant_ISYES: + EXTEND(SP, 1); + PUSHs(&PL_sv_undef); + PUSHs(&PL_sv_yes); + break; */ + default: + sv = sv_2mortal(newSVpvf( + "Unexpected return type %d while processing NetSNMP::TrapReceiver macro %s, used", + type, s)); + PUSHs(sv); + } diff --git a/perl/agent/Support/Support.pm b/perl/agent/Support/Support.pm index 41cf694..79529db 100644 --- a/perl/agent/Support/Support.pm +++ b/perl/agent/Support/Support.pm @@ -26,7 +26,7 @@ use vars qw(@ISA @EXPORT @EXPORT_OK $VERSION); @ISA = qw(Exporter getLeaf); @EXPORT = qw(registerAgent getOidElement setOidElement); @EXPORT_OK = qw(); -$VERSION = '5.0702'; +$VERSION = '5.07021'; use strict; use warnings; diff --git a/perl/agent/agent.pm b/perl/agent/agent.pm index 310e9e5..53c2756 100644 --- a/perl/agent/agent.pm +++ b/perl/agent/agent.pm @@ -87,7 +87,7 @@ use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK @EXPORT $VERSION $AUTOLOAD); SNMP_ERR_AUTHORIZATIONERROR SNMP_ERR_NOTWRITABLE ); -$VERSION = '5.0702'; +$VERSION = '5.07021'; sub AUTOLOAD { # This AUTOLOAD is used to 'autoload' constants from the constant() diff --git a/perl/agent/default_store/default_store.pm b/perl/agent/default_store/default_store.pm index ebac1ec..afca604 100644 --- a/perl/agent/default_store/default_store.pm +++ b/perl/agent/default_store/default_store.pm @@ -96,7 +96,7 @@ use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK @EXPORT $VERSION $AUTOLOAD); NETSNMP_DS_AGENT_MAX_GETBULKREPEATS NETSNMP_DS_AGENT_MAX_GETBULKRESPONSES ); -$VERSION = '5.0702'; +$VERSION = '5.07021'; sub AUTOLOAD { # This AUTOLOAD is used to 'autoload' constants from the constant() diff --git a/perl/default_store/default_store.pm b/perl/default_store/default_store.pm index 3d18ffc..d4499c1 100644 --- a/perl/default_store/default_store.pm +++ b/perl/default_store/default_store.pm @@ -200,7 +200,7 @@ use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK @EXPORT $VERSION $AUTOLOAD); NETSNMP_DS_LIB_KSM_SERVICE_NAME NETSNMP_DS_LIB_SBSM_LOCAL_PWD ); -$VERSION = '5.0702'; +$VERSION = '5.07021'; sub AUTOLOAD { # This AUTOLOAD is used to 'autoload' constants from the constant() |