Library Information

This page provides details about the libraries of the NetApp Manageability SDK for application integration in C and C++, Perl, Java, C#, VB.NET, PowerShell, Python, and Ruby.

Libraries for C and C++

The NetApp Manageability SDK provides both static libraries and dynamic libraries for application integration.

The following libraries should be linked to the applications that use the static libraries of the SDK:

Platform

Interfaces

Windows

libnetapp.lib

libadt.lib

libxml.lib

ws2_32.lib

Different versions of these libraries for debug applications, multithreaded applications, multithreaded debug applications, and 64-bit platforms are also available in the SDK.

For debug versions of your code, use the versions with "d" appended to the file name—for example, libadtd.lib.

For multithreaded applications, use the versions with "md" appended to the file name—for example, libadtd_md.lib.

For multithreaded applications in debug mode, use the versions with "mdd" appended to the file name—for example, libadtd_mdd.lib.

The libraries for the 64-bit platform are at lib\nt\x64 and lib\nt\ia64.

Linux, Solaris, HP-UX, AIX, or VMware ESX, FreeBSD

libnetapp.a

libadt.a

libxml.a

The library details for different operating systems are as follows:

  • Linux 32-bit libraries are at lib\linux.

  • Linux 64-bit libraries are at lib\linux-64.

  • Solaris 32-bit SPARC libraries are at lib\solaris.

  • Solaris 64-bit SPARC libraries are at lib\solaris-64.

  • Solaris i386 libraries are at lib\solaris-i386.

  • Solaris x64-bit libraries are at lib\solaris-x86_64.

  • HP-UX PA-RISC 32-bit are at lib\hpux.

  • HP-UX 64-bit IA64 are at lib\hpux-ia64.

  • AIX 32-bit libraries are at lib\aix.

  • AIX 64-bit libraries are at lib\aix-64.

  • VMware ESX server and VMware ESXi server 32-bit libraries are at lib\linux.

  • VMware ESX server and VMware ESXi server 64-bit libraries are at lib\linux-64.

  • FreeBSD libraries are at lib\freebsd-amd64.

 

The following libraries should be linked to the applications that use the dynamic libraries of the SDK:

Platform

Interfaces

Windows

zephyr.dll, zephyr.lib, ws2_32.lib (release mode)

zephyrd.dll, zephyrd.lib, ws2_32.lib (debug mode)

The libraries for the 64-bit platform are at lib\nt\x64.

The libraries for the IA64-bit platform are at lib\nt\ia64.

Solaris

libnetapp.so

libadt.so

libxml.so

The paths for different libraries are as follows:

  • Solaris 32-bit SPARC libraries are at lib\solaris.

  • Solaris 64-bit SPARC libraries are at lib\solaris-64.

  • Solaris i386 libraries are at lib\solaris-i386.

  • Solaris x64-bit libraries are at lib\solaris-x86_64.

Linux

libnetapp.so

libadt.so

libxml.so

 

libnetappmgmt.so

You can either use libnetappmgmt.so or use libnetapp.so, libadt.so, and libxml.so together.

The paths for different libraries are as follows:

  • Linux 32-bit libraries are at lib\linux.

  • Linux 64-bit libraries are at lib\linux-64.

HP-UX PA-RISC 32-bit

libnetapp.sl

libadt.sl

libxml.sl

 

The path for the libraries is lib\hpux.

 

HP-UX 64-bit IA64

libnetapp.so

libadt.so

libxml.so

 

The path for the libraries is lib\hpux-ia64.

 

AIX

libnetapp.so

libadt.so

libxml.so

 

libnetappmgmt.so

You can either use libnetappmgmt.so or use libnetapp.so, libadt.so, and libxml.so together.

The paths for different for 32-bit and 64-bit libraries are as follows:

  • AIX 32-bit libraries are at lib\aix.

  • AIX 64-bit libraries are at lib\aix-64.

VMware ESX server and VMware ESXi server

libnetapp.so

libadt.so

libxml.so

The paths for different libraries are as follows:

  • 32-bit libraries are at lib\linux.

  • 64-bit libraries are at lib\linux-64.

FreeBSD

libnetapp.so

libadt.so

libxml.so

These libraries are at lib\freebsd-amd64

 

The following environment variables are required to include the SDK libraries:

Interfaces

Description

libcrypto

libssl

These libraries are required in your application on a UNIX-like platform.

On Solaris, Linux, VMware ESX server, VMware ESXi server, HP-UX 64-bit IA64, and FreeBSD you must create a softlink to the libcrypto and libssl libraries as follows:

ln -s libcrypto.so libcrypto.so.1.0.2

ln -s libssl.so libssl.so.1.0.2

 

For HP-UX PA-RISC 32-bit:

ln -s libcrypto.sl libcrypto.sl.1.0.2

ln -s libssl.sl libssl.sl.1.0.2

On the Linux platform, if you use libnetappmgmt.so, you do not have to use libcrypto and libssl.

libeay32.dll

ssleay32.dll

These libraries are required in your application on the Windows platform.

ntapadmin.dll

This library is required for using remote procedure call transport in your application on the Windows platform.

Modules for Perl and Perl API bindings

The following modules should be linked to applications that use the NetApp Manageability SDK interfaces:

Interfaces

Description

NaServer.pm

NaElement.pm

NaErrno.pm

DfmErrno.pm

These modules are used for Perl application integration.

These are at lib\perl\NetApp.

LWP::UserAgent.pm

This module is used to send requests to and receive responses from the World Wide Web server.

XML::Parser.pm

This module parses XML documents.

Net::SSLeay

This module is required when using HTTPS transport.

This module is dependent on the following:

  • Net::SSLeay module

You can download Net::SSLeay from http://www.cpan.org/modules/by-module/Net/.

  • ssleay32.dll and libeay32.dll on the Windows platform

You can download these modules from http://www.openssl.org/.

To verify the OnCommand Unified Manager server certificate using certificate-based authentication, you must have Net::SSLeay 1.36 or later, which should be built with OpenSSL library 0.9.8 or later.

 Socket.pm

This module is a translation of the C socket.h file.

OntapClusterAPI.pm

Ontap7ModeAPI.pm

OCUMAPI.pm

OCUMClassicAPI.pm

These modules contain all the supported API definitions for Perl API bindings. These modules are used for API Bindings validation and should be present in Perl @INC for successful execution of the application when bindings validation is enabled.

 

You can download the LWP::UserAgent.pm, XML::Parser.pm, and Net::SSLeay modules from http://www.cpan.org/modules/by-module/Net/.

JAR file for Java

The following Java interface should be linked to applications that use the NetApp Manageability SDK interfaces:

Interface

Description

manageontap-5.4.jar

This JAR file is used for Java application integration. It contains all the Java library classes of the NetApp Manageability SDK.

The JAR file is at lib\java\classes.

For RPC support, you require ntapadmin.dll, which is at lib\nt.

 

Libraries for C#, VB.NET, and PowerShell

The following is the interface for C#, VB.NET, and PowerShell that should be linked to applications that use the NetApp Manageability SDK interfaces:

Interface

Description

ManageOntap.dll

This library is used for Microsoft .NET application integration. It contains all the library classes of the NetApp Manageability SDK.

The DLL is at lib\DotNet.

For RPC support, you require ntapadmin.dll, which is at lib\nt.

To verify the OnCommand Unified Manager server certificate using certificate-based authentication, you might have to use Windows hotfix, which is available at: http://support.microsoft.com/kb/968730.

 

Libraries for Python

The following Python libraries should be linked to applications that use the NetApp Manageability SDK interfaces:

Interface

Description

NaServer.py

NaElement.py

These modules are used for Python application integration.

They are at lib\python\NetApp\.

DfmErrno.py

NaErrno.py

These modules are used to obtain information about the error messages.

They are at lib\python\NetApp\.

Libraries for Ruby

The following Ruby libraries should be linked to applications that use the NetApp Manageability SDK interfaces:

Interface

Description

NaServer.rb

NaElement.rb

These modules are used for Ruby application integration.

They are at lib\ruby\NetApp\.

DfmErrno.rb

NaErrno.rb

These modules are used to obtain information about the error messages.

They are at lib\ruby\NetApp\.

 

WSDL file for Web services

The WSDL file for Web services is at /src/wsdl/.