Freigeben über


Allgemeine Struktur von LUA VCBs

Die folgende Datenstruktur zeigt die Parameter, die für alle Microsoft® Windows® Logical Unit Application (LUA)-Verben gemeinsam sind.

Syntax

  
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;  

Bemerkungen

Elemente

lua_verb
Angegebener Parameter. Enthält den Verbcode, LUA_VERB_RUI für RUI-Verben (Request Unit Interface) oder LUA_VERB_SLI für SLI-Verben. Für beide Makros ist der Wert 0x5200.

lua_verb_length
Angegebener Parameter. Gibt die Länge in Byte des LUA VCB an. Er muss die Länge des Verbdatensatzes enthalten, der ausgegeben wird.

lua_prim_rc
Primärer Rückgabecode, der von LUA nach Abschluss des Verbs festgelegt wurde. Die gültigen Rückgabecodes variieren je nach ausgestellten LUA-Verb.

lua_sec_rc
Sekundärer Rückgabecode, der von LUA beim Abschluss des Verbs festgelegt wurde. Die gültigen Rückgabecodes variieren je nach ausgestellten LUA-Verb.

lua_opcode
Angegebener Parameter. Enthält den LUA-Befehlscode (Verboperationscode) für das zu ausgestellte Verb, z. B. LUA_OPCODE_RUI_BID für das RUI_BID Verb. Gültige Werte sind wie folgt:

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
Angegebener Parameter. Enthält einen vom Benutzer bereitgestellten Wert, der das Verb mit anderen vom Benutzer bereitgestellten Informationen verknüpft. LUA verwendet oder ändert diese Informationen nicht. Dieser Parameter ist optional.

lua_luname
Angegebener Parameter. Gibt den ASCII-Namen der lokalen LU an, die von der Windows LUA-Sitzung verwendet wird.

SLI_OPEN und RUI_INIT erfordern diesen Parameter. Andere Windows LUA-Verben erfordern diesen Parameter nur, wenn lua_sid null ist.

Dieser Parameter ist acht Bytes lang, rechts mit Leerzeichen (0x20) aufgefüllt, wenn der Name kürzer als acht Zeichen ist.

lua_extension_list_offset
Gibt den Offset vom Anfang des VCB zur Erweiterungsliste der vom Benutzer bereitgestellten Dynamic Link Libraries (DLLs) an. Dieser Parameter wird von RUI in Microsoft® Host Integration Server nicht verwendet und sollte auf Null festgelegt werden. Der Wert muss der Anfang einer Wortgrenze sein, es sei denn, es gibt keine Erweiterungsliste.

lua_cobol_offset
Offset der COBOL-Erweiterung. Wird nicht von LUA im Hostintegrationsserver verwendet und sollte null sein.

lua_sid
Der angegebene und zurückgegebene Parameter. Gibt den Sitzungsbezeichner an und wird von SLI_OPEN und RUI_INIT zurückgegeben. Andere Verben verwenden diesen Parameter, um die für den Befehl verwendete Sitzung zu identifizieren. Wenn andere Verben den parameter lua_luname verwenden, um Sitzungen zu identifizieren, legen Sie den lua_sid Parameter auf Null fest.

lua_max_length
Gibt die Länge des empfangenen Puffers für RUI_READund SLI_RECEIVE an. Bei anderen RUI- und SLI-Verben wird sie nicht verwendet und sollte auf Null festgelegt werden.

lua_data_length
Gibt die Länge der gesendeten oder empfangenen Daten an. Sie gibt die Länge der in lua_peek_data zurückgegebenen Daten für das verb RUI_BID an.

lua_data_ptr
Zeiger auf einen vom Anwendung bereitgestellten Puffer.

Wenn SLI_RECEIVE oder RUI_READ ausgegeben wird, verweist dieser Parameter auf den Speicherort, um die Daten vom Host zu empfangen.

Wenn SLI_SEND oder RUI_WRITE ausgegeben wird, verweist dieser Parameter auf den Speicherort der Anwendungsdaten, die an den Host gesendet werden sollen.

Wenn SLI_PURGE oder RUI_PURGE ausgegeben wird, verweist dieser Parameter auf die Position des vcB des SLI_RECEIVE oder RUI_READ Verbs, das abgebrochen werden soll.

Wenn SLI_OPEN ausgegeben wird, kann dieser Parameter eine der folgenden Sein:

  • Die Anmeldemeldung für den normalen SSCP-Fluss, wenn der Initialisierungstyp mit einer unformatierten Anmeldenachricht sekundär ist.

  • Die Anforderungs-/Antworteinheit (RU) für INITSELF. Wenn der Initialisierungstyp mit INITSELF sekundär ist, werden die erforderlichen Daten für die Anwendung bereitgestellt.

  • Für alle anderen offenen Typen sollte dieses Feld auf Null festgelegt werden.

    Für andere RUI- und Session Level Interface (SLI)-Verben wird dieser Parameter nicht verwendet und sollte auf Null festgelegt werden. Sowohl SNA-Befehle als auch Daten werden in diesem Puffer platziert, und sie können sich in einem EBCDIC-Format befinden.

    Diese Informationen werden von der Windows LUA-Anwendung bereitgestellt.

    lua_post_handle
    Angegebener Parameter. Wird unter Windows verwendet, wenn eine asynchrone Benachrichtigung durch Ereignisse erreicht werden soll. Diese Variable enthält das Handle des Ereignisses, das signalisiert werden soll, oder ein Fensterhandle.

    lua_th
    Zurückgegebener Parameter. Enthält den SNA-Übertragungsheader (TH) der gesendeten oder empfangenen Nachricht. Verschiedene Unterparameter werden für Schreibfunktionen festgelegt und für Lese- und Gebotsfunktionen zurückgegeben. Die Unterparameter sind wie folgt:

    lua_th.flags_fid

    Formatidentifikationstyp 2, vier Bit.

    lua_th.flags_mpf

    Segmentierungszuordnungsfeld, zwei Bit. Definiert den Typ des Datensegments. Folgende Werte sind gültig:

  • 0x00 Mittleres Segment

  • 0x01 Letzten Segment

  • 0x02 Ersten Segment

  • 0x03 Nur Segment

lua_th.flags_odai

Absenderadressenfeld-Zieladressfeld (OAF–DAF)-Zuweisungsindikator, ein Bit.

lua_th.flags_efi

Beschleunigter Flussindikator, ein Bit.

lua_th.daf

Zieladressfeld (DAF), ein nicht signiertes Zeichen.

lua_th.oaf

Ursprungsadressfeld (OAF), ein nicht signiertes Zeichen.

lua_th.snf

Sequenznummerfeld, ein nicht signiertes Zeichen[2].

lua_rh
Zurückgegebener Parameter. Enthält den SNA-Anforderungs-/Antwortheader (RH) der gesendeten oder empfangenen Nachricht. Sie wird für die Schreibfunktion festgelegt und von den Lese- und Gebotsfunktionen zurückgegeben. Die Unterparameter sind wie folgt:

lua_rh.rri

Anforderungsantwortindikator, ein Bit.

lua_rh.ruc

RU-Kategorie, zwei Bits. Folgende Werte sind gültig:

LUA_RH_FMD (0x00) FM-DatensegmentLUA_RH_NC (0x20)LUA_RH_DFC (0x40)Datenflusssteuerung LUA_RH_SC (0x60) Sitzungssteuerelement

lua_rh.fi

Formatanzeige, ein Bit.

lua_rh.sdi

Sense data included indicator, one bit.

lua_rh.bci

Begin chain indicator, one bit.

lua_rh.eci

Endchainindikator, ein Bit.

lua_rh.dr1i

Eindeutige Antwort 1 Indikator, ein Bit.

lua_rh.dr2i

Eindeutige Antwort 2 Indikator, ein Bit.

lua_rh.ri

Ausnahmeantwortindikator (für eine Anforderung) oder Antworttypindikator (für eine Antwort), ein Bit.

lua_rh.qri

Warteschleifen-Antwortindikator, ein Bit.

lua_rh.pi

Pacing-Indikator, ein Bit.

lua_rh.bbi

Beginnen Sie die Klammernanzeige, ein Bit.

lua_rh.ebi

Endklammernindikator, ein Bit.

lua_rh.cdi

Änderungsrichtungsanzeige, ein Bit.

lua_rh.csi

Codeauswahlindikator, ein Bit.

lua_rh.edi

Enzipherierte Datenanzeige, ein Bit.

lua_rh.pdi

Abstands-Datenindikator, ein Bit.

lua_flag1
Angegebener Parameter. Enthält eine Datenstruktur, die Flags für nachrichten enthält, die von der Anwendung bereitgestellt werden. Dieser Parameter wird von RUI_BID, RUI_READ, RUI_WRITE, SLI_BID, SLI_RECEIVE und SLI_SEND verwendet. Bei anderen LUA-Verben wird dieser Parameter nicht verwendet und sollte auf Null festgelegt werden. Die Unterparameter sind wie folgt:

lua_flag1.bid_enable

Bid enable indicator, one bit.

lua_flag1.close_abend

Schließen Sie die Direktanzeige, ein Bit.

lua_flag1.nowait

Keine Wartezeit für datenkennzeichnung, ein Bit.

lua_flag1.sscp_exp

SSCP beschleunigter Fluss, ein Bit.

lua_flag1.sscp_norm

SSCP normaler Fluss, ein Bit.

lua_flag1.lu_exp

LU beschleunigter Fluss, ein Bit.

lua_flag1.lu_norm

LU normaler Fluss, ein Bit.

lua_message_type
Gibt den Typ der eingehenden oder ausgehenden SNA-Befehle und -Daten an. Dies ist ein zurückgegebener Parameter für RUI_INIT und SLI_OPEN und einen angegebenen Parameter für SLI_SEND. Bei anderen LUA-Verben wird diese Variable nicht verwendet und sollte auf Null festgelegt werden.

Mögliche Werte:

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

Die SLI empfängt und antwortet über die LUA-Schnittstellenerweiterungsroutinen auf die BIND-, CRV- und STSN-Anforderungen.

LU_DATA, LUSTAT_LU, LUSTAT_SSCP und SSCP_DATA sind keine SNA-Befehle.

lua_flag2
Zurückgegebener Parameter. Enthält Flags für nachrichten, die von LUA zurückgegeben werden. Dieser Parameter wird von RUI_BID, RUI_READ, RUI_WRITE, SLI_BID, SLI_RECEIVE und SLI_SEND zurückgegeben. Bei anderen LUA-Verben wird dieser Parameter nicht verwendet und sollte auf Null festgelegt werden. Die Unterparameter sind wie folgt:

lua_flag2.bid_enable

Gibt an, dass RUI_BID erfolgreich erneut aktiviert wurde, wenn sie auf 1 festgelegt ist.

lua_flag2.async

Gibt an, dass das LUA-Schnittstellenverb asynchron abgeschlossen wurde, wenn er auf 1 festgelegt ist.

lua_flag2.sscp_exp

Gibt den beschleunigten SSCP-Fluss an, wenn er auf 1 festgelegt ist.

lua_flag2.sscp_norm

Gibt den normalen SSCP-Fluss an, wenn er auf 1 festgelegt ist.

lua_flag2.lu_exp

Gibt den beschleunigten LU-Fluss an, wenn er auf 1 festgelegt ist.

lua_flag2.lu_norm

Gibt den normalen LU-Fluss an, wenn er auf 1 festgelegt ist.

lua_resv56
Dieser angegebene Parameter ist ein reserviertes Feld, das von SLI_OPEN und RUI_INIT verwendet wird. Für alle anderen LUA-Verben ist dieser Parameter reserviert und sollte auf Null festgelegt werden.

lua_encr_decr_option
Dieser Parameter ist ein Feld für Kryptografieoptionen. Bei RUI_INIT werden nur die folgenden Optionen unterstützt:

  • lua_encr_decr_option = 0

  • lua_encr_decr_option = 128

    Für alle anderen LUA-Verben ist dieser Parameter reserviert und sollte auf Null festgelegt werden.