SLI_OPEN

Il SLI_OPEN verbo trasferisce il controllo dell'unità logica specificata all'applicazione Microsoft® Windows ® logical unit application (LUA). SLI_OPEN stabilisce una sessione tra il punto di controllo dei servizi di sistema (SSCP) e la lu specificata, nonché una sessione LU-LU.

La struttura seguente descrive il LUA_COMMON del blocco di controllo dei verbi (VCB) usato da SLI_OPEN.

La seconda unione di sintassi descrive LUA_SPECIFIC membro del VCB usato da SLI_OPEN. Altri membri di unione vengono omessi per maggiore chiarezza.

Sintassi

  
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 union SLI_OPEN open;  
};  
  
The SLI_OPEN structure contains the following nested structures and members:  
struct LUA_EXT_ENTRY {  
    unsigned char lua_routine_type;  
    unsigned char lua_module_name[9];  
    unsigned char lua_procedure_name[33];  
} ;  
  
struct SLI_OPEN {  
    unsigned char         lua_init_type;  
    unsigned char         lua_resv65;  
    unsigned short        lua_wait;  
    struct LUA_EXT_ENTRY  lua_open_extension[3];  
    unsigned char         lua_ending_delim;  
} ;  

Members

lua_verb
Parametro fornito. Contiene il codice del verbo, LUA_VERB_SLI verbi SLI (Session Level Interface).

lua_verb_length
Parametro fornito. Specifica la lunghezza in byte del VCB LUA. Deve contenere la lunghezza del record del verbo rilasciato.

lua_prim_rc
Codice restituito primario impostato da LUA al completamento del verbo. I codici restituiti validi variano a seconda del verbo LUA emesso.

lua_sec_rc
Codice restituito secondario impostato da LUA al completamento del verbo. I codici restituiti validi variano a seconda del verbo LUA emesso.

lua_opcode
Parametro fornito. Contiene il codice di comando LUA (codice operazione verbo) per il verbo da eseguire, LUA_OPCODE_SLI_OPEN.

lua_correlator
Parametro fornito. Contiene un valore fornito dall'utente che collega il verbo ad altre informazioni fornite dall'utente. LUA non usa o modifica queste informazioni. Questo parametro è facoltativo.

lua_luname
Parametro fornito. Specifica il nome ASCII della lu locale usata dalla Windows LUA.

SLI_OPEN richiede questo parametro.

Questo parametro è lungo otto byte, riempito a destra con spazi (0x20) se il nome è più breve di otto caratteri.

lua_extension_list_offset
Parametro fornito. Specifica l'offset dall'inizio del vcb all'elenco di estensioni di librerie a collegamento dinamico (DLL) fornite dall'utente. Il valore deve essere l'inizio di un limite di parola a meno che non sia presente alcun elenco di estensioni. In questo caso, il valore deve essere impostato su zero.

Se questa opzione non viene usata da SLI_OPEN, questo membro deve essere impostato su zero.

lua_cobol_offset
Non usato da LUA in Microsoft® Host Integration Server e deve essere zero.

lua_sid
Parametro restituito. Specifica l'identificatore di sessione.

lua_max_length
Non usato da SLI_OPEN e deve essere impostato su zero.

lua_data_length
Parametro fornito. Specifica la lunghezza effettiva dei dati inviati.

lua_data_ptr
Puntatore al buffer fornito dall'applicazione che contiene i dati da inviare per SLI_OPEN.

Sia i comandi SNA che i dati vengono inseriti in questo buffer e possono essere in Extended Binary Coded Decimal Interchange Code (EBCDIC).

Quando SLI_OPEN viene emesso, questo parametro può essere uno dei seguenti:

  • Messaggio LOGON per il flusso normale SSCP quando il tipo di inizializzazione è secondario con un messaggio LOGON non formattato.

  • Unità richiesta/risposta (RU) per INITSELF. Quando il tipo di inizializzazione è secondario con INITSELF, vengono forniti i dati necessari per l'applicazione.

  • Per tutti gli altri tipi aperti, questo campo deve essere impostato su zero.

    Queste informazioni vengono fornite dall'Windows LUA.

    lua_post_handle
    Parametro fornito. Usato in Microsoft Windows Server se la notifica asincrona deve essere eseguita dagli eventi. Questa variabile contiene l'handle dell'evento da segnalare o un handle di finestra.

    lua_th
    Non usato da SLI_OPEN e deve essere impostato su zero.

    lua_rh
    Non usato da SLI_OPEN e deve essere impostato su zero.

    lua_flag1
    Non usato da SLI_OPEN e deve essere impostato su zero.

    lua_message_type
    Non usato da SLI_OPEN e deve essere impostato su zero.

    lua_flag2
    Parametro restituito. Contiene i flag per i messaggi restituiti da LUA. I sottoparamersi sono i seguenti:

    lua_flag2.async

    Indica che il verbo dell'interfaccia LUA è stato completato in modo asincrono se impostato su 1.

    lua_resv56
    Parametro fornito. Campo riservato usato da SLI_OPEN e RUI_INIT. Per altre informazioni, vedere la sezione Osservazioni.

    lua_resv56[1]

    Parametro fornito. Questo parametro deve essere impostato su zero.

    lua_resv56[2]

    Parametro fornito. Indica se un'applicazione SLI può accedere a unità LU configurate come 3270 LU, oltre alle UNITÀ LUA. Se questo parametro è impostato su 1, è possibile accedere a 3270 UNITÀ.

    lua_resv56[3]

    Parametro fornito. Indica se sono supportate le operazioni di lettura incomplete. Se questo parametro è impostato su 1, sono supportate le operazioni di lettura incomplete o troncate. Per altri dettagli, vedere le osservazioni per RUI_READ.

    lua_encr_decr_option
    Non usato da SLI_OPEN e deve essere impostato su zero.

    open
    Membro dell'unione LUA_SPECIFIC usato da SLI_OPEN. Set fornito di parametri contenuti in una struttura SLI_OPEN richiesta conSLI_OPEN.

    open.lua_init_type

    Parametro fornito. Definisce il modo in cui la sessione LU-LU viene inizializzata dall'Windows LUA.

    I valori validi sono i seguenti:

    LUA_INIT_TYPE_SEC_IS

    LUA_INIT_TYPE_SEC_LOG

    LUA_INIT_TYPE_PRIM

    LUA_INIT_TYPE_PRIM_SSCP

    open.lua_resv65

    Campo riservato.

    open.lua_wait

    Parametro fornito. Rappresenta un tempo di attesa dei tentativi secondario che indica il numero di secondi di attesa dell'interfaccia LUA di Windows prima di ritentare la trasmissione del messaggio INITSELF o LOGON dopo che l'host invia uno di questi messaggi:

  • Una risposta negativa e il codice restituito secondario sono i seguenti:

    RESOURCE_NOT_AVAILABLE (0x08010000)SESSION_LIMIT_EXCEEDED (0x08050000) SESSION_SERVICE_PATH_ERROR (0x087D0000)

    Si noti SLI_OPEN termina con un errore se lua_wait è impostato su zero e si verifica uno dei precedenti.

  • Messaggio di errore di procedura dei servizi di rete.

  • Comando NOTIFY che indica un errore di procedura.

    open.lua_open_extension

    Parametro fornito. Contiene un elenco di DLL di estensione fornite dall'applicazione per elaborare i comandi BIND, STSN e CRV.

    open.open_extension.lua_routine_type

    Tipo di routine di estensione. I valori validi sono:

    LUA_ROUTINE_TYPE_BIND

    LUA_ROUTINE_TYPE_CRV

    LUA_ROUTINE_TYPE_END (indica la fine dell'elenco di estensioni)

    LUA_ROUTINE_TYPE_STSN

    open.open_extension.lua_module_name

    Parametro fornito. Fornisce il nome del modulo ASCII per la DLL di estensione fornita dall'utente. Il nome del modulo può contenere fino a otto caratteri, con i byte rimanenti impostati su 0x00.

    open.open_extension.lua_procedure_name

    Parametro fornito. Fornisce il nome della procedura in ASCII per la DLL di estensione fornita dall'utente. Il nome della procedura può contenere fino a 32 caratteri, con i byte rimanenti impostati su 0x00.

    open.lua_ending_delim

    Delimitatore dell'elenco di estensioni.

Codici restituiti

LUA_OK
Codice restituito primario; Il verbo è stato eseguito correttamente.

LUA_SEC_OK

Codice restituito secondario; Non sono disponibili informazioni aggiuntive per LUA_OK.

LUA_PARAMETER_CHECK
Codice restituito primario; Il verbo non è stato eseguito a causa di un errore di parametro.

LUA_INVALID_LUNAME

Codice restituito secondario; È stato specificato lua_luname nome non valido.

LUA_BAD_SESSION_ID

Codice restituito secondario; È stato specificato un lua_sid non valido per il vcb.

LUA_BAD_DATA_PTR

Codice restituito secondario; Il lua_data_ptr parametro non contiene un puntatore valido o non punta a un segmento di lettura/scrittura ed è necessario specificare i dati.

LUA_DATA_SEGMENT_LENGTH_ERROR

Codice restituito secondario; si è verificato uno dei seguenti eventi:

  • Il segmento di dati fornito per SLI_RECEIVE o SLI_SEND non è un segmento di dati di lettura/scrittura come richiesto.

  • Il segmento di dati fornito per SLI_RECEIVE non è lungo quanto specificato in lua_max_length.

  • Il segmento di dati fornito per SLI_SEND non è lungo quanto specificato in lua_data_length.

    LUA_RESERVED_FIELD_NOT_ZERO

    Codice restituito secondario; Un parametro riservato per il verbo appena rilasciato non è impostato su zero.

    LUA_INVALID_POST_HANDLE

    Codice restituito secondario; Per un sistema operativo Microsoft Windows che usa eventi come metodo di pubblicazione asincrono, il vcb lua di Windows non contiene un handle di evento valido.

    LUA_VERB_LENGTH_INVALID

    Codice restituito secondario; Un verbo LUA è stato rilasciato con un valore per lua_verb_length imprevisto da LUA.

    LUA_INVALID_OPEN_INIT_TYPE

    Codice restituito secondario; Il valore nell'lua_init_type contenuto in SLI_OPEN non è valido.

    LUA_INVALID_OPEN_DATA

    Codice restituito secondario; Il lua_init_type per il SLI_OPEN emesso è impostato su LUA_INIT_TYPE_SEC_IS quando il buffer per i dati non dispone di un comando INITSELF valido.

    LUA_INVALID_OPEN_ROUTINE_TYPE

    Codice restituito secondario; Il lua_open_routine_type per l'SLI_OPEN di routine di estensione non è valido.

    LUA_DATA_LENGTH_ERROR

    Codice restituito secondario; L'applicazione non ha fornito i dati forniti dall'utente richiesti dal verbo emesso. Si noti che quando SLI_SEND per un comando LUSTAT SNA, lo stato (in quattro byte) è obbligatorio e che quando SLI_OPEN viene emesso con inizializzazione secondaria, sono necessari i dati.

    LUA_INVALID_SLI_ENCR_OPTION

    Codice restituito secondario; Il lua_encr_decr_option è stato impostato su 128 in SLI_OPEN, che non è supportato per l'opzione di elaborazione di crittografia/decrittografia.

    LUA_STATE_CHECK
    Codice restituito primario; Il verbo non è stato eseguito perché è stato emesso in uno stato non valido.

    LUA_NOT_ACTIVE

    Codice restituito secondario; LuA non era attivo all'interno di Microsoft Host Integration Server o SNA Server quando è stato emesso un verbo LUA.

    LUA_UNEXPECTED_SNA_SEQUENCE

    Codice restituito secondario; dati o comandi imprevisti ricevuti dall'host durante SLI_OPEN'elaborazione .

    LUA_NEG_RSP_FROM_BIND_ROUTINE

    Codice restituito secondario; La routine di SLI_BIND dall'utente ha risposto negativamente a BIND. SLI_OPEN ha avuto esito negativo.

    LUA_NEG_RSP_FROM_STSN_ROUTINE

    Codice restituito secondario; La routine STSN SLI fornita dall'utente ha risposto negativamente al stSN. SLI_OPEN ha avuto esito negativo.

    LUA_PROCEDURE_ERROR

    Codice restituito secondario; Un errore della procedura host è indicato dalla ricezione di un messaggio NSPE o NOTIFY. Il codice restituito viene inviato a SLI_OPEN quando non viene usata l'opzione retry. Per usare l'opzione reset, lua_wait su un valore diverso da zero. Il comando LOGON o INITSELF verrà ritentato fino a quando l'host non è pronto o fino a quando non si SLI_CLOSE.

    LUA_RECEIVED_UNBIND

    Codice restituito secondario; L'unità logica primaria (PLU) ha inviato un comando UNBIND SNA all'interfaccia LUA quando era attiva una sessione. Di conseguenza, la sessione è stata arrestata.

    LUA_SLI_LOGIC_ERROR

    Codice restituito secondario; L'interfaccia LUA ha rilevato un errore interno nella logica.

    LUA_NO_RUI_SESSION

    Codice restituito secondario; non è stata inizializzata alcuna sessione per il verbo LUA emesso o un verbo diverso da SLI_OPEN è stato emesso prima dell'inizializzazione della sessione.

    LUA_RESOURCE_NOT_AVAILABLE

    Codice restituito secondario; L'unità logica, l'unità fisica, il collegamento o la stazione di collegamento specificata nell'unità richiesta non è disponibile. Questo codice restituito viene inviato all'SLI_OPEN quando una risorsa non è disponibile, a meno che non si usi l'opzione di ripetizione dei tentativi.

    Per usare l'opzione retry, impostare lua_wait su un valore diverso da zero. Il comando LOGON o INITSELF verrà ritentato fino a quando l'host non è pronto o fino a quando non si SLI_CLOSE.

    LUA_SESSION_LIMIT_EXCEEDED

    Codice restituito secondario; la sessione richiesta non è stata attivata perché un NAU è al limite di sessione. Questo codice di senso SNA si applica alle richieste seguenti: BID, CINIT, INIT e ACTDRM.

    Il codice verrà pubblicato in SLI_OPEN quando un NAU è al limite, a meno che non si usi l'opzione RETRY.

    Per usare l'opzione di reimpostazione, impostare lua_wait su un valore diverso da zero. Il comando LOGON o INITSELF verrà ritentato fino a quando l'host non è pronto o fino a quando non si SLI_CLOSE.

    LUA_LU_COMPONENT_DISCONNECTED

    Codice restituito secondario; un componente LU non è disponibile perché non è connesso correttamente. Assicurarsi che l'alimentazione sia in accensione.

    LUA_NEGOTIABLE_BIND_ERROR

    Codice restituito secondario; È stato ricevuto un BIND negoziabile, che è consentito dall'SLI solo quando viene fornita una routine di SLI_BIND fornita dall'utente con SLI_OPEN.

    LUA_BIND_FM_PROFILE_ERROR

    Codice restituito secondario; Solo i profili di intestazione di gestione file 3 e 4 sono supportati dall'interfaccia LUA. È stato trovato un profilo di gestione file diverso da 3 o 4 in BIND.

    LUA_BIND_TS_PROFILE_ERROR

    Codice restituito secondario; Solo i profili del servizio di trasmissione (TS) 3 e 4 sono supportati dall'interfaccia LUA. È stato trovato un profilo di TS diverso da 3 o 4 in BIND.

    LUA_BIND_LU_TYPE_ERROR

    Codice restituito secondario; LUA supporta solo LU 0, LU 1, LU 2 e LU 3. È stata trovata una LU diversa da 0, 1, 2 o 3.

    LUA_SSCP_LU_SESSION_NOT_ACTIVE

    Codice restituito secondario; L'oggetto SSCP-LU richiesto è inattivo. Le informazioni specifiche sul codice di senso sono in byte 2 e 3. Le impostazioni valide 0x0000, 0x0001, 0x0002, 0x0003 e 0x0004.

    LUA_SESSION_SERVICES_PATH_ERROR

    Codice restituito secondario; Non è possibile reindirizzare una richiesta per i servizi di sessione a un percorso di sessione SSCP-SSCP. Informazioni specifiche sul codice di senso in byte 2 e 3 fornisce altre informazioni sul motivo per cui non è possibile reindirizzare la richiesta.

    LUA_UNSUCCESSFUL
    Codice restituito primario; Il record del verbo fornito era valido, ma il verbo non è stato completato correttamente.

    LUA_VERB_RECORD_SPANS_SEGMENTS

    Codice restituito secondario; il parametro di lunghezza LUA VCB più l'offset del segmento si trova oltre l'estremità del segmento.

    LUA_SESSION_ALREADY_OPEN

    Codice restituito secondario; una sessione è già aperta per il nome lu specificato in SLI_OPEN.

    LUA_INVALID_PROCESS

    Codice restituito secondario; La sessione per cui è stato emesso un verbo LUA non è disponibile perché un altro processo è proprietario della sessione.

    LUA_LINK_NOT_STARTED

    Codice restituito secondario; LuA non è stato in grado di attivare il collegamento dati durante l'inizializzazione della sessione.

    LUA_INVALID_ADAPTER

    Codice restituito secondario; La configurazione per il controllo data link (DLC) è in errore o il file di configurazione è danneggiato.

    LUA_ENCR_DECR_LOAD_ERROR

    Codice restituito secondario; È stato ricevuto un codice restituito imprevisto dalla funzione DosLoadModule del sistema operativo/2 durante il tentativo di caricare il modulo a collegamento dinamico di crittografia o decrittografia fornito dall'utente.

    LUA_ENCR_DECR_PROC_ERROR

    Codice restituito secondario; È stato ricevuto un codice restituito imprevisto dalla funzione DosGetProcAddr del sistema operativo/2 durante il tentativo di ottenere l'indirizzo della procedura all'interno del modulo di crittografia o di decrittografia fornito dall'utente.

    LUA_NEG_NOTIFY_RSP

    Codice restituito secondario; SSCP ha risposto negativamente a una richiesta NOTIFY emessa indicando che la LU secondaria era in grado di eseguire una sessione. Il componente di mezza sessione che ha ricevuto la richiesta ha compreso e supportato la richiesta ma non è stato in grado di eseguirla.

    LUA_LU_INOPERATIVE

    Codice restituito secondario; Si è verificato un errore grave durante il tentativo di arresto della sessione da parte dell'SLI. Questa lu lu non è disponibile per tutte le richieste LUA fino a quando non viene ricevuta un'unità logica di attivazione (ACTLU) dall'host.

    LUA_CANCELED
    Codice restituito primario; Il codice restituito secondario indica il motivo dell'annullamento del comando.

    LUA_TERMINATED

    Codice restituito secondario; la sessione è stata terminata quando un verbo era in sospeso. Il processo del verbo è stato annullato.

    LUA_IN_PROGRESS
    Codice restituito primario; È stato ricevuto un comando asincrono ma non è stato completato.

    LUA_COMM_SUBSYSTEM_ABENDED
    Codice restituito primario; indica una delle condizioni seguenti:

  • Il nodo usato da questa conversazione ha rilevato un ABEND.

  • La connessione tra il programma di transazioni (TP) e il nodo unità fisica (PU) 2.1 è stata interrotta (errore LAN).

  • L'oggetto SnaBase nel computer TP ha rilevato un ABEND.

    LUA_COMM_SUBSYSTEM_NOT_LOADED
    Codice restituito primario; Non è stato possibile caricare o terminare un componente necessario durante l'elaborazione del verbo. Pertanto, la comunicazione non è stata possibile. Per un'azione correttiva, contattare l'amministratore di sistema.

    LUA_INVALID_VERB_SEGMENT
    Codice restituito primario; il VCB si estende oltre la fine del segmento di dati.

    LUA_UNEXPECTED_DOS_ERROR
    Codice restituito primario; Dopo l'emissione di una chiamata al sistema operativo, è stato ricevuto un codice restituito imprevisto del sistema operativo e viene specificato nel codice restituito secondario.

    LUA_STACK_TOO_SMALL
    Codice restituito primario; le dimensioni dello stack dell'applicazione sono troppo piccole per eseguire il verbo. Aumentare le dimensioni dello stack dell'applicazione.

    LUA_INVALID_VERB
    Codice restituito primario; Il codice verbo o il codice dell'operazione o entrambi non sono validi. Il verbo non è stato eseguito.

Commenti

Per ogni SLI_OPEN, l'Windows LUA:

Vedere anche

RUI_INIT
SLI_RECEIVE
SLI_SEND