snmp_vacm_mib_impl.c File Reference

SNMP VACM MIB module implementation. More...

#include "core/net.h"
#include "mibs/mib_common.h"
#include "mibs/snmp_vacm_mib_module.h"
#include "mibs/snmp_vacm_mib_impl.h"
#include "snmp/snmp_agent.h"
#include "snmp/snmp_agent_misc.h"
#include "core/crypto.h"
#include "encoding/asn1.h"
#include "encoding/oid.h"
#include "debug.h"

Go to the source code of this file.

Macros

#define TRACE_LEVEL   SNMP_TRACE_LEVEL
 

Functions

error_t snmpVacmMibInit (void)
 SNMP VACM MIB module initialization. More...
 
error_t snmpVacmMibLoad (void *context)
 Load SNMP VACM MIB module. More...
 
void snmpVacmMibUnload (void *context)
 Unload SNMP VACM MIB module. More...
 
void snmpVacmMibLock (void)
 Lock SNMP VACM MIB base. More...
 
void snmpVacmMibUnlock (void)
 Unlock SNMP VACM MIB base. More...
 
error_t snmpVacmMibGetContextEntry (const MibObject *object, const uint8_t *oid, size_t oidLen, MibVariant *value, size_t *valueLen)
 Get vacmContextEntry object value. More...
 
error_t snmpVacmMibGetNextContextEntry (const MibObject *object, const uint8_t *oid, size_t oidLen, uint8_t *nextOid, size_t *nextOidLen)
 Get next vacmContextEntry object. More...
 
error_t snmpVacmMibSetSecurityToGroupEntry (const MibObject *object, const uint8_t *oid, size_t oidLen, const MibVariant *value, size_t valueLen, bool_t commit)
 Set vacmSecurityToGroupEntry object value. More...
 
error_t snmpVacmMibGetSecurityToGroupEntry (const MibObject *object, const uint8_t *oid, size_t oidLen, MibVariant *value, size_t *valueLen)
 Get vacmSecurityToGroupEntry object value. More...
 
error_t snmpVacmMibGetNextSecurityToGroupEntry (const MibObject *object, const uint8_t *oid, size_t oidLen, uint8_t *nextOid, size_t *nextOidLen)
 Get next vacmSecurityToGroupEntry object. More...
 
error_t snmpVacmMibSetAccessEntry (const MibObject *object, const uint8_t *oid, size_t oidLen, const MibVariant *value, size_t valueLen, bool_t commit)
 Set vacmAccessEntry object value. More...
 
error_t snmpVacmMibGetAccessEntry (const MibObject *object, const uint8_t *oid, size_t oidLen, MibVariant *value, size_t *valueLen)
 Get vacmAccessEntry object value. More...
 
error_t snmpVacmMibGetNextAccessEntry (const MibObject *object, const uint8_t *oid, size_t oidLen, uint8_t *nextOid, size_t *nextOidLen)
 Get next vacmAccessEntry object. More...
 
error_t snmpVacmMibSetViewSpinLock (const MibObject *object, const uint8_t *oid, size_t oidLen, const MibVariant *value, size_t valueLen, bool_t commit)
 Set vacmViewSpinLock object value. More...
 
error_t snmpVacmMibGetViewSpinLock (const MibObject *object, const uint8_t *oid, size_t oidLen, MibVariant *value, size_t *valueLen)
 Get vacmViewSpinLock object value. More...
 
error_t snmpVacmMibSetViewTreeFamilyEntry (const MibObject *object, const uint8_t *oid, size_t oidLen, const MibVariant *value, size_t valueLen, bool_t commit)
 Set vacmViewTreeFamilyEntry object value. More...
 
error_t snmpVacmMibGetViewTreeFamilyEntry (const MibObject *object, const uint8_t *oid, size_t oidLen, MibVariant *value, size_t *valueLen)
 Get vacmViewTreeFamilyEntry object value. More...
 
error_t snmpVacmMibGetNextViewTreeFamilyEntry (const MibObject *object, const uint8_t *oid, size_t oidLen, uint8_t *nextOid, size_t *nextOidLen)
 Get next vacmViewTreeFamilyEntry object. More...
 

Detailed Description

SNMP VACM MIB module implementation.

License

SPDX-License-Identifier: GPL-2.0-or-later

Copyright (C) 2010-2024 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.

Author
Oryx Embedded SARL (www.oryx-embedded.com)
Version
2.4.4

Definition in file snmp_vacm_mib_impl.c.

Macro Definition Documentation

◆ TRACE_LEVEL

#define TRACE_LEVEL   SNMP_TRACE_LEVEL

Definition at line 32 of file snmp_vacm_mib_impl.c.

Function Documentation

◆ snmpVacmMibGetAccessEntry()

error_t snmpVacmMibGetAccessEntry ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
MibVariant value,
size_t *  valueLen 
)

Get vacmAccessEntry object value.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier (object name and instance identifier)
[in]oidLenLength of the OID, in bytes
[out]valueObject value
[in,out]valueLenLength of the object value, in bytes
Returns
Error code

Definition at line 1113 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibGetContextEntry()

error_t snmpVacmMibGetContextEntry ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
MibVariant value,
size_t *  valueLen 
)

Get vacmContextEntry object value.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier (object name and instance identifier)
[in]oidLenLength of the OID, in bytes
[out]valueObject value
[in,out]valueLenLength of the object value, in bytes
Returns
Error code

Definition at line 135 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibGetNextAccessEntry()

error_t snmpVacmMibGetNextAccessEntry ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
uint8_t *  nextOid,
size_t *  nextOidLen 
)

Get next vacmAccessEntry object.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier
[in]oidLenLength of the OID, in bytes
[out]nextOidOID of the next object in the MIB
[out]nextOidLenLength of the next object identifier, in bytes
Returns
Error code

Definition at line 1271 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibGetNextContextEntry()

error_t snmpVacmMibGetNextContextEntry ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
uint8_t *  nextOid,
size_t *  nextOidLen 
)

Get next vacmContextEntry object.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier
[in]oidLenLength of the OID, in bytes
[out]nextOidOID of the next object in the MIB
[out]nextOidLenLength of the next object identifier, in bytes
Returns
Error code

Definition at line 214 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibGetNextSecurityToGroupEntry()

error_t snmpVacmMibGetNextSecurityToGroupEntry ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
uint8_t *  nextOid,
size_t *  nextOidLen 
)

Get next vacmSecurityToGroupEntry object.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier
[in]oidLenLength of the OID, in bytes
[out]nextOidOID of the next object in the MIB
[out]nextOidLenLength of the next object identifier, in bytes
Returns
Error code

Definition at line 630 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibGetNextViewTreeFamilyEntry()

error_t snmpVacmMibGetNextViewTreeFamilyEntry ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
uint8_t *  nextOid,
size_t *  nextOidLen 
)

Get next vacmViewTreeFamilyEntry object.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier
[in]oidLenLength of the OID, in bytes
[out]nextOidOID of the next object in the MIB
[out]nextOidLenLength of the next object identifier, in bytes
Returns
Error code

Definition at line 1844 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibGetSecurityToGroupEntry()

error_t snmpVacmMibGetSecurityToGroupEntry ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
MibVariant value,
size_t *  valueLen 
)

Get vacmSecurityToGroupEntry object value.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier (object name and instance identifier)
[in]oidLenLength of the OID, in bytes
[out]valueObject value
[in,out]valueLenLength of the object value, in bytes
Returns
Error code

Definition at line 533 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibGetViewSpinLock()

error_t snmpVacmMibGetViewSpinLock ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
MibVariant value,
size_t *  valueLen 
)

Get vacmViewSpinLock object value.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier (object name and instance identifier)
[in]oidLenLength of the OID, in bytes
[out]valueObject value
[in,out]valueLenLength of the object value, in bytes
Returns
Error code

Definition at line 1476 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibGetViewTreeFamilyEntry()

error_t snmpVacmMibGetViewTreeFamilyEntry ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
MibVariant value,
size_t *  valueLen 
)

Get vacmViewTreeFamilyEntry object value.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier (object name and instance identifier)
[in]oidLenLength of the OID, in bytes
[out]valueObject value
[in,out]valueLenLength of the object value, in bytes
Returns
Error code

Definition at line 1741 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibInit()

error_t snmpVacmMibInit ( void  )

SNMP VACM MIB module initialization.

Returns
Error code

Definition at line 55 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibLoad()

error_t snmpVacmMibLoad ( void *  context)

Load SNMP VACM MIB module.

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

Definition at line 77 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibLock()

void snmpVacmMibLock ( void  )

Lock SNMP VACM MIB base.

Definition at line 103 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibSetAccessEntry()

error_t snmpVacmMibSetAccessEntry ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
const MibVariant value,
size_t  valueLen,
bool_t  commit 
)

Set vacmAccessEntry object value.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier (object name and instance identifier)
[in]oidLenLength of the OID, in bytes
[in]valueObject value
[in]valueLenLength of the object value, in bytes
[in]commitThis flag tells whether the changes shall be committed to the MIB base
Returns
Error code

Definition at line 764 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibSetSecurityToGroupEntry()

error_t snmpVacmMibSetSecurityToGroupEntry ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
const MibVariant value,
size_t  valueLen,
bool_t  commit 
)

Set vacmSecurityToGroupEntry object value.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier (object name and instance identifier)
[in]oidLenLength of the OID, in bytes
[in]valueObject value
[in]valueLenLength of the object value, in bytes
[in]commitThis flag tells whether the changes shall be committed to the MIB base
Returns
Error code

Definition at line 278 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibSetViewSpinLock()

error_t snmpVacmMibSetViewSpinLock ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
const MibVariant value,
size_t  valueLen,
bool_t  commit 
)

Set vacmViewSpinLock object value.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier (object name and instance identifier)
[in]oidLenLength of the OID, in bytes
[in]valueObject value
[in]valueLenLength of the object value, in bytes
[in]commitThis flag tells whether the changes shall be committed to the MIB base
Returns
Error code

Definition at line 1457 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibSetViewTreeFamilyEntry()

error_t snmpVacmMibSetViewTreeFamilyEntry ( const MibObject object,
const uint8_t *  oid,
size_t  oidLen,
const MibVariant value,
size_t  valueLen,
bool_t  commit 
)

Set vacmViewTreeFamilyEntry object value.

Parameters
[in]objectPointer to the MIB object descriptor
[in]oidObject identifier (object name and instance identifier)
[in]oidLenLength of the OID, in bytes
[in]valueObject value
[in]valueLenLength of the object value, in bytes
[in]commitThis flag tells whether the changes shall be committed to the MIB base
Returns
Error code

Definition at line 1499 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibUnload()

void snmpVacmMibUnload ( void *  context)

Unload SNMP VACM MIB module.

Parameters
[in]contextPointer to the SNMP agent context

Definition at line 92 of file snmp_vacm_mib_impl.c.

◆ snmpVacmMibUnlock()

void snmpVacmMibUnlock ( void  )

Unlock SNMP VACM MIB base.

Definition at line 116 of file snmp_vacm_mib_impl.c.