Comments (4)
Yes that is absolutely fine because session
is actually declared at the top of your meander
due to "hoisting". https://www.w3schools.com/js/js_hoisting.asp
It isn't initialized until the var session = setupV3Session
line, but since that runs before the session.close
line in the meanderDoneCB
executes that is also fine.
from node-net-snmp.
Yes, the done callback is a good place to call session.close()
. You want to make sure you always do it, regardless of errors.
from node-net-snmp.
Thank you--I thought so.
In this function I call meander, the session.close() happens in the done callback. But the session object is not passed into the callback. Since this is a promise, I think it's ok to use session still.
function meander(bindaddress, hostaddress, hostport, username, authtypestr, authpass, privtypestr, privpass, contextname, contextengine, oneoid)
{
return new Promise((resolve, reject) => {
function meanderDoneCB (error)
{
if (error)
reject(error.toString ());
// done witout error
resolve();
session.close();
}
function meanderFeedCB (varbinds)
{
for (var i = 0; i < varbinds.length; i++)
{
if (snmp.isVarbindError (varbinds[i]))
{
reject(snmp.varbindError(varbinds[i]));
}
else
{
switch (varbinds[i].type)
{
case snmp.ObjectType.Boolean:
// value is a boolean
console.log(`${String(varbinds[i].oid)}: ${varbinds[i].value.toString()} (Boolean)`);
break;
...
}
}
}
}
var session = setupV3Session(bindaddress, hostaddress, hostport, username, authtypestr, authpass, privtypestr, privpass, contextname, contextengine);
var maxRepetitions = 20;
session.walk(oneoid, maxRepetitions, meanderFeedCB, meanderDoneCB);
});
}
from node-net-snmp.
Thank you!
from node-net-snmp.
Related Issues (20)
- Subagent Stops Processing Requests HOT 4
- Create SNMP Server and client with NodeJS HOT 2
- ParseInt in column number fails on 2+ whitespace characters between Object name and ID HOT 2
- Support for SMIv1 type definitions HOT 9
- `readUInt32` issues HOT 4
- Update MIB tree from existing MIB file HOT 1
- agent v3 - discovery not completed HOT 1
- Is there a way to get metric information using MIB instead of OID to external snmp agent that already exists? HOT 10
- Types and possible bug HOT 1
- session.subtree: feedCallback return value not checked (version 3.9.7) HOT 3
- Question: guidance on building a callback-driven agent HOT 3
- RequestInvalidError: Unknown type '[object Object]' in request HOT 2
- RequestFailedError: EndOfMibView: for session.table() against Agent with MIB with a single table HOT 4
- How can I assign a handler to provider loaded from MIB via registerProviders method? HOT 1
- MIBs with middle entries that do not include object name annotations fail to compile correctly HOT 3
- Incorrect OID construction for MIBs with standard object name conflicts HOT 7
- SNMP-JS
- Agentx command handler function async and error HOT 2
- registerProviders crashes at 851 providers HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from node-net-snmp.