Hello,
It seems that there is a problem with how the smiRange structure is
populated for a MIB point of the following type:
Uint32 ::= INTEGER ( 0..4294967295 )
The smiRange structure reports -1 for the minValue.Integer32 element. The
maxValue.Integer32 reports 0. It seems like these are backward. Obviously,
the minValue is equivalent to 0xFFFFFFFF which is why it appears as -1, but
why isn't this showing up as the maxValue? Am I doing something wrong?
Thanks for any help.
Brian Santarelli
--
!! 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(a)ibr.cs.tu-bs.de>.
!! See http://www.ibr.cs.tu-bs.de/projects/libsmi/ for more information.
Hello,
I'm trying to install libsmi-0.2.16 on my Linux system. Everytime I do a
'make check' I fail the smidump-orig-smiv2.test (it says that the output
differs). Does anyone know what sort of thing would be causing me to get
this error? Any help would be greatly apreciated. Thank you.
Jeramie
--
!! 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(a)ibr.cs.tu-bs.de>.
!! See http://www.ibr.cs.tu-bs.de/projects/libsmi/ for more information.
HI,
I've been checking from time-to-time on the status of LIBSMI and it
has made much progress over the last 1.5 years. Good job!
Regards,
/david t. perkins
--
!! 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(a)ibr.cs.tu-bs.de>.
!! See http://www.ibr.cs.tu-bs.de/projects/libsmi/ for more information.
Hi!
I've added a new config file directive and a simple script that allows
UNIX users to fetch and cache MIB modules, if they are not found in your
local search directories. Feel free to give it a try:
- Update the code from the anonymous CVS repository.
- Put a `cache' line into your global or private libsmi configuration
file, e.g.
cache /usr/local/share/mibs/cache /usr/local/bin/smicache \
-d /usr/local/share/mibs/cache \
-p http://www.ibr.cs.tu-bs.de/projects/libsmi/smicache/
(on one line, no \-continued lines!)
Only the last configured cache is used, i.e., if you have one in
the global smi.conf and one in your private ~/.smirc, only the
private one will be used.
- If you use a global cache directory (like the one above), and if
you are in a multi-user environment you may want to
chmod 1777 /usr/local/share/mibs/cache.
- Install the smicache script (should be done by make install).
Note that it is based on wget, which should be found by the
configure run.
- Try to use any CISCO-* MIBs, e.g. ``smilint CISCO-PING-MIB''.
Note that this caching scheme does not care a lot about failed
retrievals, file permissions, denial-of-service style hacks amoung
users using a share cache, etc...
For those who'd like to know: The `cache server' at
http://www.ibr.cs.tu-bs.de/projects/libsmi/smicache/ is nothing more
than an Apache .htaccess file:
RewriteEngine on
RewriteRule (CISCO-.*) ftp://ftp.cisco.com/pub/mibs/v2/$1.my [L]
More entries might follow. Any suggestions?
-frank
--
!! 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(a)ibr.cs.tu-bs.de>.
!! See http://www.ibr.cs.tu-bs.de/projects/libsmi/ for more information.
Next problem:
The description of 'smiGetNode()' states
" The smiGetNode() function retrieves a struct SmiNode that
represents a node of any kind. Node may be either a fully
qualified descriptor, a simple node name, or a numerical OID.
Nodes are also found, if node contains an instance identifier suffix. "
If I retrieve a node using a description that includes such a suffix,
is there any way to determine what that suffix is?
Bearing in mind that it may not necessarily be a single subidentifier,
and that some of the numbers in the string might actually be included
within the node's OID.
I'm looking for an approach that can take a string such as
"TCP-MIB::tcpConnTable.1.1.0.0.0.0.21.0.0.0.0.0"
and return either "0.0.0.0.21.0.0.0.0.0" (or a parsed equivalent
{0,0,0,0,21,0,0,0,0,0}) - without needing to duplicate much of the
internal processing of the SMI library.
Any ideas?
Dave
--
!! 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(a)ibr.cs.tu-bs.de>.
!! See http://www.ibr.cs.tu-bs.de/projects/libsmi/ for more information.
Hi Dave,
>From my experience one would not only need to split an arbitrary OID
into class (object) ID and instance ID. Rather it would be nice to split
an OID into class ID and a sequence of index sub-identifiers
accompanied with corresponding index relevant object type information.
In the second step it would be nice to get returned the values of the index
objects as well, since it might be redundant work for each API user
to convert a string sub-index OID into its string value. Especially,
when the user does not know whether the string is of variable length or
fixed (implied) length.
Regards,
Frank (the other one ;-)
--
!! 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(a)ibr.cs.tu-bs.de>.
!! See http://www.ibr.cs.tu-bs.de/projects/libsmi/ for more information.
I've been looking at trying to use libSMI in the Net-SNMP library,
(replacing our current parser) and have run into a problem whereby
libSMI crashes out in the middle of parsing HOST-RESOURCES-MIB.
This is in the middle of a large amount of Net-SNMP code, and a
noddy test program that does "exactly the same things" works fine :-(
The puzzling thing is that the crash is happening within the 'checkObjects'
routine, and the noddy program never seems to call this at all.
I realise that I'm probably doing something dumb, and will have to
track this down for myself. But I'm somewhat stuck, so am posting
here in the hope that someone can point me in the right direction.
The immediate cause of the crash is the block of code headed
"Determine the longest common OID prefix of all nodes" (parser-smi.y
lines 472-487 of libsmi-0.2.16)
The first candidate considered for 'modulePtr->prefixNodePtr' is the
node 'hrMIBAdminInfo' {1,3,6,1,2,1,25,7} - oid length 8.
This is presumably picked up from the MODULE-IDENTITY assignment.
Shortly afterwards, the node 'host' is considered as a candidate
for prefixNodePtr. This has OID {1,3,6,1,2,1,25} - length 7.
This is indeed the appropriate choice for prefixNodePtr.
The block of code in question compares the individual subidentifiers of
the current prefixNodePtr (line 479) with the equivalent subids of the
new candidate (lines 480/481).
In this case, the first seven subids all match, and the eighth subid
of 'hrMIBAdminInfo' is compared against the (non-existant) eighth subid
of 'host'. At which point the library falls over with a SEGV.
Is this a bug in the library, or my code ?
If it's a problem with the library, why doesn't the noddy program
tickle it? (I can post the code of this if that would be helpful).
Is there any advice as to how I can avoid invoking 'checkObjects'?
Or is that just applying a sticking plaster and leaving the real problem?
Dave
--
!! 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(a)ibr.cs.tu-bs.de>.
!! See http://www.ibr.cs.tu-bs.de/projects/libsmi/ for more information.