# Mibble Features

## Existing Features

This is a summary of the features currently present in Mibble.

- Full support for both SMIv1 and SMIv2
  The library contains full support for both SNMP SMI versions and comes bundled with all the standard IANA and IETF MIB files.
- Support for much of the ASN.1 syntax
  Mibble not only supports parsing SNMP MIB files, but also parses generic ASN.1 files (with some exceptions). This makes it possible to use the library in non-SNMP contexts as well.
- Proper import & symbol handling
  Each referenced module is imported either from the bundled MIB files or from an externally supplied source (filesystem or URL). Symbols can also be prefixed with their module names to avoid possible naming conflicts.
- Full access to all type information
  All the type and value information from the files are available to an application through public methods in the library. A complete in-memory structure is created for quick access to all this information.
- Detailed and precise error messages
  Messages generated when an error is found always describe the problem with all required details. Error messages also contains a short except from the MIB file.
- Complete source code available
  The source code for the complete library is freely available under either the GNU GPL or a commercial license. This makes it easy to check details in the implementation or to make small adjustments.
- Commercial license available for proprietary software
  The GNU GPL licence does not allow distribution of products based on Mibble unless they are licensed under the GNU GPL themselves. A commercial license containing the full source code for Mibble is therefore available for sale.

## Upcoming Features

No commitment has been made regarding which new features will be present in future releases. See the TODO-list for a the currently known future improvements.