SLI_STSN_ROUTINE
SLI_STSN_ROUTINE谓词通知 Microsoft® Windows® 逻辑单元应用程序 (LUA) 应用程序 STSN 命令来自主机,并允许用户提供的例程检查请求并制定响应。
以下结构描述了SLI_STSN_ROUTINE使用的谓词控制块 (VCB) LUA_COMMON成员。
语法
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_verb
提供的参数。 包含谓词代码,LUA_VERB_SLI会话级别接口 (SLI) 谓词。
lua_verb_length
提供的参数。 指定 LUA VCB 的长度(以字节为单位)。 它必须包含要发出的谓词记录的长度。
lua_prim_rc
由 LUA 在谓词完成时设置的主要返回代码。 有效的返回代码因发出的 LUA 谓词而异。
lua_sec_rc
由 LUA 在谓词完成时设置的辅助返回代码。 有效的返回代码因发出的 LUA 谓词而异。
lua_opcode
提供的参数。 包含 LUA 命令代码 (要发出谓词的谓词操作代码) ,LUA_OPCODE_SLI_STSN_ROUTINE。
lua_correlator
提供的参数。 包含用户提供的值,该值将谓词与其他用户提供的信息链接在一起。 LUA 不使用或更改此信息。 此参数是可选的。
lua_luname
提供的参数。 指定 Windows LUA 会话使用的本地 LU 的 ASCII 名称。
仅当lua_sid为零时,SLI_STSN_ROUTINE才需要此参数。
此参数长度为 8 个字节,如果名称短于 8 个字符,则用空格 (0x20) 在右侧填充。
lua_extension_list_offset
SLI_STSN_ROUTINE不使用,应设置为零。
lua_cobol_offset
MICROSOFT® 主机集成服务器或 SNA 服务器中的 LUA 不使用,应为零。
lua_sid
提供的参数。 指定会话标识符,由 SLI_OPEN 和 RUI_INIT 返回。 其他谓词使用此参数来标识用于命令的会话。 如果其他谓词使用 lua_luname 参数来标识会话,请将 lua_sid 参数设置为零。
lua_max_length
SLI_STSN_ROUTINE不使用,应设置为零。
lua_data_length
返回的参数。 指定 STSN 请求/响应单元 (RU) 数据缓冲区中返回的数据的长度。
lua_data_ptr
对于 SLI_STSN_ROUTINE 此参数包含 STSN RU 的地址。
lua_post_handle
提供的参数。 如果异步通知要由事件完成,则用于 Microsoft Windows Server 下。 此变量包含要发出信号的事件的句柄或窗口句柄。
对于所有其他环境,此参数是保留的,应设置为零。
lua_th
返回的参数。 包含接收的消息的 SNA 传输标头 (TH) 。 为读取和出价函数返回各种子参数。
lua_rh
返回的参数。 包含发送或接收的消息的 SNA 请求/响应标头 (RH) 。
lua_flag1
提供的参数。 包含包含应用程序提供的消息标志的数据结构。
lua_message_type
提供的参数。 指定发送到主机的 SNA 数据或命令的类型。
lua_flag2
返回的参数。 包含 LUA 返回的消息的标志。
lua_flag2.async
指示 LUA 接口谓词在设置为 1 时异步完成。
lua_flag2.sscp_exp
指示系统服务控制点 (SSCP) 加速流(如果设置为 1)。
lua_flag2.sscp_norm
如果设置为 1,则指示 SSCP 正常流。
lua_flag2.lu_exp
如果设置为 1,则指示 LU 加速流。
lua_flag2.lu_norm
如果设置为 1,则指示 LU 正常流。
lua_resv56
保留,应设置为零。
lua_encr_decr_option
SLI_STSN_ROUTINE不使用,应设置为零。
返回代码
LUA_OK
主要返回代码;谓词已成功执行。
LUA_SEC_OK
辅助返回代码;不存在用于LUA_OK的其他信息。
LUA_NEGATIVE_RSP
主返回代码;由于在消息中发现错误,LUA 对从主逻辑单元接收的消息 (PLU) 发送了负面响应,或者应用程序对链末到达的链做出了负面响应。
注解
SLI_STSN_ROUTINE 为 Windows LUA 应用程序提供了检查和响应 STSN 命令的机制。 Windows LUA 通知 Windows LUA 应用程序已从主机收到 STSN 命令。 这是通过用户提供的动态链接库 (DLL) 完成的。 用户 DLL 检查 STSN 请求并制定对请求的响应。
例程的 DLL 名称作为 SLI_OPEN 谓词 VCB 的扩展提供。 lua_extension_list_offset 参数提供从 VCB 开头到扩展列表中第一个名称的偏移量。
Windows LUA 接口分配构造 VCB 的存储空间。 SLI_STSN_ROUTINE的 VCB 包含lua_th和lua_rh。 STSN RU 的地址在 lua_data_ptr 中指定,RU 的长度在 lua_data_length 中指定。
当SLI_STSN_ROUTINE返回到 Windows LUA 时,将完成SLI_STSN_ROUTINE的处理。 STSN 响应应覆盖 STSN RU。 接受 STSN 时,主返回代码应设置为 LUA_OK。 如果 STSN 被拒绝,则主返回代码应设置为 LUA_NEGATIVE_RSP 并且 STSN 缓冲区包含负感知代码。 不应修改lua_data_ptr参数。
如果从SLI_STSN_ROUTINE返回否定响应, 则会取消SLI_OPEN 。 SLI_OPEN的lua_prim_rc设置为 LUA_SESSION_FAILURE,lua_sec_rc 设置为 LUA_NEG_RSP_FROM_STSN_ROUTINE。
另请参阅
RUI_INIT
RUI_PURGE
RUI_READ
RUI_WRITE
SLI_OPEN
SLI_PURGE
SLI_RECEIVE
SLI_SEND