|
Packit Service |
9ccfef |
.\"
|
|
Packit Service |
9ccfef |
.\" $Id: smilint.1.in 1676 2004-08-10 10:58:12Z strauss $
|
|
Packit Service |
9ccfef |
.\"
|
|
Packit Service |
9ccfef |
.TH smilint 1 "August 10, 2004" "IBR" "SMI Tools"
|
|
Packit Service |
9ccfef |
.SH NAME
|
|
Packit Service |
9ccfef |
smilint \- syntax and semantic checks of SMIv1/v2 and SPPI modules
|
|
Packit Service |
9ccfef |
.SH SYNOPSIS
|
|
Packit Service |
9ccfef |
.B smilint
|
|
Packit Service |
9ccfef |
[
|
|
Packit Service |
9ccfef |
.B "-Vhersm"
|
|
Packit Service |
9ccfef |
] [
|
|
Packit Service |
9ccfef |
.BI "-c " file
|
|
Packit Service |
9ccfef |
] [
|
|
Packit Service |
9ccfef |
.BI "-p " module
|
|
Packit Service |
9ccfef |
] [
|
|
Packit Service |
9ccfef |
.BI "-l " level
|
|
Packit Service |
9ccfef |
] [
|
|
Packit Service |
9ccfef |
.BI "-i " error-pattern
|
|
Packit Service |
9ccfef |
]
|
|
Packit Service |
9ccfef |
.I "module(s)"
|
|
Packit Service |
9ccfef |
.SH DESCRIPTION
|
|
Packit Service |
9ccfef |
The \fBsmilint\fP program is used to check MIB or PIB modules for syntax
|
|
Packit Service |
9ccfef |
errors and semantics at some degree. SMIv1/v2 style
|
|
Packit Service |
9ccfef |
MIB modules as well as SPPI PIB modules are supported.
|
|
Packit Service |
9ccfef |
.PP
|
|
Packit Service |
9ccfef |
The rules that \fBsmilint\fP is based on are taken from RFC 1155, RFC
|
|
Packit Service |
9ccfef |
1212 and RFC 1215 for SMIv1, RFCs 2578-2580 for SMIv2, RFC 3159 for SPPI.
|
|
Packit Service |
9ccfef |
.\" and the specification of SMIng that has been a research project
|
|
Packit Service |
9ccfef |
.\" within the Network Management Research Group of the IRTF.
|
|
Packit Service |
9ccfef |
.SH OPTIONS
|
|
Packit Service |
9ccfef |
.TP
|
|
Packit Service |
9ccfef |
\fB-V, --version\fP
|
|
Packit Service |
9ccfef |
Show the smilint version and exit.
|
|
Packit Service |
9ccfef |
.TP
|
|
Packit Service |
9ccfef |
\fB-h, --help\fP
|
|
Packit Service |
9ccfef |
Show a help text and exit.
|
|
Packit Service |
9ccfef |
.TP
|
|
Packit Service |
9ccfef |
\fB-e, --error-list\fP
|
|
Packit Service |
9ccfef |
Show a list of all known error messages and exit. Error messages can
|
|
Packit Service |
9ccfef |
have associated tags, shown in braces at the end of each line. The
|
|
Packit Service |
9ccfef |
tags can be used with the -i option to ignore certain error messages.
|
|
Packit Service |
9ccfef |
.TP
|
|
Packit Service |
9ccfef |
\fB-r, --recursive\fP
|
|
Packit Service |
9ccfef |
Report errors and warnings also for recursively imported modules.
|
|
Packit Service |
9ccfef |
.TP
|
|
Packit Service |
9ccfef |
\fB-s, --severity\fP
|
|
Packit Service |
9ccfef |
Show the error severity in brackets before error messages.
|
|
Packit Service |
9ccfef |
.TP
|
|
Packit Service |
9ccfef |
\fB-m, --error-names\fP
|
|
Packit Service |
9ccfef |
Show the error names in braces before error messages.
|
|
Packit Service |
9ccfef |
.TP
|
|
Packit Service |
9ccfef |
\fB-c \fIfile\fB, --config=\fIfile\fP
|
|
Packit Service |
9ccfef |
Read \fIfile\fP instead of any other (global and user)
|
|
Packit Service |
9ccfef |
configuration file.
|
|
Packit Service |
9ccfef |
.TP
|
|
Packit Service |
9ccfef |
\fB-p \fImodule\fB, --preload=\fImodule\fP
|
|
Packit Service |
9ccfef |
Preload the module \fImodule\fP before reading the main
|
|
Packit Service |
9ccfef |
module(s). This may be helpful if an incomplete main module misses to
|
|
Packit Service |
9ccfef |
import some definitions.
|
|
Packit Service |
9ccfef |
.TP
|
|
Packit Service |
9ccfef |
\fB-l \fIlevel\fB, --level=\fIlevel\fP
|
|
Packit Service |
9ccfef |
Report errors and warnings up to the given severity \fIlevel\fP.
|
|
Packit Service |
9ccfef |
See below for a description of the error levels. The default error
|
|
Packit Service |
9ccfef |
level is 3.
|
|
Packit Service |
9ccfef |
.TP
|
|
Packit Service |
9ccfef |
\fB-i \fIprefix\fB, --ignore=\fIprefix\fP
|
|
Packit Service |
9ccfef |
Ignore all errors that have a tag which matches \fIprefix\fP.
|
|
Packit Service |
9ccfef |
A list of error tags can be retrieved by calling smilint with the
|
|
Packit Service |
9ccfef |
-e option.
|
|
Packit Service |
9ccfef |
.TP
|
|
Packit Service |
9ccfef |
.I module(s)
|
|
Packit Service |
9ccfef |
These are the modules to be checked. If a module argument represents a
|
|
Packit Service |
9ccfef |
path name (identified by containing at least one dot or slash character),
|
|
Packit Service |
9ccfef |
this is assumed to be the exact file to read. Otherwise, if a module is
|
|
Packit Service |
9ccfef |
identified by its plain module name, it is searched according to libsmi
|
|
Packit Service |
9ccfef |
internal rules. See \fBsmi_config(3)\fP for more details.
|
|
Packit Service |
9ccfef |
.SH "ERROR AND WARNING LEVELS"
|
|
Packit Service |
9ccfef |
All generated error and warning messages have an associated severity level.
|
|
Packit Service |
9ccfef |
The actual severity levels are:
|
|
Packit Service |
9ccfef |
.IP 0 3
|
|
Packit Service |
9ccfef |
Internal error, no recovery possible. Examples are memory allocation
|
|
Packit Service |
9ccfef |
failures. Errors of this level usually cause the application to abort.
|
|
Packit Service |
9ccfef |
.IP 1 3
|
|
Packit Service |
9ccfef |
Major SMI/SPPI error, recovery somehow possible but may lead to severe
|
|
Packit Service |
9ccfef |
problems. Examples are lexically unexpected characters or unknown
|
|
Packit Service |
9ccfef |
keywords. Errors of this kind usually lead to follow-on errors.
|
|
Packit Service |
9ccfef |
.IP 2 3
|
|
Packit Service |
9ccfef |
SMI/SPPI error which is probably tolerated by some
|
|
Packit Service |
9ccfef |
implementations. Examples are MIB/PIB modules which mix constructs
|
|
Packit Service |
9ccfef |
from different SMI/SPPI versions.
|
|
Packit Service |
9ccfef |
.IP 3 3
|
|
Packit Service |
9ccfef |
SMI/SPPI error which is likely tolerated by many
|
|
Packit Service |
9ccfef |
implementations. Examples are misplaced SMIv2 MODULE-IDENTITY
|
|
Packit Service |
9ccfef |
invocations or SMIv2 textual conventions derived from other textual
|
|
Packit Service |
9ccfef |
conventions.
|
|
Packit Service |
9ccfef |
.IP 4 3
|
|
Packit Service |
9ccfef |
Something which is not strictly an error but which is recommended to
|
|
Packit Service |
9ccfef |
be changed. Warnings of this level are usually considered during MIB
|
|
Packit Service |
9ccfef |
reviews.
|
|
Packit Service |
9ccfef |
.IP 5 3
|
|
Packit Service |
9ccfef |
Something that is basically correct but might be problematic in
|
|
Packit Service |
9ccfef |
certain environments or usage scenarios. Examples are warnings that
|
|
Packit Service |
9ccfef |
identifiers only differ in case or that type definitions are not used
|
|
Packit Service |
9ccfef |
within the defining module.
|
|
Packit Service |
9ccfef |
.IP 6 3
|
|
Packit Service |
9ccfef |
Messages of this level are auxiliary notices. Examples are messages
|
|
Packit Service |
9ccfef |
that point to a previous definition in case of a redefinition.
|
|
Packit Service |
9ccfef |
.PP
|
|
Packit Service |
9ccfef |
Higher levels are currently not used and lead to the same effects as
|
|
Packit Service |
9ccfef |
level 6 does. Note that errors up to level 3 are errors violating the
|
|
Packit Service |
9ccfef |
specifications and must be fixed by the responsible author. The
|
|
Packit Service |
9ccfef |
warnings generated with level 4 should be considered during normal
|
|
Packit Service |
9ccfef |
MIB/PIB reviews.
|
|
Packit Service |
9ccfef |
.SH "EXAMPLE"
|
|
Packit Service |
9ccfef |
This example checks the file RMON2-MIB in the current directory (note
|
|
Packit Service |
9ccfef |
that the `./' prefix ensures this). The error level is raised to 6
|
|
Packit Service |
9ccfef |
and warnings that claim about identifier names that exceed a length
|
|
Packit Service |
9ccfef |
of 32 characters are suppressed.
|
|
Packit Service |
9ccfef |
.nf
|
|
Packit Service |
9ccfef |
|
|
Packit Service |
9ccfef |
$ smilint -l 6 -i namelength-32 ./RMON2-MIB
|
|
Packit Service |
9ccfef |
./RMON2-MIB:3935: unexpected type restriction
|
|
Packit Service |
9ccfef |
./RMON2-MIB:3936: unexpected type restriction
|
|
Packit Service |
9ccfef |
./RMON2-MIB:3937: unexpected type restriction
|
|
Packit Service |
9ccfef |
./RMON2-MIB:3938: unexpected type restriction
|
|
Packit Service |
9ccfef |
./RMON2-MIB:3939: unexpected type restriction
|
|
Packit Service |
9ccfef |
./RMON2-MIB:3940: unexpected type restriction
|
|
Packit Service |
9ccfef |
./RMON2-MIB:4164: scalar object must not have a `read-create' access value
|
|
Packit Service |
9ccfef |
|
|
Packit Service |
9ccfef |
.fi
|
|
Packit Service |
9ccfef |
.SH "SEE ALSO"
|
|
Packit Service |
9ccfef |
The
|
|
Packit Service |
9ccfef |
.BR libsmi (3)
|
|
Packit Service |
9ccfef |
project is documented at
|
|
Packit Service |
9ccfef |
.BR "http://www.ibr.cs.tu-bs.de/projects/libsmi/" "."
|
|
Packit Service |
9ccfef |
Other commonly used MIB checkers are
|
|
Packit Service |
9ccfef |
.BR mosy "(1) and "
|
|
Packit Service |
9ccfef |
.BR smicng "(1)."
|
|
Packit Service |
9ccfef |
.SH "AUTHORS"
|
|
Packit Service |
9ccfef |
(C) 1999-2004 F. Strauss, TU Braunschweig, Germany <strauss@ibr.cs.tu-bs.de>
|
|
Packit Service |
9ccfef |
.br
|
|
Packit Service |
9ccfef |
(C) 1999-2002 J. Schoenwaelder, TU Braunschweig, Germany <schoenw@ibr.cs.tu-bs.de>
|
|
Packit Service |
9ccfef |
.br
|
|
Packit Service |
9ccfef |
(C) 2002-2003 J. Schoenwaelder, University of Osnabrueck, Germany
|
|
Packit Service |
9ccfef |
.br
|
|
Packit Service |
9ccfef |
(C) 2003-2004 J. Schoenwaelder, International University Bremen, Germany
|
|
Packit Service |
9ccfef |
.br
|
|
Packit Service |
9ccfef |
(C) 2001-2002 T. Klie, TU Braunschweig, Germany <tklie@ibr.cs.tu-bs.de>
|
|
Packit Service |
9ccfef |
.br
|
|
Packit Service |
9ccfef |
(C) 2002 M. Bunkus, TU Braunschweig, Germany <bunkus@ibr.cs.tu-bs.de>
|
|
Packit Service |
9ccfef |
.br
|
|
Packit Service |
9ccfef |
and contributions by many other people.
|
|
Packit Service |
9ccfef |
.br
|