JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Solaris System Management Agent Developer's Guide
search filter icon
search icon

Document Information

Preface

1.  Introduction to the System Management Agent

2.  Creating Modules

3.  Data Modeling

4.  Storing Module Data

5.  Implementing Alarms

6.  Deploying Modules

7.  Multiple Instance Modules

8.  Long-Running Data Collection

9.  Entity MIB

About the Entity MIB

SMA Entity MIB Implementation

Using the Entity MIB

How to Set Up the Agent to Use the Entity MIB

Entity MIB API

Physical Table Functions

allocPhysicalEntry()

Synopsis

Description

Returns

getPhysicalEntry()

Synopsis

Description

Returns

deletePhysicalTableEntry()

Synopsis

Description

Returns

makePhysicalTableEntryStale()

Synopsis

Description

Returns

makePhysicalTableEntryLive()

Synopsis

Description

Returns

getPhysicalStaleEntry()

Synopsis

Description

Returns

getAllChildrenFromPhysicalContainedIn()

Synopsis

Description

Returns

Physical Contains Table Functions

addPhysicalContainsTableEntry()

Synopsis

Description

Returns

deletePhysicalContainsTableEntry()

Synopsis

Description

Returns

deletePhysicalContainsParentIndex()

Synopsis

Description

Returns

deletePhysicalContainsChildIndex()

Synopsis

Description

Returns

getPhysicalContainsChildren()

Synopsis

Description

Returns

Logical Table Functions

allocLogicalEntry()

Synopsis

Description

Returns

getLogicalTableEntry()

Synopsis

Description

Returns

deleteLogicalTableEntry()

Synopsis

Description

Returns

makeLogicalTableEntryStale()

Synopsis

Description

Returns

makeLogicalTableEntryLive()

Synopsis

Description

Returns

getLogicalStaleEntry()

Synopsis

Description

Returns

LP Mapping Table Functions

addLPMappingTableEntry()

Synopsis

Description

Returns

deleteLPMappingTableEntry()

Synopsis

Description

Returns

deleteLPMappingLogicalIndex()

Synopsis

Description

Returns

deleteLPMappingPhysicalIndex()

Synopsis

Description

Returns

Alias Mapping Table Functions

addAliasMappingTableEntry()

Synopsis

Description

Returns

deleteAliasMappingTableEntry()

Synopsis

Description

Returns

deleteAliasMappingLogicalIndex()

Synopsis

Description

Returns

deleteAliasMappingPhysicalIndex()

Synopsis

Description

Returns

Header Files for Entity MIB Functions

entPhysicalEntry_t Structure

entLogicalEntry_t Structure

Tips for Using Entity MIB Functions

demo_module_11 Code Example for Entity MIB

10.  Migration of Solstice Enterprise Agents to the System Management Agent

A.  SMA Resources

B.  MIBs Implemented in SMA

Glossary

Index

SMA Entity MIB Implementation

The System Management Agent provides a module called libentity.so for use with the Entity MIB. This module is contained in the /usr/sfw/include directory.

The libentity.so module performs the following tasks when loaded:

If you want your module to use the Entity MIB, you must load the libentity.so module into the agent before you load your module.

Using the Entity MIB

To use the Entity MIB, you must write a module to create objects that reflect the devices that you want to manage. You use the objects to populate the empty tables that are created by the libentity.so module. Your module must use the API functions that are documented in Entity MIB API. Use demo_module_11, which is described in demo_module_11 Code Example for Entity MIB, to see how that module uses the API functions. The demo_module_11 also contains table header files that you need to use the API functions. See Header Files for Entity MIB Functions.

After you write your module, you can use the following procedure to set up the agent to use the Entity MIB and your module.

How to Set Up the Agent to Use the Entity MIB

  1. As root, add the appropriate dlmod statement for your operating system in the agent's configuration file /etc/sma/snmp/snmpd.conf.
    • On a 64-bit Solaris Operating System on SPARC:
      dlmod entity /usr/sfw/lib/sparcv9/libentity.so
    • On a 32-bit Solaris Operating System:
      dlmod entity /usr/sfw/lib/libentity.so
  2. In the /etc/sma/snmp/snmpd.conf file, insert a dlmod statement for your module after the dlmod statement for the libentity.so.

    For example, suppose your module is named libacmerouter.so. The module is located in /home/username/lib. You would enter the following line:

    dlmod acmerouter /home/username/lib/libacmerouter.so

    Your module must be loaded after the entity module because your module is dependent upon the entity module.

  3. Restart the SNMP agent.
    # svcadm restart svc:/application/management/sma:default