Intel 05-1850-004 User Manual

OA&M API for Linux Operating Systems
Programming Guide
August 2005
05-1850-004
INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. Intel products are not intended for use in medical, life saving, or life sustaining applications.
Intel may make changes to specifications and product descriptions at any time, without notice.
This OA&M API for Linux Operating Systems Programming Guide as well as the software described in it is furnished under license and may only be used or copied in accordance with the terms of the license. The information in this manual is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Intel Corporation. Intel Corporation assumes no responsibility or liability for any errors or inaccuracies that may appear in this document or any software that may be provided in association with this document.
Except as permitted by such license, no part of this document may be reproduced, stored in a retrieval system, or transmitted in any form or by any means without express written consent of Intel Corporation.
Copyright © 2002-2005 Intel Corporation. All Rights Reserved.
BunnyPeople, Celeron, Chips, Dialogic, EtherExpress, ETOX, FlashFile, i386, i486, i960, iCOMP, InstantIP, Intel, Intel Centrino, Intel Centrino logo, Intel logo, Intel386, Intel486, Intel740, IntelDX2, IntelDX4, IntelSX2, Intel Inside, Intel Inside logo, Intel NetBurst, Intel NetMerge, Intel NetStructure, Intel SingleDriver, Intel SpeedStep, Intel StrataFlash, Intel Xeon, Intel XScale, IPLink, Itanium, MCS, MMX, MMX logo, Optimizer logo, OverDrive, Paragon, PDCharm, Pentium, Pentium II Xeon, Pentium III Xeon, Performance at Your Command, skoool, Sound Mark, The Computer Inside., The Journey Inside, VTune, and Xircom are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.
* Other names and brands may be claimed as the property of others.
Publication Date: August 2005
Document Number: 05-1850-004
Intel Converged Communications, Inc. 1515 Route 10 Parsippany, NJ 07054
For Technical Support, visit the Intel Telecom Support Resources website at:
http://developer.intel.com/design/telecom/support
For Products and Services Information, visit the Intel Telecom Products website at:
http://www.intel.com/design/network/products/telecom
For Sales Offices and other contact information, visit the Where to Buy Intel Telecom Products page at:
http://www.intel.com/buy/wtb/wtb1028.htm
OA&M API for Linux Programming Guide – August 2005

Contents

Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
About This Publication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Intended Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
How to Use This Publication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Related Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1 Product Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1 OA&M API Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Features. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3 OA&M API Class Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4 Event Notification Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2 Event Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3 Error Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4 Application Development Guidelines. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.1 General Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.2 Designing CT Bus Clocking Applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.3 Designing High Availability into Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
5 Building Applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.1 Compiling and Linking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.1.1 Include Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.1.2 Required Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.2 Variables for Compiling and Linking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
OA&M API for Linux Programming Guide – August 2005 3
Contents

Figures

1 OA&M API Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2 Event Notification Framework. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4 OA&M API for Linux Programming Guide – August 2005

Revision History

This revision history summarizes the changes made in each published version of this document.
Document No. Publication Date Description of Revisions
05-1850-004 August 2005 General Guidelines section: Added information about freeing memory that is
allocated for object pointers.
05-1850-003 March 2005 Application Development Guidelines chapter : Added section about High Availability
development guidelines. High Availability is a feature of cPCI boards. The Intel® Dialogic® System Release 6.1 Feature Release 2 for Linux supports PCI and cPCI boards.
05-1850-002 November 2004 Product Description chapter: Noted that the CTPLATFORMVERSIONINFO data
structure has been updated for the current release. Noted that Springware architecture boards only generate events on the
NETWORK_ALARM_CHANNEL. DM3 architecture boards generate events on all four event service channels.
Application Development Guidelines chapter : Removed section about High
Availability development guidelines. High Availability is a feature of cPCI boards. The Intel® Dialogic® System Release 6.1 Feature Release 1 for Linux does not support cPCI boards.
05-1850-001 September 2002 Initial version of document.
OA&M API for Linux Programming Guide — August 2005 5
Revision History
6 OA&M API for Linux Programming Guide — August 2005

About This Publication

The following topics provide information about this publication:
Purpose
Intended Audience
How to Use This Publication
Related Information

Purpose

This publication provides guidelines for building applications using the Operations, Administration and Maintenance (OA&M) API. The OA&M API is used to create system management applications (for example, a customized CT bus clocking daemon).
This publication is a companion guide to the OA&M API for Linux Operating Systems Library Reference that provides details on the classes, functions, error codes and events in the OA&M library.

Intended Audience

This publication is written for the following audience:
Distributors
System Integrators
Toolkit Developers
Independent Software Vendors (ISVs)
Value Added Resellers (VARs)
Original Equipment Manufacturers (OEMs)

How to Use This Publication

Refer to this publication after you have installed the hardware and the system software that includes the OA&M API library.
This publication assumes that you are familiar with the Linux operating system and the C++ programming language. If you are developing a CT Bus management application, you should also have a thorough understanding of CT Bus clocking concepts (Primary, Secondary and Network Reference clock masters).
OA&M API for Linux Programming Guide — August 2005 7
About This Publication
The information in this guide is organized as follows:
Chapter 1, “Product Description” provides an overview of the OA&M API.
Chapter 2, “Event Handling” describes how to register with the OA&M event notification
framework and handle OA&M events.
Chapter 3, “Error Handling” describes the exception handling capabilities provided by the
OA&M API.
Chapter 4, “Application Development Guidelines” provides guidelines when developing
applications from the OA&M API.
Chapter 5, “Building Applications” provides guidelines for building applications with the
OA&M API.

Related Information

Refer to the following documents and Web sites for more information:
OA&M API for Linux Operating Systems Library Reference
Intel
Intel
Intel
High Availability for Linux Operating System Demo Guide
Intel
System Release Guide
System Release Update
http://developer.intel.com/design/telecom/support/ (for technical support)
http://www.ectf.org/ (for CT Bus clocking specifications)
®
DM3 Architecture Products on Linux Configuration Guide
®
Springware Architecture Products on Linux Configuration Guide
®
Dialogic® System Release on Linux Administration Guide
NetStructure® IPT Series on Linux Configuration Guide
8 OA&M API for Linux Programming Guide — August 2005
Loading...
+ 18 hidden pages