Condividi tramite


Struttura comune di VCB LUA

La struttura di dati seguente mostra i parametri comuni a tutti i verbi LUA (Logical Unit Application) di Microsoft® Windows®.

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;  
} LUA_COMMON;  

Osservazioni

Membri

lua_verb
Parametro fornito. Contiene il codice verbo, LUA_VERB_RUI per verbi URI (Request Unit Interface) o LUA_VERB_SLI per i verbi SLI. Per entrambe le macro il valore è 0x5200.

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

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 del comando LUA (codice dell'operazione verbo) per il verbo da emettere, ad esempio LUA_OPCODE_RUI_BID per il verbo RUI_BID . I valori validi sono i seguenti:

LUA_OPCODE_SLI_OPEN

LUA_OPCODE_SLI_CLOSE

LUA_OPCODE_SLI_RECEIVE

LUA_OPCODE_SLI_SEND

LUA_OPCODE_SLI_PURGE

LUA_OPCODE_SLI_BID

LUA_OPCODE_SLI_BIND_ROUTINE

LUA_OPCODE_SLI_STSN_ROUTINE

LUA_OPCODE_SLI_CRV_ROUTINE

LUA_OPCODE_RUI_INIT

LUA_OPCODE_RUI_TERM

LUA_OPCODE_RUI_READ

LUA_OPCODE_RUI_WRITE

LUA_OPCODE_RUI_PURGE

LUA_OPCODE_RUI_BID

lua_correlator
Parametro fornito. Contiene un valore fornito dall'utente che collega il verbo con 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 utilizzato dalla sessione LUA di Windows.

SLI_OPEN e RUI_INIT richiedono questo parametro. Altri verbi LUA di Windows richiedono questo parametro solo se lua_sid è zero.

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

lua_extension_list_offset
Specifica l'offset dall'inizio di VCB all'elenco di estensioni delle librerie a collegamento dinamico (DLL) fornite dall'utente. Questo parametro non viene usato dalla URI in Microsoft® Host Integration Server e deve essere impostato su zero. Il valore deve essere l'inizio di un limite di parola, a meno che non sia presente alcun elenco di estensioni.

lua_cobol_offset
Offset dell'estensione COBOL. Non usato da LUA in Host Integration Server e deve essere zero.

lua_sid
Parametro fornito e restituito. Specifica l'identificatore di sessione e viene restituito da SLI_OPEN e RUI_INIT. Altri verbi usano questo parametro per identificare la sessione usata per il comando . Se altri verbi usano il parametro lua_luname per identificare le sessioni, impostare il parametro lua_sid su zero.

lua_max_length
Specifica la lunghezza del buffer ricevuto per RUI_READe SLI_RECEIVE. Per altri verbi RUI e SLI, non viene usato e deve essere impostato su zero.

lua_data_length
Specifica la lunghezza dei dati inviati o ricevuti. Specifica la lunghezza dei dati restituiti in lua_peek_data per il verbo RUI_BID .

lua_data_ptr
Puntatore a un buffer fornito dall'applicazione.

Quando viene eseguita SLI_RECEIVE o RUI_READ , questo parametro punta alla posizione in cui ricevere i dati dall'host.

Quando viene eseguita SLI_SEND o RUI_WRITE , questo parametro punta alla posizione dei dati dell'applicazione da inviare all'host.

Quando viene emesso SLI_PURGE o RUI_PURGE , questo parametro punta alla posizione del vcB del SLI_RECEIVE o del verbo di RUI_READ da annullare.

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

  • Messaggio di accesso per il flusso normale SSCP quando il tipo di inizializzazione è secondario con un messaggio di accesso 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.

    Per altri verbi RUI e SLI (Session Level Interface), questo parametro non viene usato e deve essere impostato su zero. Entrambi i comandi e i dati SNA vengono inseriti in questo buffer e possono essere in formato EBCDIC.

    Queste informazioni vengono fornite dall'applicazione LUA di Windows.

    lua_post_handle
    Parametro fornito. Utilizzato in Windows 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
    Parametro restituito. Contiene l'intestazione di trasmissione SNA (TH) del messaggio inviato o ricevuto. Vari sottoparametri sono impostati per le funzioni di scrittura e restituite per le funzioni di lettura e offerta. I sottoparametri sono i seguenti:

    lua_th.flags_fid

    Tipo di identificazione del formato 2, quattro bit.

    lua_th.flags_mpf

    Campo di mapping segmentazione, due bit. Definisce il tipo di segmento di dati. I valori seguenti sono validi:

  • segmento 0x00 centrale

  • 0x01 Ultimo segmento

  • 0x02 Primo segmento

  • segmento solo 0x03

lua_th.flags_odai

Indicatore dell'assegnatore OAF-DAF (Address Field-DAF) di origine, un bit.

lua_th.flags_efi

Indicatore di flusso accelerato, un bit.

lua_th.daf

Campo indirizzo di destinazione (DAF), un carattere senza segno.

lua_th.oaf

Campo indirizzo di origine (OAF), un carattere senza segno.

lua_th.snf

Campo numero di sequenza, un carattere senza segno[2].

lua_rh
Parametro restituito. Contiene l'intestazione richiesta/risposta SNA del messaggio inviato o ricevuto. Viene impostata per la funzione di scrittura e restituita dalle funzioni di lettura e offerta. I parametri secondari sono i seguenti:

lua_rh.rri

Indicatore di risposta della richiesta, un bit.

lua_rh.ruc

Categoria UR, due bit. I valori seguenti sono validi:

LUA_RH_FMD (0x00) controllo di reteLUA_RH_NC (0x20) Controllo di reteLUA_RH_DFC (0x40) Controllo flusso di datiLUA_RH_SC (0x60) Controllo sessione

lua_rh.fi

Indicatore di formato, un bit.

lua_rh.sdi

Indicatore di rilevamento dei dati inclusi, un bit.

lua_rh.bci

Indicatore della catena di inizio, un bit.

lua_rh.eci

Indicatore catena finale, un bit.

lua_rh.dr1i

Indicatore di risposta definito 1, un bit.

lua_rh.dr2i

Indicatore di risposta definita 2, un bit.

lua_rh.ri

Indicatore di risposta dell'eccezione (per una richiesta) o indicatore del tipo di risposta (per una risposta), un bit.

lua_rh.qri

Indicatore di risposta in coda, un bit.

lua_rh.pi

Indicatore di velocità, un bit.

lua_rh.bbi

Indicatore parentesi quadre iniziale, un bit.

lua_rh.ebi

Indicatore parentesi quadra finale, un bit.

lua_rh.cdi

Indicatore di direzione di modifica, un bit.

lua_rh.csi

Indicatore di selezione del codice, un bit.

lua_rh.edi

Indicatore di dati crittografati, un bit.

lua_rh.pdi

Indicatore dati riempito, un bit.

lua_flag1
Parametro fornito. Contiene una struttura di dati contenente flag per i messaggi forniti dall'applicazione. Questo parametro viene usato da RUI_BID, RUI_READ, RUI_WRITE, SLI_BID, SLI_RECEIVE e SLI_SEND. Per altri verbi LUA questo parametro non viene usato e deve essere impostato su zero. I relativi sottoparametri sono i seguenti:

lua_flag1.bid_enable

Indicatore di abilitazione dell'offerta, un bit.

lua_flag1.close_abend

Indicatore immediato di chiusura, un bit.

lua_flag1.nowait

Nessuna attesa per il flag di dati, un bit.

lua_flag1.sscp_exp

Flusso accelerato di SSCP, un bit.

lua_flag1.sscp_norm

Flusso normale SSCP, un bit.

lua_flag1.lu_exp

Flusso accelerato lu, un bit.

lua_flag1.lu_norm

Flusso normale LU, un bit.

lua_message_type
Specifica il tipo di dati e comandi SNA in ingresso o in uscita. Si tratta di un parametro restituito per RUI_INIT e SLI_OPEN e un parametro fornito per SLI_SEND. Per altri verbi LUA questa variabile non viene usata e deve essere impostata su zero.

I valori possibili sono:

LUA_MESSAGE_TYPE_LU_DATA

LUA_MESSAGE_TYPE_SSCP_DATA

LUA_MESSAGE_TYPE_BID

LUA_MESSAGE_TYPE_BIND

LUA_MESSAGE_TYPE_BIS

LUA_MESSAGE_TYPE_CANCEL

LUA_MESSAGE_TYPE_CHASE

LUA_MESSAGE_TYPE_CLEAR

LUA_MESSAGE_TYPE_CRV

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_SHUTD

LUA_MESSAGE_TYPE_SIGNAL

LUA_MESSAGE_TYPE_SDT

LUA_MESSAGE_TYPE_STSN

LUA_MESSAGE_TYPE_UNBIND

L'SLI riceve e risponde alle richieste BIND, CRV e STSN tramite le routine di estensione dell'interfaccia LUA.

LU_DATA, LUSTAT_LU, LUSTAT_SSCP e SSCP_DATA non sono comandi SNA.

lua_flag2
Parametro restituito. Contiene i flag per i messaggi restituiti da LUA. Questo parametro viene restituito da RUI_BID, RUI_READ, RUI_WRITE, SLI_BID, SLI_RECEIVE e SLI_SEND. Per altri verbi LUA questo parametro non viene usato e deve essere impostato su zero. I relativi sottoparametri sono i seguenti:

lua_flag2.bid_enable

Indica che RUI_BID è stato riabilitato se impostato su 1.

lua_flag2.async

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

lua_flag2.sscp_exp

Indica il flusso accelerato di SSCP se impostato su 1.

lua_flag2.sscp_norm

Indica il flusso normale di SSCP se impostato su 1.

lua_flag2.lu_exp

Indica il flusso accelerato lu se impostato su 1.

lua_flag2.lu_norm

Indica il flusso normale lu se impostato su 1.

lua_resv56
Questo parametro fornito è un campo riservato usato da SLI_OPEN e RUI_INIT. Per tutti gli altri verbi LUA, questo parametro è riservato e deve essere impostato su zero.

lua_encr_decr_option
Questo parametro è un campo per le opzioni di crittografia. In RUI_INIT sono supportati solo i seguenti elementi:

  • lua_encr_decr_option = 0

  • lua_encr_decr_option = 128

    Per tutti gli altri verbi LUA, questo parametro è riservato e deve essere impostato su zero.