Freigeben über


SLI_BIND_ROUTINE

Das SLI_BIND_ROUTINE Verb benachrichtigt die Anwendung der logischen Microsoft® Windows-Einheit® (LUA), dass eine BIND-Anforderung vom Host stammt und der vom Benutzer bereitgestellten Routine ermöglicht, die Anforderung zu untersuchen und eine Antwort zu formulieren.

Die folgende Struktur beschreibt das LUA_COMMON Element des Verbsteuerelementblocks (VCB), das von SLI_BIND_ROUTINE verwendet wird.

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

Elemente

lua_verb
Angegebener Parameter. Enthält den Verbcode LUA_VERB_SLI für SLI-Verben (Session Level Interface).

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 LUA_OPCODE_SLI_BIND_ROUTINE.

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_BIND_ROUTINE erfordert 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
Wird von SLI_BIND_ROUTINE nicht verwendet und sollte auf Null festgelegt werden.

lua_cobol_offset
Wird von LUA in Microsoft® Host Integration Server oder SNA Server nicht verwendet und sollte null sein.

lua_sid
Angegebener 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
Wird von SLI_BIND_ROUTINE nicht verwendet und sollte auf Null festgelegt werden.

lua_data_length
Zurückgegebener Parameter. Gibt die Länge der im Datenpuffer zurückgegebenen RU-Daten (BIND request/response unit) an.

lua_data_ptr
Für die SLI_BIND_ROUTINE enthält dieser Parameter die Adresse des BIND RU.

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

lua_th
Angegebener Parameter. Enthält den SNA-Übertragungsheader (TH) der empfangenen Nachricht. Für Lese- und Gebotsfunktionen werden verschiedene Unterparameter zurückgegeben.

lua_rh
Angegebener Parameter. Enthält den SNA-Anforderungs-/Antwortheader (RH) der gesendeten oder empfangenen Nachricht.

lua_flag1
Angegebener Parameter. Enthält eine Datenstruktur, die Flags für nachrichten enthält, die von der Anwendung bereitgestellt werden.

lua_message_type
Angegebener Parameter. Gibt den Typ von SNA-Daten oder Befehlen an, die an den Host gesendet werden.

lua_flag2
Zurückgegebener Parameter. Enthält Flags für nachrichten, die von LUA zurückgegeben werden.

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
Reserviert und sollte auf Null festgelegt werden.

lua_encr_decr_option
Wird von SLI_BIND_ROUTINE nicht verwendet und sollte auf Null festgelegt werden.

Rückgabecodes

LUA_OK
Primärer Rückgabecode; das Verb erfolgreich ausgeführt wurde.

LUA_SEC_OK

Sekundärer Rückgabecode; Für LUA_OK sind keine zusätzlichen Informationen vorhanden.

LUA_NEGATIVE_RSP
Primärer Rückgabecode; Entweder hat die LUA eine negative Antwort an eine Nachricht gesendet, die von der primären logischen Einheit (PLU) empfangen wurde, weil ein Fehler in der Nachricht gefunden wurde, oder die Anwendung hat negativ auf eine Kette geantwortet, für die das Ende der Kette angekommen ist.

Bemerkungen

SLI_BIND_ROUTINE stellt einen Mechanismus für die Windows LUA-Anwendung bereit, um BIND-Anforderungen zu untersuchen, die vom Host empfangen werden. Die Windows LUA verwendet eine vom Benutzer bereitgestellte Dll (Dynamic Link Library), um die Windows LUA-Anwendung zu benachrichtigen, dass eine BIND-Anforderung empfangen wurde. Die vom Benutzer bereitgestellte DLL-Routine untersucht dann den Inhalt der BIND und formuliert eine Antwort für die Anforderung.

Der DLL-Name für die Routine wird als Erweiterungen der SLI_OPEN Verben VCB bereitgestellt. Der parameter lua_extension_list_offset stellt den Offset vom Anfang der VCB zum Vornamen in der Erweiterungsliste bereit.

Die Windows LUA-Schnittstelle weist Speicherplatz zu, in dem die VCB strukturiert ist. Die VCB von SLI_BIND_ROUTINE enthält lua_th und lua_rh. Die Adresse des BIND RU wird in lua_data_ptr angegeben, und die Länge der RU wird in lua_data_length angegeben.

Wenn SLI_BIND_ROUTINE zur Windows LUA zurückkehrt, wird die Verarbeitung von SLI_BIND_ROUTINE abgeschlossen. Die BIND-Antwort sollte das BIND RU überschreiben. Wenn die BINDUNG akzeptiert wird, sollte der primäre Rückgabecode auf LUA_OK festgelegt werden. Wenn die BINDUNG abgelehnt wird, sollte der primäre Rückgabecode auf LUA_NEGATIVE_RSP festgelegt werden, und der BIND-Puffer enthält den Negativen Sinnescode. Der parameter lua_data_ptr sollte nicht geändert werden.

Wenn eine negative Antwort von SLI_BIND_ROUTINE zurückgegeben wird, wird SLI_OPEN abgebrochen. Die lua_prim_rc des SLI_OPEN ist auf LUA_SESSION_FAILURE festgelegt, und die lua_sec_rc wird auf LUA_NEG_RSP_FROM_BIND_ROUTINE festgelegt.

Siehe auch

RUI_INIT
RUI_PURGE
RUI_READ
RUI_WRITE
SLI_OPEN
SLI_PURGE
SLI_RECEIVE
SLI_SEND