Contents

Preface

Purpose of This Guide

Who Should Read This Guide

How This Guide Is Organized

Online Document Considerations

Opening this Guide in a Web Browser

Printing from a Web Browser

How to Print the Complete Book

Documentation Conventions

Related Documentation

Agent Development Kit Documentation

Additional Documentation

Other Related Publications

Contact Information

Documentation Support

Customer Support

1. Getting Started

Administrative Tasks on UNIX Systems

User Tasks for UNIX Systems

Agent Startup Tasks on UNIX Systems

Administrative Tasks on Windows NT Systems

User Tasks on Windows NT Systems

Agent Startup Tasks on Windows NT Systems

Executing SNMP Agents Generated by the Agent Development Kit

2. Agent Development Kit Overview

Introduction

The Manager/Agent Model

Master Agents and Subagents

Managed Objects and Object Identifiers

MIB Groups

Scalar Objects and Tabular Objects

Relative and Absolute Object Identifiers

Specifying Object Identifiers Symbolically

Object Identifier Instance Indexes

SNMP Traps

Anatomy of SNMP Agents

How the Agent Works

Directory Structure

Core Libraries

3. Tools and Functions

Introduction

MIB Variable Definition Files

SNMP Request Format

Agent Tools

build_agent

imibgenall

imibprint

instsrv

snmpget

snmpgetnext

snmptest

snmptrap

snmptrapd

snmpwalk

Agent Functions

csam_get_keyword

csam_set_keyword

csam_trap_create

csam_trap_add_var_bind

csam_trap_send

bea_sendtrap

bea_snmptrap

4. Developing an SNMP Agent

Overview of the Development Process

Adding Your Custom Code to Generated Files

Additional Programming Guidelines

Community

Defining Keywords in beamgr.conf

Sample Traps Program

Row Deletion

Row Addition

Testing Your Custom Code

Building the Agent Executable

Object Identifier Lists

Sample sorted_oid_list

Sample ascii_oid_list

Testing the Agent

Installing the New Agent

Troubleshooting

MIB Modification

Using Multiple SNMP Agents

5. Generated Access Function Templates

Function Templates

init_MIBRootName

refresh_MIBRootName

test_ObjectName

set_ObjectName

test_TableName_row_create

set_TableName_row_create

Constants and Variables

DELTA_TableName_ENTRIES

INIT_TableName_ENTRIES

MAX_StringObjectName

MIBRootName_refresh_rate

v_MIBRootName

Generated Functions

get_ObjectName

Index