
HI,
FYI...in case you missed seeing this.
X-Mailer: exmh version 2.0.2 To: Harrie Hazewinkel harrie@covalent.net Cc: net-snmp-coders@lists.sourceforge.net Subject: Re: [PATCH] sturcture name change. From: Dave Shield D.T.Shield@csc.liv.ac.uk Sender: net-snmp-coders-admin@lists.sourceforge.net X-BeenThere: net-snmp-coders@lists.sourceforge.net X-Mailman-Version: 2.0.5 List-Help: mailto:net-snmp-coders-request@lists.sourceforge.net?subject=help List-Post: mailto:net-snmp-coders@lists.sourceforge.net List-Subscribe: http://lists.sourceforge.net/lists/listinfo/net-snmp-coders, mailto:net-snmp-coders-request@lists.sourceforge.net?subject=subscribe List-Id: A list for net-snmp developers to converse over <net-snmp-coders.lists.sourceforge.net> List-Unsubscribe: http://lists.sourceforge.net/lists/listinfo/net-snmp-coders, mailto:net-snmp-coders-request@lists.sourceforge.net?subject=unsubscribe List-Archive: http://lists.sourceforge.net/archives//net-snmp-coders/ Date: Thu, 12 Jul 2001 11:29:31 +0100
I've occasionally had some problems with libSMI objecting to
some of the UCD-provided MIB files. The effect of this being that the MIB initialisation fails, and the UCD tools refuse to run (without saying anything, of course).
I've just been bitten by this again, and investigated in more detail. The problem appears to lie with the severely cut-down version of SNMPv2-SMI that we've traditionally shipped. This is missing a number of core definitions, that were built into our parser, but libSMI is expecting to find here. If you copy the 'normal' version of SNMPv2-SMI into place, then the library seems happy.
As a placeholder, in case anyone wants to investigate *exactly* what's going wrong - the problem bites at line 645 of SNMPv2-TC. This is where the Textual Convention "TimeStamp" is being defined, using the base type "TimeTicks" from SNMPv2-SMI (which is missing from our version). libSMI recognises this error, and calls 'printError' to display unknown type `TimeTicks'
But shortly after this, it calls 'printError' again, with a (fatal) 'internal error' - at which point it bombs out.
This appears to correspond to
typeDeclarationRHS: TEXTUAL_CONVENTION
block (lines 1719ff of parser-smi.y in my version) which includes:
if (($10) && !($10->export.name)) { /* * If the Type we found has just been * defined, we don't have to allocate * a new one. */ $$ = $10; } else { if (!($10)) smiPrintError(thisParserPtr, ERR_INTERNAL); /* * Otherwise, we have to allocate a * new Type struct, inherited from $10. */ $$ = duplicateType($10, 0, thisParserPtr); }
It's that ERR_INTERNAL that seems to be the trigger.
I'm not familiar enough with either libSMI, or yacc/bison, to offer any suggestions of how this abort could be avoided.
But a clean copy of the SMI file seems to solve the problem, so personally, I'm happy to leave it like that (for now, at least).
Dave
Net-snmp-coders mailing list Net-snmp-coders@lists.sourceforge.net http://lists.sourceforge.net/lists/listinfo/net-snmp-coders
-- !! This message is brought to you via the `libsmi' mailing list. !! Please do not reply to this message to unsubscribe. To subscribe or !! unsubscribe, send a mail message to libsmi-request@ibr.cs.tu-bs.de. !! See http://www.ibr.cs.tu-bs.de/projects/libsmi/ for more information.