SLI_OPEN

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

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

La seconda unione sintassi descrive il membro LUA_SPECIFIC del VCB usato da SLI_OPEN. Altri membri dell'unione vengono omessi per 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 verbo, LUA_VERB_SLI per verbi SLI (Session Level Interface).

lua_verb_length
Parametro fornito. Specifica la lunghezza in byte del VCB LUA. Deve contenere la lunghezza del record 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 rilasciato.

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

lua_opcode
Parametro fornito. Contiene il codice del comando LUA (codice operazione verbo) per l'emissione del verbo, 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 e,

lua_luname
Parametro fornito. Specifica il nome ASCII dell'LU locale usato dalla sessione LUA di Windows.

SLI_OPEN richiede questo parametro.

Questo parametro è lungo otto byte, spaziato 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 delle librerie a collegamento dinamico 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 della 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.

Entrambi i comandi SNA e i dati vengono inseriti in questo buffer e possono essere in un formato EBCDIC (Extended Binary Coded Decimal Interscambi Coded Decimal Coded).

Quando viene rilasciato SLI_OPEN, 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 (UR) 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'applicazione 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 flag per i messaggi restituiti da LUA. I relativi sottoparametri 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 alle UNITÀ LUS configurate come 3270 UNITÀ, oltre alle UNITÀ LU LUA. Se questo parametro è impostato su 1, è possibile accedere a 3270 UNITÀ.

    lua_resv56[3]

    Parametro fornito. Indica se sono supportate letture incomplete. Se questo parametro è impostato su 1, sono supportate letture incomplete o troncate. Per altre informazioni, 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 di LUA_SPECIFIC utilizzato da SLI_OPEN. Set fornito di parametri contenuti in una struttura di SLI_OPEN richiesta con SLI_OPEN.

    open.lua_init_type

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

    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 che l'interfaccia LUA di Windows deve attendere prima di ripetere la trasmissione del messaggio INITSELF o del messaggio LOGON dopo che l'host invia uno di questi messaggi:

  • Una risposta negativa e il codice restituito secondario è uno dei seguenti:

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

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

  • Messaggio NSPE (Network Services Procedure Error).

  • Comando NOTIFY, che indica un errore di routine.

    open.lua_open_extension

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

    open.open_extension.lua_routine_type

    Tipo di routine dell'estensione. I valori legali 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 dell'estensione fornita dall'utente. Il nome del modulo può essere fino a otto caratteri lunghi, 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 dell'estensione fornita dall'utente. Il nome della routine può essere fino a 32 caratteri lunghi, 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 eseguito correttamente.

LUA_SEC_OK

Codice restituito secondario; nessuna informazione aggiuntiva 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 un nome di lua_luname non valido.

LUA_BAD_SESSION_ID

Codice restituito secondario; un valore non valido per lua_sid è stato specificato nel VCB.

LUA_BAD_DATA_PTR

Codice restituito secondario; il parametro lua_data_ptr non contiene un puntatore valido o non punta a un segmento di lettura/scrittura e i dati forniti sono necessari.

LUA_DATA_SEGMENT_LENGTH_ERROR

Codice restituito secondario; si è verificato uno dei seguenti:

  • Il segmento di dati fornito per SLI_RECEIVE o SLI_SEND non è un segmento di dati di lettura/scrittura in base alle esigenze.

  • Il segmento di dati fornito per SLI_RECEIVE non è a lungo che fornito in lua_max_length.

  • Il segmento di dati fornito per SLI_SEND non è purché fornito 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 registrazione asincrona, windows LUA VCB non contiene un handle di eventi 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 nel lua_init_type contenuto in SLI_OPEN non è valido.

    LUA_INVALID_OPEN_DATA

    Codice restituito secondario; il lua_init_type per il SLI_OPEN rilasciato è impostato su LUA_INIT_TYPE_SEC_IS quando il buffer per i dati non ha un comando INITSELF valido.

    LUA_INVALID_OPEN_ROUTINE_TYPE

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

    LUA_DATA_LENGTH_ERROR

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

    LUA_INVALID_SLI_ENCR_OPTION

    Codice restituito secondario; il parametro 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 rilasciato in uno stato non valido.

    LUA_NOT_ACTIVE

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

    LUA_UNEXPECTED_SNA_SEQUENCE

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

    LUA_NEG_RSP_FROM_BIND_ROUTINE

    Codice restituito secondario; la routine SLI_BIND fornita dall'utente ha risposto negativamente al BIND. SLI_OPEN terminato senza esito positivo.

    LUA_NEG_RSP_FROM_STSN_ROUTINE

    Codice restituito secondario; la routine SLI STSN fornita dall'utente ha risposto negativamente al stSN. SLI_OPEN terminato senza esito positivo.

    LUA_PROCEDURE_ERROR

    Codice restituito secondario; un errore della procedura host è indicato dalla ricezione di un messaggio NSPE o NOTIFY. Il codice restituito viene pubblicato in SLI_OPEN quando l'opzione di ripetizione dei tentativi non viene usata. Per usare l'opzione reimpostazione, impostare lua_wait su un valore diverso da zero. Il comando LOGON o INITSELF verrà riprovato fino a quando l'host non è pronto o fino a quando non si rilascia SLI_CLOSE.

    LUA_RECEIVED_UNBIND

    Codice restituito secondario; l'unità logica primaria (PLU) ha inviato un comando SNA UNBIND all'interfaccia LUA quando una sessione è attiva. 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; nessuna sessione inizializzata per il verbo LUA o un verbo diverso da SLI_OPEN è stato rilasciato 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 pubblicato in SLI_OPEN quando una risorsa non è disponibile a meno che non si usi l'opzione di ripetizione dei tentativi.

    Per usare l'opzione di ripetizione dei tentativi, impostare lua_wait su un valore diverso da zero. Il comando LOGON o INITSELF verrà riprovato fino a quando l'host non è pronto o fino a quando non si rilascia 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 reimpostazione, impostare lua_wait su un valore diverso da zero. Il comando LOGON o INITSELF verrà riprovato fino a quando l'host non è pronto o fino a quando non si rilascia SLI_CLOSE.

    LUA_LU_COMPONENT_DISCONNECTED

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

    LUA_NEGOTIABLE_BIND_ERROR

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

    LUA_BIND_FM_PROFILE_ERROR

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

    LUA_BIND_TS_PROFILE_ERROR

    Codice restituito secondario; solo i profili TS (Transmission Service) 3 e 4 sono supportati dall'interfaccia LUA. Un profilo TS diverso da 3 o 4 è stato trovato nel BIND.

    LUA_BIND_LU_TYPE_ERROR

    Codice restituito secondario; solo LU 0, LU 1, LU 2 e LU 3 sono supportati da LUA. È stato trovato un LU diverso da 0, 1, 2 o 3.

    LUA_SSCP_LU_SESSION_NOT_ACTIVE

    Codice restituito secondario; L'oggetto SSCP-LU obbligatorio è inattivo. Informazioni specifiche sul codice di senso sono in byte 2 e 3. Le impostazioni valide sono 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 sul codice di senso specifico in byte 2 e 3 offrono altre informazioni sul motivo per cui la richiesta non può essere reindirizzata.

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

    LUA_VERB_RECORD_SPANS_SEGMENTS

    Codice restituito secondario; il parametro di lunghezza VCB LUA e l'offset del segmento supera la fine 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 rilasciato un verbo LUA non è disponibile perché un altro processo possiede la 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 del collegamento dati (DLC) è in errore o il file di configurazione è danneggiato.

    LUA_ENCR_DECR_LOAD_ERROR

    Codice restituito secondario; un codice restituito imprevisto è stato ricevuto dalla funzione DosLoadModule del sistema operativo/2 durante il tentativo di caricare il modulo di collegamento dinamico o crittografia 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 collegamento dinamico di crittografia o decrittografia fornito dall'utente.

    LUA_NEG_NOTIFY_RSP

    Codice restituito secondario; SSCP ha risposto negativamente a una richiesta NOTIFY rilasciata che indica che l'lu secondario era in grado di una sessione. Componente di metà sessione che ha ricevuto la richiesta compresa e supportata la richiesta, ma non è stato possibile eseguirla.

    LUA_LU_INOPERATIVE

    Codice restituito secondario; si è verificato un errore grave durante il tentativo di arresto della sessione. Questa LU non è disponibile per le richieste LUA finché non viene ricevuta un'unità logica attiva (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 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 transazione (TP) e l'unità fisica (PU) 2.1 nodo è stato interrotto (errore LAN).

  • Il SnaBase nel computer TP ha rilevato un ABEND.

    LUA_COMM_SUBSYSTEM_NOT_LOADED
    Codice restituito primario; Impossibile caricare o terminare un componente obbligatorio durante l'elaborazione del verbo. Pertanto, la comunicazione non poteva essere eseguita. Contattare l'amministratore di sistema per un'azione correttiva.

    LUA_INVALID_VERB_SEGMENT
    Codice restituito primario; VCB esteso 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 del sistema operativo imprevisto 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 è valido. Il verbo non è stato eseguito.

Commenti

Per ogni SLI_OPEN, l'interfaccia LUA di Windows:

Vedere anche

RUI_INIT
SLI_RECEIVE
SLI_SEND