Sous-routine HBA_GetFcpPersistentBinding

Objectif

Extrait les informations de liaison persistantes des numéros d'unité logique SCSI.

Bibliothèque

Bibliothèque de l'adaptateur de bus hôte commun (libHBAAPI.a)

Syntaxe

#include <sys/hbaapi.h>

HBA_STATUS HBA_GetFcpPersistentBinding (handle, binding)
HBA_HANDLE handle;
PHBA_FCPBinding binding;

Descriptif

Pour le HBA_HANDLE spécifié, le sous-programme HBA_GetFcpPersistentBinding renvoie les informations complètes de liaison des LUN SCSI locaux aux LUN FCP pour chaque enfant du HBA_HANDLE spécifié. Les applications doivent allouer de la mémoire pour la structure HBA_FCPBINDING et transmettre également au sous-programme le nombre d'entrées allouées. Si le sous-programme détermine que la structure n'est pas assez grande pour représenter l'ensemble des informations relatives à la liaison, il fixe la variable NumberOfEntries à la valeur correcte et renvoie une erreur.

Paramètres

Article Descriptif
gestionnaire Une carte HBA_HANDLE à un adaptateur ouvert.
liaison Un pointeur vers une structure contenant les informations de liaison des enfants de la poignée. La structure HBA_FCPBINDING a le format suivant:
struct HBA_FCPBinding {
    HBA_UINT32 NumberOfEntries;
    HBA_FCPBINDINGENTRY entry[1]; /* Variable length array */
  };
La taille de la structure est déterminée par l'application appelante et est transmise par la variable NumberOfEntries.

Valeurs renvoyées

Une fois l'exécution terminée, HBA_STATUS_OK est renvoyé et le paramètre Liaison pointe vers la structure de liaison complète. Si l'application n'a pas alloué suffisamment d'espace pour le binding complet, HBA_STATUS_ERROR_MORE_DATA est renvoyé et le champ NumberOfEntries de la structure du binding est défini sur la valeur correcte.

Codes d'erreur

S'il n'y a pas suffisamment d'espace alloué à la liaison complète. HBA_STATUS_ERROR_MORE_DATA est renvoyé.