Git Product home page Git Product logo

smartsnmp's People

Contributors

begeekmyfriend avatar cbxk avatar xfguo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

smartsnmp's Issues

Unsigned integer overflow

In src/mib_tree.c there is an interface called 'mib_node_reg', and it was written as follows:

int
mib_node_reg(const oid_t *oid, uint32_t len, int callback)
{
...
  gn = mib_tree_group_insert(oid, len - 1);
...
}

Note we invoke function 'mib_tree_group_insert' with len - 1 as the second argument while len is an unsigned integer. If len equals to 0, then len - 1 will be parsed as a huge unsigned integer and passed on. Something horrible might happen... e.x. the memory will be used off and the whole system will halt.

One way to invoke this disaster is to write config/smartsnmp.conf as follows:

mib_modules = {
    [''] = 'system',
}

The oid prefix length is zero.

is this still maintained?

Is this still in use? It seems to have been professionally developed, but has seen zero commits in the last three years, which seems like incredibly bug free code. Is this just a dead code drop, or is it worth actually using this?

example/init.lua is missing?

It's referred to by the readme, but doesn't seem to exist. A guide on starting from a MIB file and writing support for a private mib would be awesome.

MIB variable type check

It needs to be checked that MIB get function can return wrong data type conflicted with that constructor function has defined.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.