MC_GET_ATTRIBUTES

MC_GET_ATTRIBUTES谓词返回会话的属性。

以下结构描述了 MC_GET_ATTRIBUTES 谓词使用的谓词控制块(VCB)。

语法

  
struct mc_get_attributes {  
    unsigned short   opcode;  
    unsigned char    opext;  
    unsigned char    reserv2;  
    unsigned short   primary_rc;  
    unsigned long    secondary_rc;  
    unsigned char    tp_id[8];  
    unsigned long    conv_id;  
    unsigned char    reserv3;  
    unsigned char    sync_level;  
    unsigned char    mode_name[8];  
    unsigned char    net_name[8];  
    unsigned char    lu_name[8];  
    unsigned char    lu_alias[8];  
    unsigned char    plu_alias[8];  
    unsigned char    plu_un_name[8];  
    unsigned char    reserv4[2];  
    unsigned char    fqplu_name[17];  
    unsigned char    reserv5;  
    unsigned char    user_id[10];  
    unsigned long    conv_group_id;  
    unsigned char    conv_corr_len;  
    unsigned char    conv_corr[8];  
    unsigned char    reserv6[13];  
//  NOTE: The following fields are present  
//  when the high bit of opext is set   
//  (opext & AP_EXTD_VCB) != 0.   
    unsigned char    luw_id[26];  
    unsigned char    sess_id[8];  
};   

成员

opcode
提供的参数。 指定谓词作代码,AP_M_GET_ATTRIBUTES。

opext
提供的参数。 指定谓词作扩展,AP_MAPPED_CONVERSATION。

reserv2
保留字段。

primary_rc
返回的参数。 指定 APPC 在谓词完成时设置的主要返回代码。 有效的返回代码因发布的 APPC 谓词而异。 有关此谓词的有效错误代码,请参阅返回代码。

secondary_rc
返回的参数。 指定 APPC 在谓词完成时设置的辅助返回代码。 有效的返回代码因发布的 APPC 谓词而异。 有关此谓词的有效错误代码,请参阅返回代码。

tp_id
提供的参数。 标识本地事务程序(TP)。 此参数的值由调用 TP 中的 TP_STARTED 或调用的 TP 中的 RECEIVE_ALLOCATE 返回。

conv_id
提供的参数。 提供会话标识符。 此参数的值由调用 TP 中的 MC_ALLOCATE 或调用的 TP 中的 RECEIVE_ALLOCATE 返回。

sync_level
返回的参数。 指定会话的同步处理级别。 此参数确定 TP 是否可以请求确认接收数据和确认接收数据。

AP_NONE指示不会在此会话中使用确认处理。

AP_CONFIRM_SYNC_LEVEL指示 TP 可以在此会话中使用确认处理。

AP_SYNCPT指示 TP 可以在此会话中使用同步点级别 2 确认处理。

mode_name
返回的参数。 指定一组网络特征的名称。 它是类型 A EBCDIC 字符串。

net_name
返回的参数。 指定包含此 TP 使用的本地逻辑单元(LU)的 SNA 网络的名称。 它是类型 A EBCDIC 字符串。

lu_name
返回的参数。 提供本地 LU 的名称。

lu_alias
返回的参数。 提供本地 TP 已知本地 LU 的别名。 它是 ASCII 字符串。

plu_alias
返回的参数。 提供本地 TP 已知合作伙伴 LU 的别名。 它是 ASCII 字符串。

plu_un_name
返回的参数。 指定未解释的合作伙伴 LU 的名称,即系统服务控制点(SSCP)中定义的合作伙伴 LU 的名称。 它是 AE EBCDIC 字符串类型。 仅当本地 LU 依赖于时,才会返回此参数。

fqplu_name
返回的参数。 提供合作伙伴 LU 的完全限定名称。 它是类型 A EBCDIC 字符串。 该字段包含网络名称、EBCDIC 句点和合作伙伴 LU 名称。

user_id
返回的参数。 指定通过 MC_ALLOCATE 调用 TP 发送的用户标识符,以访问调用的 TP(如果适用)。 它是 AE EBCDIC 字符串类型。 如果满足以下条件,则字段包含用户标识符:

  • 调用的 TP 需要会话安全性。

  • 调用的 TP 发出MC_GET_ATTRIBUTES。

    否则,字段包含空格。

    conv_group_id
    返回的参数。 指定已向其分配会话的会话的会话组标识符。 这也会在 MC_ALLOCATERECEIVE_ALLOCATE返回。

    conv_corr_len
    返回的参数。 指定返回的对话关联符标识符的长度。

    conv_corr
    返回的参数。 指定源 LU 为标识会话分配的会话关联符标识符(如果有的话),该标识符对于源/合作伙伴 LU 对是唯一的。 该请求由源 LU 在分配请求上发送。

注释

当设置高位 opext (opext & AP_EXTD_VCB) != 0 时,以下字段存在。这些字段仅在使用同步点级别 2 支持时才存在。

luw_id
逻辑工作单元标识符。

sess_id
会话标识符。

返回代码

AP_OK
主要返回代码;已成功执行谓词。

AP_PARAMETER_CHECK
主要返回代码;由于参数错误,谓词未执行。

AP_BAD_CONV_ID

辅助返回代码; conv_id 的值与 APPC 分配的会话标识符不匹配。

AP_BAD_TP_ID

辅助返回代码; tp_id 的值与 APPC 分配的 TP 标识符不匹配。

AP_COMM_SUBSYSTEM_ABENDED
主要返回代码;指示以下条件之一:

  • 此会话使用的节点遇到 ABEND。

  • TP 与 PU 2.1 节点之间的连接已中断(LAN 错误)。

  • TP 计算机上的 SnaBase 遇到 ABEND。

    系统管理员应检查错误日志以确定 ABEND 的原因。

    AP_CONVERSATION_TYPE_MIXED
    主要返回代码;TP 已发出基本和映射的对话谓词。 单个对话中只能发出一种类型。

    AP_INVALID_VERB_SEGMENT
    主要返回代码;VCB 超出了数据段的末尾。

    AP_STACK_TOO_SMALL
    主要返回代码;应用程序的堆栈大小太小,无法执行谓词。 增加应用程序的堆栈大小。

    AP_CONV_BUSY
    主要返回代码;在任何对话中,一次只能有一个未完成的对话谓词。 如果本地 TP 有多个线程,并且多个线程使用相同的 conv_id发出 APPC 调用,则可能会出现这种情况。

    AP_UNEXPECTED_DOS_ERROR
    主要返回代码;作系统在处理来自本地 TP 的 APPC 调用时,已将错误返回到 APPC。 作系统返回代码通过 secondary_rc返回。 它以 Intel 字节交换的顺序显示。 如果问题仍然存在,请咨询系统管理员。

注解

当 TP 发出此谓词时,对话可以处于除 RESET 之外的任何状态。

没有状态更改。