Main Page | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

vipquerysystem.c File Reference

#include <string.h>
#include "vipl_priv.h"

Go to the source code of this file.

Functions

VIP_ENTRY_POINT VIP_RETURN VipQuerySystemManagementInfo (VIP_NIC_HANDLE NicHandle, VIP_ULONG InfoType, VIP_PVOID SysManInfo)


Detailed Description

The VI-GM function VipQuerySystemManagementInfo implementation.

Definition in file vipquerysystem.c.


Function Documentation

VIP_ENTRY_POINT VIP_RETURN VipQuerySystemManagementInfo VIP_NIC_HANDLE  NicHandle,
VIP_ULONG  InfoType,
VIP_PVOID  SysManInfo
 

VipQuerySystemManagementInfo returns system management information about the specified NIC. The InfoType parameter allows the caller to specify specific pieces of information. The types of information that can be retrieved are VI Provider specific. The content of the System Management Information Structure is VI Provider specific.

The only defined InfoType is VIP_SMI_AUTODISCOVERY. This provides a mechanism for applications to access auto-discovery information to get the network addresses of other nodes that are attached to the SAN fabric.

The SysManInfo structure is interpreted as both an IN and OUT parameter for the network configuration request. The structure is as follows:

  • VIP_ULONG NumberOfHops: Specifies the maximum depth of interest to the requester. Only network addresses within the specified depth are returned. Depth is defined as the number of links that are traversed by the auto-discovery operation. A depth of one is defined as the collection of nodes that are directly connected.
  • VIP_NET_ADDRESS **ADAddrArray: Pointer to an array of pointers to the actual VIP_NET_ADDRESS structures that will receive the discovered addresses. It is up to the caller of this routine to allocate the ADAddrArray and initialize the pointers to point to the appropriately sized VIP_NET_ADDRESS structures. The VIP_NET_ADDRESS structures must be large enough to hold an address for the specified NIC (specified by the NicAddressLen field of the NicAttributes structure). The HostAddress field must be long enough to hold the host portion of the address and HostAddressLen must specify a length equal to or greater than the number of bytes needed to specify the HostAddress. The DiscriminatorLen field and the discriminator portion of the HostAddress field are ignored.
  • VIP_ULONG NumAdAddrs: Specifies the number of elements in the ADAddrArray. If the number of addresses discovered is larger than the number requested, then an error is returned and this field is updated to contain the number of entries required to return the full list of node addresses.

Return values:
VIP_SUCCESS Operation completed successfully.
VIP_INVALID_PARAMETER The NIC handle was invalid.
VIP_ERROR_RESOURCE The number of entries specified to hold the auto-discovery information is less than the number of addresses that were discovered within the specified NumberOfHops or the operation failed due to insufficient resources.
Parameters:
NicHandle (IN) The handle of a VI NIC.
InfoType (IN) Specifies a particular piece of system management information.
SysManInfo (IN) Pointer to a system management information structure.
Author:
Patrick Geoffray
Version:
1.0

Definition at line 74 of file vipquerysystem.c.

References VIP_AUTODISCOVERY_LIST::ADAddrArray, VIP_GM::gm_port, VIP_NET_ADDRESS::HostAddress, VIP_NET_ADDRESS::HostAddressLen, VIP_GM::lock, VIP_AUTODISCOVERY_LIST::NumAdAddrs, VIP_AUTODISCOVERY_LIST::NumberOfHops, VI_GM_MAC_ADDRESS_LEN, VIP_ASSERT, VIP_DEBUG, VIP_DEBUG_GM, VIP_DEBUG_LABEL, VIP_ERROR_RESOURCE, VIP_INVALID_NIC_HANDLE, VIP_INVALID_PARAMETER, VIP_MUTEX_LOCK, VIP_MUTEX_UNLOCK, VIP_SMI_AUTODISCOVERY, and VIP_SUCCESS.

VI-GM-1.3 by Myricom © 1997-2006. Documentation generated on 20 May 2006 by doxygen 1.4.4.