SLI_SEND_EX
Le verbe SLI_SEND_EX envoie des réponses, des commandes SNA et des données d’une application d’application d’unité logique Microsoft® Windows® (LUA) à une unité logique hôte (LU).
Le verbe SLI_SEND_EX prend également en charge le chaînage entrant. La longueur maximale des données pouvant être envoyées par un seul verbe est de 4 294 967 295 octets. Cela est comparé à un maximum de 65 535 octets pouvant être envoyés par le verbe SLI_SEND.
La structure suivante décrit le membre LUA_COMMON du bloc de contrôle verbe (VCB) utilisé par SLI_SEND_EX.
La deuxième union de syntaxe ci-dessous décrit le membre LUA_SPECIFIC du VCB utilisé par SLI_SEND_EX. Les autres membres du syndicat sont omis pour des motifs de clarté.
Syntaxe
struct LUA_COMMON {
unsigned short lua_verb;
unsigned short lua_verb_length;
unsigned short lua_prim_rc;
unsigned long lua_sec_rc;
unsigned short lua_opcode;
unsigned long lua_correlator;
unsigned char lua_luname[8];
unsigned short lua_extension_list_offset;
unsigned short lua_cobol_offset;
unsigned long lua_sid;
unsigned short lua_max_length;
unsigned short lua_data_length;
char FAR * lua_data_ptr;
unsigned long lua_post_handle;
struct LUA_TH lua_th;
struct LUA_RH lua_rh;
struct LUA_FLAG1 lua_flag1;
unsigned char lua_message_type;
struct LUA_FLAG2 lua_flag2;
unsigned char lua_resv56[7];
unsigned char lua_encr_decr_option;
};
union LUA_SPECIFIC {
struct SLI_SEND_EX_SPECIFIC {
unsigned char lua_sequence_number[2];
unsigned long lua_data_length_ex;
};
};
Membres
lua_verb
Paramètre fourni. Contient le code verbe, LUA_VERB_SLI pour les verbes SLI (Session Level Interface).
lua_verb_length
Paramètre fourni. Spécifie la longueur en octets du VCB LUA. Il doit contenir la longueur de l’enregistrement de verbe émis.
lua_prim_rc
Code de retour principal défini par LUA à la fin du verbe. Les codes de retour valides varient en fonction du verbe LUA émis.
lua_sec_rc
Code de retour secondaire défini par LUA à la fin du verbe. Les codes de retour valides varient en fonction du verbe LUA émis.
lua_opcode
Paramètre fourni. Contient le code de commande LUA (code d’opération de verbe) pour le verbe à émettre, LUA_OPCODE_SLI_SEND_EX.
lua_correlator
Paramètre fourni. Contient une valeur fournie par l’utilisateur qui lie le verbe à d’autres informations fournies par l’utilisateur. LUA n’utilise pas ou ne modifie pas ces informations. Ce paramètre est facultatif.
lua_luname
Paramètre fourni. Spécifie le nom ASCII de la lu locale utilisée par la session Windows LUA.
SLI_SEND nécessite ce paramètre uniquement si lua_sid est égal à zéro.
Ce paramètre est de huit octets, rempli à droite avec des espaces (0x20) si le nom est inférieur à huit caractères.
lua_extension_list_offset
Non utilisé par SLI_SEND_EX et doit être défini sur zéro.
lua_cobol_offset
Non utilisé par LUA dans Microsoft® Host Integration Server ou SNA Server et doit être défini sur zéro.
lua_sid
Paramètre fourni et retourné. Spécifie l’identificateur de session et est retourné par SLI_OPEN et RUI_INIT. D’autres verbes utilisent ce paramètre pour identifier la session utilisée pour la commande . Si d’autres verbes utilisent le paramètre lua_luname pour identifier les sessions, définissez le paramètre lua_sid sur zéro.
lua_max_length
Non utilisé par SLI_SEND_EX et doit être défini sur zéro.
lua_data_length
Ce paramètre est réservé et doit être défini sur zéro.
La longueur des données à envoyer est définie dans le paramètre lua_data_length_ex.
lua_data_ptr
Pointeur vers la mémoire tampon fournie par l’application qui contient les données à envoyer à l’hôte par SLI_SEND_EX.
Les commandes et les données SNA sont placées dans cette mémoire tampon, et elles peuvent être au format EBCDIC (Extended Binary Coded Decimal Interchange Code).
lua_post_handle
Paramètre fourni. Utilisé sous Microsoft Windows Server si la notification asynchrone doit être effectuée par des événements. Cette variable contient le handle de l’événement à signaler ou un handle de fenêtre.
lua_th
Paramètre retourné. Contient l’en-tête de transmission SNA (TH) du message reçu. Différents sous-paramètres sont définis pour les fonctions d’écriture et retournés pour les fonctions de lecture et d’enchère. Ses sous-paramètres sont les suivants :
lua_th.flags_fid
Format d’identification type 2, quatre bits.
lua_th.flags_mpf
Champ de mappage de segmentage, deux bits. Définit le type de segment de données. Les valeurs suivantes sont valides :
0x00 Segment du milieu0x04 Dernier segment0x08 Premier segment0x0C segment uniquement
lua_th.flags_odai
Indicateur de l’assigneur champ d’adresse d’origine-champ d’adresse de destination (OAF–DAF), un bit.
lua_th.flags_efi
Indicateur de flux accéléré, un bit.
lua_th.daf
Champ d’adresse de destination (DAF), char non signé.
lua_th.oaf
Champ d’adresse d’origine (OAF), char non signé.
lua_th.snf
Champ numéro de séquence, char non signé[2].
lua_rh
Paramètre fourni. Contient l’en-tête de requête/réponse SNA (RH) du message envoyé ou reçu. Il est défini pour RUI_WRITE et SLI_SEND, puis retourné par RUI_READ et RUI_BID. Pour l’hr pour SLI_SEND_EX, tous les champs à l’exception de l’indicateur de réponse en file d’attente (lua_rh.qri) et de l’indicateur de rythme (lua_rh.pi) sont utilisés.
lua_rh.rri
Indicateur requête-réponse, un bit.
lua_rh.ruc
Catégorie d’unités de requête/réponse (RU), deux bits.
lua_rh.fi
Indicateur de format, un bit.
lua_rh.sdi
Détecter l’indicateur des données incluses, un bit.
lua_rh.bci
Indicateur de chaîne de début, un bit.
lua_rh.eci
Indicateur de chaîne de fin, un bit.
lua_rh.dr1i
Réponse définie 1 indicateur, un bit.
lua_rh.dr2i
Réponse définie 2 indicateur, un bit.
lua_rh.ri
Indicateur de réponse d’exception (pour une demande) ou indicateur de type de réponse (pour une réponse), un bit.
lua_rh.qri
Indicateur de réponse mis en file d’attente, un bit.
lua_rh.pi
Indicateur de rythme, un bit.
lua_rh.bbi
Commencez l’indicateur de crochets, un bit.
lua_rh.ebi
Indicateur de crochet de fin, un bit.
lua_rh.cdi
Changer l’indicateur de direction, un bit.
lua_rh.csi
Indicateur de sélection de code, un bit.
lua_rh.edi
Indicateur de données enchiffré, un bit.
lua_rh.pdi
Indicateur de données rembourrées, un bit.
lua_flag1
Paramètre fourni. Contient une structure de données contenant des indicateurs pour les messages fournis par l’application. Ses sous-paramètres sont les suivants :
lua_flag1.bid_enable
Indicateur d’activation de l’enchère, un bit.
lua_flag1.close_abend
Fermez l’indicateur immédiat, un bit.
lua_flag1.nowait
Pas d’attente pour l’indicateur de données, un bit.
lua_flag1.sscp_exp
Flux accéléré du point de contrôle des services système (SSCP), un bit.
lua_flag1.sscp_norm
Flux normal SSCP, un bit.
lua_flag1.lu_exp
Flux accéléré lu, un bit.
lua_flag1.lu_norm
Flux normal lu, un bit.
Définissez l’un des indicateurs suivants sur 1 pour indiquer sur quel flux de messages les données doivent être envoyées :
lua_flag1.sscp_exp
lua_flag1.sscp_norm
lua_flag1.lu_exp
lua_flag1.lu_norm
lua_message_type
Spécifie le type des commandes et données SNA entrantes ou sortantes. Il s’agit d’un paramètre fourni pour SLI_SEND_EX.
Les valeurs possibles sont les suivantes :
LUA_MESSAGE_TYPE_LU_DATA
LUA_MESSAGE_TYPE_SSCP_DATA
LUA_MESSAGE_TYPE_RSP
LUA_MESSAGE_TYPE_BID
LUA_MESSAGE_TYPE_BIS
LUA_MESSAGE_TYPE_CANCEL
LUA_MESSAGE_TYPE_CHASE
LUA_MESSAGE_TYPE_LUSTAT_LU
LUA_MESSAGE_TYPE_LUSTAT_SSCP
LUA_MESSAGE_TYPE_QC
LUA_MESSAGE_TYPE_QEC
LUA_MESSAGE_TYPE_RELQ
LUA_MESSAGE_TYPE_RQR
LUA_MESSAGE_TYPE_RTR
LUA_MESSAGE_TYPE_SBI
LUA_MESSAGE_TYPE_SIGNAL
Le SLI reçoit et répond aux requêtes BIND et STSN via les routines d’extension d’interface LUA.
LU-DATA, LUSTAT_LU, LUSTAT_SSCP et SSCP_DATA ne sont pas des commandes SNA.
lua_flag2
Paramètre retourné. Contient des indicateurs pour les messages retournés par LUA. Ses sous-paramètres sont les suivants :
lua_flag2.bid_enable
Indique que RUI_BID a été correctement réactivé s’il est défini sur 1.
lua_flag2.async
Indique que le verbe d’interface LUA s’est terminé de manière asynchrone s’il est défini sur 1.
lua_flag2.sscp_exp
Indique le flux accéléré SSCP s’il est défini sur 1.
lua_flag2.sscp_norm
Indique le flux normal SSCP s’il est défini sur 1.
lua_flag2.lu_exp
Indique le flux accéléré lu s’il est défini sur 1.
lua_flag2.lu_norm
Indique le flux normal lu si défini sur 1.
lua_resv56
Réservé et doit être défini sur zéro.
lua_encr_decr_option
Non utilisé par SLI_SEND_EX et doit être défini sur zéro.
lua_sequence_number
Membre de l’union de LUA_SPECIFIC utilisé par SLI_SEND_EX. Paramètre retourné. Contient le numéro de séquence du premier de l’unité de requête de chaîne ou du seul segment de l’unité de requête de chaîne. Notez que ce paramètre n’est pas inversé par octets.
lua_data_length_ex
Membre de l’union de LUA_SPECIFIC utilisé par SLI_SEND_EX. Paramètre fourni. Spécifie la longueur des données envoyées.
Codes de retour
LUA_OK
Code de retour principal ; indique que le verbe s’est exécuté correctement.
LUA_SEC_OK
Code de retour secondaire ; aucune information supplémentaire n’existe pour LUA_OK.
LUA_PARAMETER_CHECK
Code de retour principal ; le verbe n’a pas été exécuté en raison d’une erreur de paramètre.
LUA_INVALID_LUNAME
Code de retour secondaire ; une lua_luname non valide a été spécifiée.
LUA_BAD_SESSION_ID
Code de retour secondaire ; une valeur non valide pour lua_sid a été spécifiée dans le VCB.
LUA_BAD_DATA_PTR
Code de retour secondaire ; le paramètre lua_data_ptr ne contient pas de pointeur valide ou ne pointe pas vers un segment de lecture/écriture et les données fournies sont requises.
LUA_RESERVED_FIELD_NOT_ZERO
Code de retour secondaire ; un paramètre réservé pour le verbe qui vient d’être émis n’est pas défini sur zéro.
LUA_INVALID_POST_HANDLE
Code de retour secondaire ; pour un système d’exploitation Microsoft Windows utilisant des événements comme méthode de publication asynchrone, le VCB Windows LUA ne contient pas de handle d’événement valide.
LUA_INVALID_FLOW
Code de retour secondaire ; les indicateurs de flux lua_flag1 ont été définis de manière incorrecte lorsqu’un verbe a été émis :
Lorsque vous émettez SLI_SEND_EX d’envoyer une réponse SNA, définissez un seul indicateur de flux lua_flag1 .
Lors de l’émission de SLI_RECEIVE_EX, définissez au moins un indicateur de flux lua_flag1.
LUA_VERB_LENGTH_INVALID
Code de retour secondaire ; un verbe LUA a été émis avec une valeur pour lua_verb_length inattendu par LUA.
LUA_REQUIRED_FIELD_MISSING
Code de retour secondaire ; le verbe qui a été émis n’incluait pas de pointeur de données (si le nombre de données n’était pas égal à zéro) ou n’incluait pas d’indicateur de flux de lua_flag1 .
LUA_INVALID_MESSAGE_TYPE
Code de retour secondaire ; le paramètre lua_message_type n’est pas reconnu par l’interface LUA.
LUA_DATA_LENGTH_ERROR
Code de retour secondaire ; l’application n’a pas fourni les données fournies par l’utilisateur requises par le verbe émis. Notez que lorsque SLI_SEND_EX est émis pour une commande LUSTAT SNA, status (en quatre octets) est requis et que lorsque SLI_OPEN est émis avec l’initialisation secondaire, des données sont requises.
LUA_STATE_CHECK
Code de retour principal ; le verbe n’a pas été exécuté, car il a été émis dans un état non valide.
LUA_NO_SLI_SESSION
Code de retour secondaire ; une session n’était pas ouverte ou était arrêtée en raison d’un SLI_CLOSE ou d’un échec de session lors de l’émission d’une commande.
LUA_MAX_NUMBER_OF_SENDS
Code de retour secondaire ; l’application a émis un troisième SLI_SEND ou un SLI_SEND_EX avant que celui-ci ne soit terminé.
LUA_SEND_ON_FLOW_PENDING
Code de retour secondaire ; une SLI_SEND ou une SLI_SEND_EX était toujours en suspens lorsque l’application a émis un autre SLI_SEND_EX pour un flux SNA.
LUA_SESSION_FAILURE
Code de retour principal ; une condition d’erreur, spécifiée dans le code de retour secondaire, a provoqué l’échec de la session.
LUA_RECEIVED_UNBIND
Code de retour secondaire ; l’unité logique primaire (PLU) a envoyé une commande SNA UNBIND à l’interface LUA lorsqu’une session était active. Par conséquent, la session a été arrêtée.
LUA_SLI_LOGIC_ERROR
Code de retour secondaire ; L’interface LUA a détecté une erreur interne dans la logique.
LUA_NO_RUI_SESSION
Code de retour secondaire ; aucune session n’a été initialisée pour le verbe LUA émis, ou un verbe autre que SLI_OPEN a été émis avant l’initialisation de la session.
LUA_LU_COMPONENT_DISCONNECTED
Code de retour secondaire ; un composant LU n’est pas disponible, car il n’est pas correctement connecté. Assurez-vous que l’alimentation est activée.
LUA_DATA_SEGMENT_LENGTH_ERROR
Code de retour secondaire ; l’un des événements suivants s’est produit :
Le segment de données fourni pour SLI_RECEIVE_EX ou SLI_SEND_EX n’est pas un segment de données en lecture/écriture comme requis.
Le segment de données fourni pour SLI_RECEIVE_EX n’est pas aussi long que celui fourni dans lua_max_length_ex.
Le segment de données fourni pour SLI_SEND_EX n’est pas aussi long que celui fourni dans lua_data_length_ex.
LUA_VERB_RECORD_SPANS_SEGMENTS
Code de retour secondaire ; le paramètre de longueur VCB LUA plus le décalage de segment est au-delà de l’extrémité du segment.
LUA_NOT_ACTIVE
Code de retour secondaire ; LUA n’était pas actif dans Microsoft Host Integration Server ou SNA Server lorsqu’un verbe LUA a été émis.
LUA_SLI_LOGIC_ERROR
Code de retour secondaire ; L’interface LUA a détecté une erreur interne dans la logique.
LUA_INVALID_PROCESS
Code de retour secondaire ; la session pour laquelle un verbe LUA a été émis n’est pas disponible, car un autre processus os/2 est propriétaire de la session.
LUA_LU_INOPERATIVE
Code de retour secondaire ; une erreur grave s’est produite alors que le LUA tentait d’arrêter la session. Cette lu n’est pas disponible pour toutes les requêtes LUA jusqu’à ce qu’une unité logique d’activation (ACTLU) soit reçue de l’hôte.
LUA_MODE_INCONSISTENCY
Code de retour secondaire ; l’exécution de cette fonction n’est pas autorisée par le status actuel. La demande envoyée au composant demi-session n’a pas été exécutée même si elle a été comprise et prise en charge. Ce code de sens SNA est également un code de sens de demande d’exception.
LUA_INSUFFICIENT_RESOURCES
Code de retour secondaire ; une condition temporaire de ressources insuffisantes a entraîné l’impossibilité d’effectuer l’exécution du récepteur de la demande. La demande envoyée au composant demi-session n’a pas été exécutée, même si elle a été comprise et prise en charge.
LUA_SEND_CORRELATION_TABLE_FULL
Code de retour secondaire ; la table de corrélation d’envoi de session pour le flux demandé a atteint sa capacité.
LUA_RU_LENGTH_ERROR
Code de retour secondaire ; la requête ru était d’une longueur incorrecte (trop courte ou trop longue). L’unité de requête n’a pas été interprétée ou traitée même si elle a été remise au composant demi-session. Les fonctionnalités de demi-session ne correspondent pas. Ce code de sens SNA est également un code de sens de demande d’exception.
LUA_FUNCTION_NOT_SUPPORTED
Code de retour secondaire ; LUA ne prend pas en charge la fonction demandée. Un caractère de contrôle, un paramètre RU ou un code de requête mis en forme peut avoir spécifié la fonction. Les informations de code de sens spécifique sont en octets 2 et 3.
LUA_HDX_BRACKET_STATE_ERROR
Code de retour secondaire ; l’erreur d’état existante a empêché l’envoi de la demande actuelle. La détermination a été effectuée par un ordinateur de protocole.
LUA_RESPONSE_ALREADY_SENT
Code de retour secondaire ; une réponse pour la chaîne a déjà été envoyée afin que la demande actuelle n’ait pas été envoyée. La détermination a été effectuée par un ordinateur de protocole.
LUA_EXR_SENSE_INCORRECT
Code de retour secondaire ; l’application a répondu négativement à une demande d’exception. Le code de sens était inacceptable.
LUA_RESPONSE_OUT_OF_ORDER
Code de retour secondaire ; la réponse actuelle n’était pas pour la demande la plus ancienne. La détermination a été effectuée par un ordinateur de protocole.
LUA_CHAIN_RESPONSE_REQUIRED
Code de retour secondaire ; une réponse CHASE était toujours en attente lorsqu’une demande plus récente a été tentée. La détermination a été effectuée par un ordinateur de protocole.
LUA_BRACKET
Code de retour secondaire ; l’expéditeur n’a pas pu appliquer les règles de crochet de session. Notez que les conditions de contention et de race sont exemptées de cette erreur. Un en-tête ou une unité de requête non valide pour le contrôle de session actuel ou l’état de contrôle du flux de données des récepteurs a été trouvé. La remise au composant demi-session a été empêchée.
LUA_DIRECTION
Code de retour secondaire ; alors que l’état de retournement demi-duplex était NOT_RECEIVE, une demande de flux normal a été reçue. Un en-tête de requête ou une unité de requête non valide pour le contrôle de session actuel ou l’état de contrôle de flux de données des récepteurs a été trouvé. La remise au composant demi-session a été empêchée.
LUA_DATA_TRAFFIC_RESET
Code de retour secondaire ; une demi-session d’une session active mais avec un trafic de données inactif a reçu une demande de contrôle de flux de données de flux normal (DFC) ou de données de gestion des fonctions (FMD). Un en-tête de requête ou une unité de requête non valide pour le contrôle de session actuel ou l’état de contrôle de flux de données des récepteurs a été trouvé. La remise au composant demi-session a été empêchée.
LUA_DATA_TRAFFIC_QUIESCED
Code de retour secondaire ; Une requête DFC ou FMD a été reçue d’une demi-session qui a envoyé une commande SHUTC ou une commande QC, et la demande DFC ou FMD n’a pas répondu à une commande RELQ. Un en-tête de requête ou une unité de requête non valide pour le contrôle de session actuel ou l’état de contrôle de flux de données des récepteurs a été trouvé. La remise au composant demi-session a été empêchée.
LUA_DATA_TRAFFIC_NOT_RESET
Code de retour secondaire ; alors que l’état du trafic de données n’a pas été réinitialisé, la demande de contrôle de session a été reçue. Un en-tête ou une unité de requête non valide pour le contrôle de session actuel ou l’état de contrôle de flux de données reçu a été trouvé. La remise au composant demi-session a été empêchée.
LUA_NO_BEGIN_BRACKET
Code de retour secondaire ; le récepteur a déjà envoyé une réponse positive à une commande BIS lorsqu’une requête BID ou FMD spécifiant BBI=BB a été reçue. Un en-tête ou une unité de requête non valide pour le contrôle de session actuel ou l’état de contrôle de flux de données reçu a été trouvé. La remise au composant demi-session a été empêchée.
LUA_SC_PROTOCOL_VIOLATION
Code de retour secondaire ; une violation du protocole SC s’est produite. Une demande (qui n’est autorisée qu’après qu’une demande SC et une réponse positive à cette demande ont été correctement échangées) a été reçue avant l’échange requis. L’octet 4 des données sense contient le code de la demande. Il n’existe aucune donnée utilisateur pour ce code de sens. Un état de contrôle de flux de données ou de demande d’en-tête non valide a été trouvé. La remise au composant demi-session a été empêchée.
LUA_IMMEDIATE_REQUEST_MODE_ERROR
Code de retour secondaire ; la requête a violé le protocole du mode de requête immédiate. Une demande d’en-tête ou une unité de requête non valide pour le contrôle de session actuel reçu ou l’état du contrôle de flux de données a été trouvé. La remise au composant demi-session a été empêchée.
LUA_QUEUED_RESPONSE_ERROR
Code de retour secondaire ; la requête a violé le protocole de réponse mis en file d’attente. Une demande d’en-tête ou une unité de requête non valide pour le contrôle de session actuel reçu ou l’état du contrôle de flux de données a été trouvé. La remise au composant demi-session a été empêchée.
LUA_ERP_SYNC_EVENT_ERROR
Code de retour secondaire ; une violation du protocole d’événement synchrone ERP s’est produite. Une demande d’en-tête ou une unité de requête non valide pour le contrôle de session actuel reçu ou l’état du contrôle de flux de données a été trouvé. La remise au composant demi-session a été empêchée.
LUA_RSP_BEFORE_SENDING_REQ
Code de retour secondaire ; une requête précédemment reçue n’a pas encore été répondue et une tentative a été effectuée en mode d’envoi/réception semi-duplex pour envoyer une demande de flux normal. Une demande d’en-tête ou une unité de requête non valide pour le contrôle de session actuel reçu ou l’état du contrôle de flux de données a été trouvé. La remise au composant demi-session a été empêchée.
LUA_RSP_CORRELATION_ERROR
Code de retour secondaire ; une réponse qui ne correspond pas à une demande reçue précédemment ou une réponse qui ne correspond pas à une demande précédemment envoyée a été envoyée.
LUA_BB_NOT_ALLOWED
Code de retour secondaire ; L’indicateur de crochet de début a été incorrectement spécifié. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état actuel de la session. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_EB_NOT AUTORISÉ
Code de retour secondaire ; l’indicateur de crochet d’extrémité a été spécifié de manière incorrecte. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état actuel de la session. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_EXCEPTION_RSP_NOT_ALLOWED
Code de retour secondaire ; lorsqu’une réponse d’exception n’était pas autorisée, une réponse a été demandée. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état actuel de la session. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_DEFINITE_RSP_NOT_ALLOWED
Code de retour secondaire ; lorsqu’une réponse définitive n’était pas autorisée, on en demandait une. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état actuel de la session. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_CD_NOT_ALLOWED
Code de retour secondaire ; l’indicateur de direction du changement a été spécifié de manière incorrecte. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état actuel de la session. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_NO_RESPONSE_NOT_ALLOWED
Code de retour secondaire ; une requête autre qu’un EXR contenait une « aucune réponse ». Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état actuel de la session. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_CHAINING_NOT_SUPPORTED
Code de retour secondaire ; les indicateurs de chaînage n’ont pas été spécifiés de manière incorrecte. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état actuel de la session. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_BRACKETS_NOT_SUPPORTED
Code de retour secondaire ; les indicateurs de crochet ont été spécifiés de manière incorrecte. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état actuel de la session. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_CD_NOT_SUPPORTED
Code de retour secondaire ; L’indicateur de direction du changement a été défini, mais LUA ne prend pas en charge la direction du changement pour cette situation. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état actuel de la session. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_INCORRECT_USE_OF_FI
Code de retour secondaire ; l’indicateur de format a été spécifié de manière incorrecte. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état de session actuel. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_ALTERNATE_CODE_NOT_SUPPORTED
Code de retour secondaire ; l’indicateur de sélection de code a été défini, mais LUA ne prend pas en charge la sélection de code pour cette session. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état de session actuel. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_INCORRECT_REQUEST_CODE
Code de retour secondaire ; le code de la demande a été spécifié de manière incorrecte. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état de session actuel. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_INCORRECT_SPEC_OF_SDI_RTI
Code de retour secondaire ; le SDI et le RTI n’ont pas été spécifiés correctement sur une réponse. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état de session actuel. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_INCORRECT_DR1I_DR2I_ERI
Code de retour secondaire ; le DR1I, le DR2I et l’ERI ont été spécifiés de manière incorrecte. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état de session actuel. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_INCORRECT_USE_OF_QRI
Code de retour secondaire ; l’indicateur de réponse mis en file d’attente n’a pas été spécifié de manière incorrecte. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état de session actuel. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_INCORRECT_USE_OF_EDI
Code de retour secondaire ; l’EDI a été spécifié de manière incorrecte. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état de session actuel. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_INCORRECT_USE_OF_PDI
Code de retour secondaire ; la PDI a été incorrectement spécifiée. Les options BIND choisies précédemment ou les règles architecturales ont été violées par les valeurs de paramètre d’en-tête de la demande. La remise au composant demi-session a été empêchée. Les erreurs ne dépendent pas de l’état de session actuel. L’échec de l’application des règles de session par les expéditeurs peut avoir provoqué les erreurs.
LUA_NO_SESSION
Code de retour secondaire ; une demande d’activation d’une session est requise, car il n’existe aucune demi-session active dans le nœud final de réception pour la paire origine-destination, ni aucun composant de demi-session de fonction de limite active pour la paire origine/destination dans un nœud qui fournit la fonction de limite. La remise de la demande n’a pas pu avoir lieu pour l’une des raisons suivantes :
Erreur d’unité d’informations de chemin d’accès
Une panne de chemin
Séquence non valide de demandes d’activation
Si une erreur de chemin d’accès est reçue pendant une session active, cela indique généralement qu’il n’y a plus de chemin d’accès valide au partenaire de session.
LUA_CANCELED
Code de retour principal ; le code de retour secondaire indique la raison de l’annulation de la commande.
LUA_TERMINATED
Code de retour secondaire ; la session a été arrêtée lorsqu’un verbe était en attente. Le processus de verbe a été annulé.
LUA_IN_PROGRESS
Code de retour principal ; une commande asynchrone a été reçue, mais n’est pas terminée.
LUA_COMM_SUBSYSTEM_ABENDED
Code de retour principal ; indique l’une des situations suivantes :
Le nœud utilisé par cette conversation a rencontré un abandon (ABEND).
La connexion entre le programme de transaction (TP) et le nœud d’unité physique (PU) 2.1 a été rompue (erreur LAN).
Le SnaBase sur l’ordinateur des fournisseurs de services a rencontré un ABEND.
LUA_COMM_SUBSYSTEM_NOT_LOADED
Code de retour principal ; indique qu’il n’a pas été possible de charger un composant requis ou d’y mettre fin lors du traitement du verbe. Par conséquent, la communication n’a pas pu être établie. Contactez l’administrateur système pour mettre en place une action corrective.
LUA_INVALID_VERB_SEGMENT
Code de retour principal ; indique que le bloc de contrôle de verbe s’étend au-delà de la fin du segment de données.
LUA_UNEXPECTED_DOS_ERROR
Code de retour principal ; après l’émission d’un appel de système d’exploitation, un code de retour inattendu du système d’exploitation a été reçu et est spécifié dans le code de retour secondaire.
LUA_STACK_TOO_SMALL
Code de retour principal ; indique que la taille de la pile de l’application est trop petite pour exécuter le verbe. Augmentez la taille de pile de votre application.
LUA_INVALID_VERB
Code de retour principal ; le code du verbe ou le code d’opération, ou les deux, n’est pas valide. Le verbe n’a pas été exécuté.
Remarques
SLI_SEND_EX envoie des réponses, des commandes SNA et des données de l’application Windows LUA à une lu hôte.
La différence entre SLI_SEND_EX et SLI_SEND est que le verbe SLI_SEND_EX prend en charge le chaînage entrant et peut envoyer jusqu’à un maximum de 4 295 kilooctets (Ko) dans une requête de verbe unique. En revanche, SLI_SEND est limité à l’envoi jusqu’à 64 Ko dans une demande de verbe. Un seul verbe SLI_SEND_EX ou SLI_SEND définit une chaîne. Un seul verbe SLI_RECEIVE_EX ou SLI_RECEIVE reçoit une chaîne entière.
Une session doit déjà être ouverte pour émettre des SLI_SEND_EX pour un flux de session LU-LU particulier. Pour envoyer des données sur le flux normal SSCP avant la fin de SLI_OPEN, la session doit avoir été initialisée en tant que principal avec accès SSCP. En outre, le status de session doit être INIT_COMPLETE.
Les paramètres de lua_message_type déterminent le type de traitement qui sera effectué par SLI_SEND_EX. Le tableau suivant indique les paramètres à définir en fonction de la valeur de lua_message_type.
SLI_SEND_EX paramètre | LU_DATA SSCP_DATA |
BID BIS RTR |
CHASE QC |
LUSTAT_LU LUSTAT_SSCP |
QEC RELQ SBI SIGNAL |
RQR | RSP |
---|---|---|---|---|---|---|---|
lua_data _Longueur |
Req. | 0 | 0 | Req. | 0 | 0 | Req. (0 si aucune donnée) |
lua_data _Ptr |
Req. (0 si aucune donnée) | 0 | 0 | Req. | 0 | 0 | Req. (0 si aucune donnée) |
indicateurs de flux lua_flag1 | 0 | 0 | 0 | 0 | 0 | 0 | Req. (définir un) |
lua_rh | FI DRL1 DRL2 RI BBI EBI CDI CSI EDI | SDI QRI | SDI QRI EBI CDI | SDI QRI DRL1 DRL2 RI BBI EBI CDI | SDI | 0 | RRI RI |
lua_th | 0 | 0 | 0 | 0 | 0 | 0 | SNF |
L’emplacement fourni dans lua_data_ptr et la longueur fournie dans lua_data_length_ex déterminent les données envoyées par le SLI. Les données seront chaînées par les verbes SLI si nécessaire.
Lors de l’envoi d’une réponse, le type de réponse détermine les SLI_SEND_EX informations requises. Pour toutes les réponses, vous devez :
Définissez l’indicateur de flux lua_flag1 sélectionné.
Indiquez le numéro de séquence dans lua_th.snf pour la demande à laquelle vous répondez.
Définissez lua_message_type sur LUA_MESSAGE_TYPE_RSP.
Pour les réponses de message multichaîne, le numéro de séquence du dernier élément de chaîne reçu doit être utilisé. Pour une réponse à un message multichaîne se terminant par une commande CANCEL, le numéro de séquence de commande CANCEL est utilisé.
Pour les réponses positives qui nécessitent uniquement le code de requête, définissez lua_rh.ri sur zéro (indiquant que la réponse est positive) et lua_data_length sur zéro (indiquant qu’aucune donnée n’est fournie). Le code de la demande est renseigné par le SLI, à l’aide du numéro de séquence fourni.
Pour les réponses négatives dans lesquelles lua_rh.ri a la valeur 1, définissez le lua_data_ptr sur l’adresse de code SNA sense et le lua_data_length sur la longueur du code SNA sense (quatre octets). Le numéro de séquence est utilisé par le SLI pour remplir le code de demande.
Voir aussi
RUI_INIT
RUI_READ
RUI_WRITE
SLI_BID
SLI_CLOSE
SLI_OPEN
SLI_RECEIVE_EX