/** * \brief Print all system commands in the message to the log file */ void v_print_message_sys_cmds(const unsigned char level, const struct VMessage *vmessage) { int i=0; while(vmessage->sys_cmd[i].cmd.id != CMD_RESERVED_ID && i < MAX_SYSTEM_COMMAND_COUNT) { switch(vmessage->sys_cmd[i].cmd.id) { v_print_log_simple(level, "\t"); case CMD_USER_AUTH_REQUEST: v_print_user_auth_request(level, (struct User_Authentication_Request*)&vmessage->sys_cmd[i].ua_req); break; case CMD_USER_AUTH_FAILURE: v_print_user_auth_failure(level, (struct User_Authentication_Failure*)&vmessage->sys_cmd[i].ua_fail); break; case CMD_USER_AUTH_SUCCESS: v_print_user_auth_success(level, (struct User_Authentication_Success*)&vmessage->sys_cmd[i].ua_succ); break; case CMD_CHANGE_L_ID: case CMD_CONFIRM_L_ID: case CMD_CHANGE_R_ID: case CMD_CONFIRM_R_ID: v_print_negotiate_cmd(level, (struct Negotiate_Cmd*)&vmessage->sys_cmd[i].negotiate_cmd); break; } v_print_log_simple(level, "\n"); i++; } }
/** * \brief Print all system commands in the packet to the log file */ void v_print_packet_sys_cmds(const unsigned char level, const struct VPacket *vpacket) { int i=0; while(vpacket->sys_cmd[i].cmd.id != CMD_RESERVED_ID && i<MAX_SYSTEM_COMMAND_COUNT) { switch(vpacket->sys_cmd[i].cmd.id) { case CMD_ACK_ID: v_print_ack_nak_cmd(level, (struct Ack_Nak_Cmd*)&vpacket->sys_cmd[i].ack_cmd); break; case CMD_NAK_ID: v_print_ack_nak_cmd(level, (struct Ack_Nak_Cmd*)&vpacket->sys_cmd[i].nak_cmd); break; case CMD_CHANGE_L_ID: case CMD_CONFIRM_L_ID: case CMD_CHANGE_R_ID: case CMD_CONFIRM_R_ID: v_print_negotiate_cmd(level, (struct Negotiate_Cmd*)&vpacket->sys_cmd[i].negotiate_cmd); break; default: v_print_log(VRS_PRINT_WARNING, "Unknown system command ID: %d\n", vpacket->sys_cmd[i].cmd.id); break; } i++; } }
END_TEST /** * \brief Test simple adding negotiate command to the list of system commands */ START_TEST ( test_print_negotiate_cmds ) { union VSystemCommands sys_cmd[1]; uint8 cmd_op_code; uint8 ftr_op_code; uint8 uint8_value = 1; real32 real32_value = 60.0f; char string[5] = {'a', 'h', 'o', 'y', '\0'}; int ret; cmd_op_code = CMD_CHANGE_R_ID; ftr_op_code = FTR_FC_ID; ret = v_add_negotiate_cmd(sys_cmd, 0, cmd_op_code, ftr_op_code, &uint8_value, NULL); fail_unless( ret == 1, "Adding negotiate command failed"); v_print_negotiate_cmd(VRS_PRINT_NONE, &sys_cmd->negotiate_cmd); cmd_op_code = CMD_CONFIRM_L_ID; ftr_op_code = FTR_CC_ID; ret = v_add_negotiate_cmd(sys_cmd, 0, cmd_op_code, ftr_op_code, &uint8_value, NULL); fail_unless( ret == 1, "Adding negotiate command failed"); v_print_negotiate_cmd(VRS_PRINT_NONE, &sys_cmd->negotiate_cmd); cmd_op_code = CMD_CONFIRM_R_ID; ftr_op_code = FTR_HOST_URL; ret = v_add_negotiate_cmd(sys_cmd, 0, cmd_op_code, ftr_op_code, &string, NULL); fail_unless( ret == 1, "Adding negotiate command failed"); v_print_negotiate_cmd(VRS_PRINT_NONE, &sys_cmd->negotiate_cmd); cmd_op_code = CMD_CHANGE_L_ID; ftr_op_code = FTR_TOKEN; ret = v_add_negotiate_cmd(sys_cmd, 0, cmd_op_code, ftr_op_code, &string, NULL); fail_unless( ret == 1, "Adding negotiate command failed"); v_print_negotiate_cmd(VRS_PRINT_NONE, &sys_cmd->negotiate_cmd); cmd_op_code = CMD_CONFIRM_L_ID; ftr_op_code = FTR_DED; ret = v_add_negotiate_cmd(sys_cmd, 0, cmd_op_code, ftr_op_code, &string, NULL); fail_unless( ret == 1, "Adding negotiate command failed"); v_print_negotiate_cmd(VRS_PRINT_NONE, &sys_cmd->negotiate_cmd); cmd_op_code = CMD_CONFIRM_L_ID; ftr_op_code = FTR_RWIN_SCALE; ret = v_add_negotiate_cmd(sys_cmd, 0, cmd_op_code, ftr_op_code, &uint8_value, NULL); fail_unless( ret == 1, "Adding negotiate command failed"); v_print_negotiate_cmd(VRS_PRINT_NONE, &sys_cmd->negotiate_cmd); cmd_op_code = CMD_CONFIRM_L_ID; ftr_op_code = FTR_FPS; ret = v_add_negotiate_cmd(sys_cmd, 0, cmd_op_code, ftr_op_code, &real32_value, NULL); fail_unless( ret == 1, "Adding negotiate command failed"); v_print_negotiate_cmd(VRS_PRINT_NONE, &sys_cmd->negotiate_cmd); cmd_op_code = CMD_CONFIRM_L_ID; ftr_op_code = FTR_CMD_COMPRESS; ret = v_add_negotiate_cmd(sys_cmd, 0, cmd_op_code, ftr_op_code, &uint8_value, NULL); fail_unless( ret == 1, "Adding negotiate command failed"); v_print_negotiate_cmd(VRS_PRINT_NONE, &sys_cmd->negotiate_cmd); cmd_op_code = CMD_CONFIRM_L_ID; ftr_op_code = FTR_CLIENT_NAME; ret = v_add_negotiate_cmd(sys_cmd, 0, cmd_op_code, ftr_op_code, &string, NULL); fail_unless( ret == 1, "Adding negotiate command failed"); v_print_negotiate_cmd(VRS_PRINT_NONE, &sys_cmd->negotiate_cmd); cmd_op_code = CMD_CONFIRM_L_ID; ftr_op_code = FTR_CLIENT_VERSION; ret = v_add_negotiate_cmd(sys_cmd, 0, cmd_op_code, ftr_op_code, &string, NULL); fail_unless( ret == 1, "Adding negotiate command failed"); v_print_negotiate_cmd(VRS_PRINT_NONE, &sys_cmd->negotiate_cmd); }