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 qui peuvent ê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. D’autres membres du syndicat sont omis pour plus 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 à l’achèvement 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 que le verbe soit émis, 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 l’unité logique locale utilisée par la session LUA Windows.

SLI_SEND nécessite uniquement ce paramètre si lua_sid est égal à zéro.

Ce paramètre est de huit octets longs, rembourrés à droite avec des espaces (0x20) si le nom est plus court que 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 une notification asynchrone doit être effectuée par les é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ées pour les fonctions de lecture et d’offres. Ses sous-paramètres sont les suivants :

lua_th.flags_fid

Format de type d’identification 2, quatre bits.

lua_th.flags_mpf

Champ de mappage de segmentation, deux bits. Définit le type de segment de données. Les valeurs suivantes sont valides :

segment 0x00 intermédiaire 0x04 Dernier segment 0x08 premier segment 0x0C segment uniquement

lua_th.flags_odai

Indicateur d’assigneur de champ d’adresse d’origine-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), caractère non signé.

lua_th.oaf

Champ d’adresse d’origine (OAF), caractère non signé.

lua_th.snf

Champ numéro de séquence, caractère non signé[2].

lua_rh
Paramètre fourni. Contient l’en-tête demande/réponse SNA (RH) du message envoyé ou reçu. Il est défini pour RUI_WRITE et SLI_SEND, et retourné par RUI_READ et RUI_BID. Pour le rh 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 de demande-réponse, un bit.

lua_rh.ruc

Catégorie d’unité de requête/réponse (RU), deux bits.

lua_rh.fi

Indicateur de format, un bit.

lua_rh.sdi

Indicateur de données d’impression 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

Indicateur de réponse 1 défini, un bit.

lua_rh.dr2i

Indicateur de réponse 2 défini, 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 en file d’attente, un bit.

lua_rh.pi

Indicateur de pacing, un peu.

lua_rh.bbi

Indicateur de crochet de début, un bit.

lua_rh.ebi

Indicateur de crochet de fin, un bit.

lua_rh.idc

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 chiffré, un bit.

lua_rh.pdi

Indicateur de données rembourré, 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’offre, un bit.

lua_flag1.close_abend

Fermez l’indicateur immédiat, un bit.

lua_flag1.nowait

Aucune attente pour l’indicateur de données, un peu.

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 de l’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é si la valeur est 1.

lua_flag2.async

Indique que le verbe de l’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 s’il est 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 pour le premier dans l’unité de requête de chaîne ou le 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 é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 Windows LUA VCB 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 incorrectement lorsqu’un verbe a été émis :

Lors de l’émission de SLI_SEND_EX pour 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 inattendue par LUA.

LUA_REQUIRED_FIELD_MISSING

Code de retour secondaire ; le verbe émis n’incluait pas de pointeur de données (si le nombre de données n’était pas 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 de données fournies par l’utilisateur requises par le verbe émis. Notez que lorsque SLI_SEND_EX est émis pour une commande SNA LUSTAT, l’état (en quatre octets) est requis et que lorsque SLI_OPEN est émis avec l’initialisation secondaire, les 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’a pas été ouverte ou a été 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 une troisième SLI_SEND ou une SLI_SEND_EX avant une fin.

LUA_SEND_ON_FLOW_PENDING

Code de retour secondaire ; une SLI_SEND ou une SLI_SEND_EX était toujours en attente lorsque l’application a émis une 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 UNBIND SNA à 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 trouvé 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 connecté correctement. Assurez-vous que la puissance est activée.

LUA_DATA_SEGMENT_LENGTH_ERROR

Code de retour secondaire ; l’une des opérations suivantes s’est produite :

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 si nécessaire.

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 la fin 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 trouvé 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 possède la session.

LUA_LU_INOPERATIVE

Code de retour secondaire ; une erreur grave s’est produite pendant que l’instance 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 l’état 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 requête d’exception.

LUA_INSUFFICIENT_RESOURCES

Code de retour secondaire ; une condition temporaire de ressources insuffisantes a provoqué l’impossibilité pour le destinataire de la demande d’effectuer. La demande envoyée au composant de 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 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 requête 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 empêchait l’envoi de la requête actuelle. La détermination a été prise 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 requête actuelle n’ait pas été envoyée. La détermination a été prise 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 requête la plus ancienne. La détermination a été prise 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é prise 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 de requête ou une unité de requête non valide pour le contrôle de session actuel ou l’état du contrôle de flux de données a été trouvé. La remise au composant de demi-session a été empêchée.

LUA_DIRECTION

Code de retour secondaire ; alors que l’état de flip-flop 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 du contrôle de flux de données a été trouvé. La remise au composant de demi-session a été évitée.

LUA_DATA_TRAFFIC_RESET

Code de retour secondaire ; une demi-session d’une session active, mais avec le 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 du contrôle de flux de données a été trouvé. La remise au composant de demi-session a été évité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 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 du contrôle de flux de données a été trouvé. La remise au composant de demi-session a été évité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 de requê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 de demi-session a été évité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 demande BID ou FMD spécifiant BBI=BB 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 reçu ou l’état du contrôle de flux de données a été trouvé. La remise au composant de demi-session a été évitée.

LUA_SC_PROTOCOL_VIOLATION

Code de retour secondaire ; une violation du protocole SC s’est produite. Une demande (qui est autorisée uniquement après 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 de sens contient le code de requête. Aucune donnée utilisateur n’existe pour ce code de sens. Un état de contrôle d’en-tête ou de flux de données non valide a été trouvé. La remise au composant de demi-session a été évitée.

LUA_IMMEDIATE_REQUEST_MODE_ERROR

Code de retour secondaire ; la requête n’a pas respecté le protocole de mode de demande 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ée. La remise au composant de demi-session a été évité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ée. La remise au composant de demi-session a été évité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ée. La remise au composant de demi-session a été évitée.

LUA_RSP_BEFORE_SENDING_REQ

Code de retour secondaire ; Une demande 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 normale. 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ée. La remise au composant de demi-session a été évitée.

LUA_RSP_CORRELATION_ERROR

Code de retour secondaire ; une réponse a été envoyée qui ne correspond pas à une demande reçue précédemment ou une réponse a été reçue qui ne correspond pas à une demande précédemment envoyée.

LUA_BB_NOT_ALLOWED

Code de retour secondaire ; l’indicateur de crochet de début 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 requête. La remise au composant de demi-session a été évité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_EB_NOT AUTORISÉ

Code de retour secondaire ; l’indicateur de crochet de fin 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 requête. La remise au composant de demi-session a été évité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_EXCEPTION_RSP_NOT_ALLOWED

Code de retour secondaire ; lorsqu’une réponse d’exception n’a pas été 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 requête. La remise au composant de demi-session a été évité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_DEFINITE_RSP_NOT_ALLOWED

Code de retour secondaire ; lorsqu’une réponse définie n’a pas été 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 requête. La remise au composant de demi-session a été évité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_CD_NOT_ALLOWED

Code de retour secondaire ; l’indicateur de direction des modifications 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 requête. La remise au composant de demi-session a été évité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_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 requête. La remise au composant de demi-session a été évité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_CHAINING_NOT_SUPPORTED

Code de retour secondaire ; les indicateurs de chaînage 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 requête. La remise au composant de demi-session a été évité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_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 requête. La remise au composant de demi-session a été évité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_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 requête. La remise au composant de demi-session a été évité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_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 requête. La remise au composant de demi-session a été évité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 requête. La remise au composant de demi-session a été évité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 requête 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 requête. La remise au composant de demi-session a été évité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 ; la 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 requête. La remise au composant de demi-session a été évité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 requête. La remise au composant de demi-session a été évité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 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 requête. La remise au composant de demi-session a été évité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 requête. La remise au composant de demi-session a été évité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é spécifiée 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 requête. La remise au composant de demi-session a été évité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 aucune demi-session active dans le nœud final de réception pour la paire origination-destination existe, ou aucun composant de fonction de limite active pour la paire origination-destination dans un nœud qui fournit la fonction de limite existe. 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’existe plus de chemin d’accès valide au partenaire de session.

LUA_CANCELED
Code de retour principal ; le code de retour secondaire donne 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 PU (Unité physique) 2.1 a été interrompue (erreur LAN).

Le SnaBase sur l’ordinateur TPS 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 avoir émis 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 détaillé 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 unité logique 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 kilo-octets (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 l’accès SSCP. En outre, l’état de la 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.

paramètre SLI_SEND_EX LU_DATA

SSCP_DATA
BID

BIS

RTR
CHASE

QC
LUSTAT_LU

LUSTAT_SSCP
QEC

RELQ

SBI

SIGNAL
RQR RSP
lua_data
_length
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 PARTITION SDI QRI DRL1 DRL2 RI BBI EBI IDC 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éterminer les données envoyées par le SLI. Les données sont 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 informations SLI_SEND_EX 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 à plusieurs chaînes, le numéro de séquence du dernier élément de chaîne reçu doit être utilisé. Pour une réponse à un message à plusieurs chaînes 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 à zéro (indiquant qu’aucune donnée n’est fournie). Le code de requête 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 est défini sur 1, définissez la lua_data_ptr sur l’adresse du code de sens SNA et le lua_data_length sur la longueur du code de sens SNA (quatre octets). Le numéro de séquence est utilisé par le SLI pour remplir le code de requête.

Voir aussi

RUI_INIT
RUI_READ
RUI_WRITE
SLI_BID
SLI_CLOSE
SLI_OPEN
SLI_RECEIVE_EX