Webserver+3d print

Dependents:   Nucleo

Embed: (wiki syntax)

« Back to documentation index

snmp_agent.c File Reference

snmp_agent.c File Reference

SNMP agent (Simple Network Management Protocol) More...

Go to the source code of this file.

Functions

void snmpAgentGetDefaultSettings (SnmpAgentSettings *settings)
 Initialize settings with default values.
error_t snmpAgentInit (SnmpAgentContext *context, const SnmpAgentSettings *settings)
 SNMP agent initialization.
error_t snmpAgentStart (SnmpAgentContext *context)
 Start SNMP agent.
error_t snmpAgentLoadMib (SnmpAgentContext *context, const MibModule *module)
 Load a MIB module.
error_t snmpAgentUnloadMib (SnmpAgentContext *context, const MibModule *module)
 Unload a MIB module.
error_t snmpAgentSetEngineBoots (SnmpAgentContext *context, int32_t engineBoots)
 Set the value of the snmpEngineBoots variable.
error_t snmpAgentGetEngineBoots (SnmpAgentContext *context, int32_t *engineBoots)
 Get the value of the snmpEngineBoots variable.
error_t snmpAgentSetEnterpriseOid (SnmpAgentContext *context, const uint8_t *enterpriseOid, size_t enterpriseOidLen)
 Set enterprise OID.
error_t snmpAgentSetContextEngine (SnmpAgentContext *context, const void *contextEngine, size_t contextEngineLen)
 Set context engine identifier.
error_t snmpAgentSetContextName (SnmpAgentContext *context, const char_t *contextName)
 Set context name.
error_t snmpAgentCreateCommunity (SnmpAgentContext *context, const char_t *community, SnmpAccess mode)
 Create a new community string.
error_t snmpAgentDeleteCommunity (SnmpAgentContext *context, const char_t *community)
 Remove a community string.
error_t snmpAgentCreateUser (SnmpAgentContext *context, const char_t *username, SnmpAccess mode, SnmpKeyFormat keyFormat, SnmpAuthProtocol authProtocol, const void *authKey, SnmpPrivProtocol privProtocol, const void *privKey)
 Create a new user.
error_t snmpAgentDeleteUser (SnmpAgentContext *context, const char_t *username)
 Remove existing user.
error_t snmpAgentSendTrap (SnmpAgentContext *context, const IpAddr *destIpAddr, SnmpVersion version, const char_t *username, uint_t genericTrapType, uint_t specificTrapCode, const SnmpTrapObject *objectList, uint_t objectListSize)
 Send SNMP trap message.
void snmpAgentTask (SnmpAgentContext *context)
 SNMP agent task.

Detailed Description

SNMP agent (Simple Network Management Protocol)

License

Copyright (C) 2010-2017 Oryx Embedded SARL. All rights reserved.

This file is part of CycloneTCP Open.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Description

SNMP is a simple protocol by which management information for a network element may be inspected or altered by logically remote users. Refer to the following RFCs for complete details:

  • RFC 1157: A Simple Network Management Protocol (SNMP)
  • RFC 1905: Protocol Operations for Version 2 of the Simple Network Management Protocol (SNMPv2)
  • RFC 3410: Introduction and Applicability Statements for Internet Standard Management Framework
  • RFC 3411: An Architecture for Describing SNMP Management Frameworks
  • RFC 3412: Message Processing and Dispatching for the SNMP
  • RFC 3413: Simple Network Management Protocol (SNMP) Applications
  • RFC 3584: Coexistence between Version 1, Version 2, and Version 3 of SNMP Framework
Author:
Oryx Embedded SARL (www.oryx-embedded.com)
Version:
1.7.6

Definition in file snmp_agent.c.


Function Documentation

error_t snmpAgentCreateCommunity ( SnmpAgentContext context,
const char_t *  community,
SnmpAccess  mode 
)

Create a new community string.

Parameters:
[in]contextPointer to the SNMP agent context
[in]communityNULL-terminated string that contains the community name
[in]modeAccess rights
Returns:
Error code

Definition at line 546 of file snmp_agent.c.

error_t snmpAgentCreateUser ( SnmpAgentContext context,
const char_t *  username,
SnmpAccess  mode,
SnmpKeyFormat  keyFormat,
SnmpAuthProtocol  authProtocol,
const void *  authKey,
SnmpPrivProtocol  privProtocol,
const void *  privKey 
)

Create a new user.

Parameters:
[in]contextPointer to the SNMP agent context
[in]usernameNULL-terminated string that contains the user name
[in]modeAccess rights
[in]keyFormatKey format (ASCII password or raw key)
[in]authProtocolAuthentication type
[in]authKeyKey to be used for data authentication
[in]privProtocolPrivacy type
[in]privKeyKey to be used for data encryption
Returns:
Error code

Definition at line 592 of file snmp_agent.c.

error_t snmpAgentDeleteCommunity ( SnmpAgentContext context,
const char_t *  community 
)

Remove a community string.

Parameters:
[in]contextPointer to the SNMP agent context
[in]communityNULL-terminated string that contains the community name
Returns:
Error code

Definition at line 567 of file snmp_agent.c.

error_t snmpAgentDeleteUser ( SnmpAgentContext context,
const char_t *  username 
)

Remove existing user.

Parameters:
[in]contextPointer to the SNMP agent context
[in]usernameNULL-terminated string that contains the user name
Returns:
Error code

Definition at line 758 of file snmp_agent.c.

void snmpAgentGetDefaultSettings ( SnmpAgentSettings settings )

Initialize settings with default values.

Parameters:
[out]settingsStructure that contains SNMP agent settings

Definition at line 69 of file snmp_agent.c.

error_t snmpAgentGetEngineBoots ( SnmpAgentContext context,
int32_t *  engineBoots 
)

Get the value of the snmpEngineBoots variable.

Parameters:
[in]contextPointer to the SNMP agent context
[out]engineBootsNumber of times the SNMP engine has re-booted
Returns:
Error code

Definition at line 404 of file snmp_agent.c.

error_t snmpAgentInit ( SnmpAgentContext context,
const SnmpAgentSettings settings 
)

SNMP agent initialization.

Parameters:
[in]contextPointer to the SNMP agent context
[in]settingsSNMP agent specific settings
Returns:
Error code

Definition at line 96 of file snmp_agent.c.

error_t snmpAgentLoadMib ( SnmpAgentContext context,
const MibModule module 
)

Load a MIB module.

Parameters:
[in]contextPointer to the SNMP agent context
[in]modulePointer the MIB module to be loaded
Returns:
Error code

Definition at line 230 of file snmp_agent.c.

error_t snmpAgentSendTrap ( SnmpAgentContext context,
const IpAddr destIpAddr,
SnmpVersion  version,
const char_t *  username,
uint_t  genericTrapType,
uint_t  specificTrapCode,
const SnmpTrapObject objectList,
uint_t  objectListSize 
)

Send SNMP trap message.

Parameters:
[in]contextPointer to the SNMP agent context
[in]destIpAddrDestination IP address
[in]versionSNMP version identifier
[in]usernameUser name or community name
[in]genericTrapTypeGeneric trap type
[in]specificTrapCodeSpecific code
[in]objectListList of object names
[in]objectListSizeNumber of entries in the list
Returns:
Error code

Definition at line 813 of file snmp_agent.c.

error_t snmpAgentSetContextEngine ( SnmpAgentContext context,
const void *  contextEngine,
size_t  contextEngineLen 
)

Set context engine identifier.

Parameters:
[in]contextPointer to the SNMP agent context
[in]contextEnginePointer to the context engine identifier
[in]contextEngineLenLength of the context engine identifier
Returns:
Error code

Definition at line 468 of file snmp_agent.c.

error_t snmpAgentSetContextName ( SnmpAgentContext context,
const char_t *  contextName 
)

Set context name.

Parameters:
[in]contextPointer to the SNMP agent context
[in]contextNameNULL-terminated string that contains the context name
Returns:
Error code

Definition at line 505 of file snmp_agent.c.

error_t snmpAgentSetEngineBoots ( SnmpAgentContext context,
int32_t  engineBoots 
)

Set the value of the snmpEngineBoots variable.

Parameters:
[in]contextPointer to the SNMP agent context
[in]engineBootsNumber of times the SNMP engine has re-booted
Returns:
Error code

Definition at line 365 of file snmp_agent.c.

error_t snmpAgentSetEnterpriseOid ( SnmpAgentContext context,
const uint8_t *  enterpriseOid,
size_t  enterpriseOidLen 
)

Set enterprise OID.

Parameters:
[in]contextPointer to the SNMP agent context
[in]enterpriseOidPointer to the enterprise OID
[in]enterpriseOidLenLength of the enterprise OID
Returns:
Error code

Definition at line 435 of file snmp_agent.c.

error_t snmpAgentStart ( SnmpAgentContext context )

Start SNMP agent.

Parameters:
[in]contextPointer to the SNMP agent context
Returns:
Error code

Definition at line 199 of file snmp_agent.c.

void snmpAgentTask ( SnmpAgentContext context )

SNMP agent task.

Parameters:
[in]contextPointer to the SNMP agent context

Definition at line 977 of file snmp_agent.c.

error_t snmpAgentUnloadMib ( SnmpAgentContext context,
const MibModule module 
)

Unload a MIB module.

Parameters:
[in]contextPointer to the SNMP agent context
[in]modulePointer the MIB module to be unloaded
Returns:
Error code

Definition at line 310 of file snmp_agent.c.