TRANSFER_MS_DATA谓词生成包含网络管理矢量传输(NMVT)数据的 SNA 请求单元。 该谓词可以将 NMVT 数据发送到 NetView,以便进行集中式问题诊断和解决。 数据记录在本地审核文件中。
以下结构描述了 TRANSFER_MS_DATA 谓词使用的谓词控制块(VCB)。
语法
struct transfer_ms_data {
unsigned short opcode;
unsigned char data_type;
unsigned char reserv2;
unsigned short primary_rc;
unsigned long secondary_rc;
unsigned char options;
unsigned char reserv3;
unsigned char origntr_id[8];
unsigned short dlen;
unsigned char FAR * dptr;
};
成员
opcode
提供的参数。 标识作代码的谓词,SV_TRANSFER_MS_DATA。
data_type
提供的参数。 指定此谓词提供的数据类型:
使用SV_NMVT生成 NMVT(包括 NS 标头、主要网络管理向量和子函数)。
使用SV_ALERT_SUBVECTORS为采用适当格式的警报生成包含数据的 RU,而无需 NS 标头或主要 NMVT 矢量。
使用SV_PDSTATS_SUBVECTORS生成包含数据的 RU,以适当的格式生成问题确定统计信息,而无需 NS 标头或主要 NMVT 矢量。
使用SV_USER_DEFINED生成用户定义的数据;此数据记录在错误日志中,但无法在系统服务控制点物理单元(SSCP-PU)会话上发送为诊断配置的连接。
reserv2
保留字段。primary_rc
返回的参数。 指定 APPC 在谓词完成时设置的主要返回代码。 有效的返回代码因发布的 APPC 谓词而异。 有关此谓词的有效错误代码,请参阅返回代码。secondary_rc
返回的参数。 指定 APPC 在谓词完成时设置的辅助返回代码。 有效的返回代码因发布的 APPC 谓词而异。 有关此谓词的有效错误代码,请参阅返回代码。选项
提供的参数。 通过打开或关闭各个位来指定所需选项。 (如果 data_type设置为SV_USER_DEFINED ,则忽略位 1、2 和 3。请参阅“备注”部分。reserv3
保留字段。origntr_id
提供的参数。 指定发出 TRANSFER_MS_DATA的组件的名称。 此参数是可选的。 如果希望系统忽略它,请将其设置为0x00。dlen
提供的参数。 指定要提供给此谓词的数据长度。 数据的总长度(用户提供的数据和任何添加的标头或子函数)必须适合一个 RU。 最大 RU 长度为 512 字节。dptr
提供的参数。 指定要发送的数据的地址。
返回代码
SV_OK
主要返回代码;已成功执行谓词。
SV_PARAMETER_CHECK
主要返回代码;由于参数错误,谓词未执行。
SV_DATA_EXCEEDS_RU_SIZE
辅助返回代码;要发送的数据太长。 用户提供的数据加上标头和添加的子函数的长度必须适合长度不超过 512 字节的单个 RU。
SV_INVALID_DATA_SEGMENT
辅助返回代码; dptr 指向的缓冲区不是可读段,也不能扩展到段边界之外。
SV_INVALID_DATA_TYPE
辅助返回代码; data_type 参数包含无效值。
SV_STATE_CHECK
主要返回代码;该谓词未执行,因为它以无效状态发出。
SV_SSCP_PU_SESSION_NOT_ACTIVE
辅助返回代码;未发送 NMVT;SSCP-PU 会话未处于活动状态、配置为接收诊断信息的节点未处于活动状态或未配置任何网络管理连接。
SV_COMM_SUBSYSTEM_NOT_LOADED
主要返回代码;处理谓词时,无法加载或终止所需的组件。 因此,无法进行通信。 请联系系统管理员以采取纠正措施。
SV_INVALID_VERB
主要返回代码; opcode 参数与任何谓词的作代码不匹配。 未执行谓词。
SV_INVALID_VERB_SEGMENT
主要返回代码;VCB 超出了数据段的末尾。
SV_UNEXPECTED_DOS_ERROR
主要返回代码;出现以下情况之一:
Microsoft Windows作系统在处理谓词时遇到错误。 作系统返回代码是通过辅助返回代码返回的。 如果问题仍然存在,请联系系统管理员以采取纠正措施。
CSV 是从发出 Windows SendMessage 函数调用的另一个应用程序调用的消息循环发出的,而不是较常见的 Windows PostMessage 函数调用。 无法进行谓词处理。
SendMessage 调用应用程序时发出了 CSV。 可以使用 InSendMessage Windows API 函数调用来确定应用程序是否已使用 SendMessage 调用。
SV_CANCELLED
主要返回代码;当 WinCSVCleanup 调用关闭该代码时,将为异步谓词返回此代码。SV_SERVER_RESOURCE_NOT_FOUND
主要返回代码;找不到可提供请求的函数的通信服务器。SV_SERVER_RESOURCES_LOST
主要返回代码;提供函数的通信服务器由于连接失败而丢失。SV_SERVER_CONN_FAILURE
辅助返回代码;由于物理路径问题,与服务器的连接丢失;例如,服务器可能已关闭。
SV_THREAD_BLOCKING
主要返回代码;此谓词超过了允许的最大同步谓词数。
注解
若要指定选项,请打开或关闭位,如下所示:
位 | DESCRIPTION |
---|---|
0 | TIME_STAMP_SUBVECTOR。 向数据添加日期/时间子函数。 允许的值包括SV_ADD和SV_NO_ADD。 |
1 | PRODUCT_SET_ID_SUBVECTOR。 向数据添加Product_Set_ID子函数。 这样,网络管理服务就可以标识警报的发送方。 允许的值包括SV_ADD和SV_NO_ADD。 |
2 | SSCP_PU_SESSION。 如果会话处于活动状态,则发送为诊断配置的连接的 SSCP-PU 会话上的数据。 (无论数据是在会话上发送还是返回SV_STATE_CHECK还是SV_COMM_SUBSYSTEM_NOT_LOADED,都会将数据添加到错误日志中。允许的值包括SV_SEND和SV_NO_SEND。 |
3 | LOCAL_LOGGING。 记录从错误日志中检索并转发到主机的本地警报。 仅当指定了具有选项SV_SEND的 data_type SV_NMVT或 data_type SV_ALERT_SUBVECTORS时,此选项才有效。 允许的值包括SV_LOG和SV_NO_LOG。 |
4 到 7 | 已预留 |